Currently when assigning IPv6 addresses with large prefixes to a wireguard interface, like
config interface 'wg' option proto 'wireguard' list addresses 'fd::/48' and having, say, a LAN interface such as config interface 'lan' option proto 'static' option ip6assign '60' as is default the interface does not automatically receive the wg interface's prefix. For this to happen the proto needs to use proto_add_ipv6_prefix to register the fact that a prefix is available for assignment which is simple enough. Note that the addresses configured here usually include a non-zero host part but currently netifd handles this poorly when more than one interface should receive a sub-prefix. The required fix can be found in "[PATCH netifd] interface-ip: Normalise prefix address using netmask before using it" (Message-Id: <20201125173536.1175-1-d...@darkboxed.org>) Signed-off-by: Daniel Gröber <d...@darkboxed.org> --- package/network/utils/wireguard-tools/files/wireguard.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/package/network/utils/wireguard-tools/files/wireguard.sh b/package/network/utils/wireguard-tools/files/wireguard.sh index 63261aea71..a18d09eaed 100644 --- a/package/network/utils/wireguard-tools/files/wireguard.sh +++ b/package/network/utils/wireguard-tools/files/wireguard.sh @@ -151,6 +151,7 @@ proto_wireguard_setup() { case "${address}" in *:*/*) proto_add_ipv6_address "${address%%/*}" "${address##*/}" + proto_add_ipv6_prefix "${address}" ;; *.*/*) proto_add_ipv4_address "${address%%/*}" "${address##*/}" -- 2.20.1 v2: Remove netifd patch and submit it separately. _______________________________________________ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/mailman/listinfo/openwrt-devel