6rd: add support for native IPv6 prefix handling
[openwrt/.git] / package / network / ipv6 / 6rd / files / 6rd.sh
index 59c3169b39a2aabc7666c2adb2a3b4db4e7b597b..b681f2bbe6b2261c7a1092c4d31e405d5c3b787e 100644 (file)
@@ -42,8 +42,12 @@ proto_6rd_setup() {
        local ip6subnet=$(6rdcalc "$ip6prefix/$ip6prefixlen" "$ipaddr/$ip4prefixlen")
        local ip6addr="${ip6subnet%%::*}::1"
 
+       # Determine the IPv6 prefix
+       local ip6lanprefix="$ip6subnet/$(($ip6prefixlen + 32 - $ip4prefixlen))"
+
        proto_init_update "$link" 1
        proto_add_ipv6_address "$ip6addr" "$ip6prefixlen"
+       proto_add_ipv6_prefix "$ip6lanprefix"
        proto_add_ipv6_route "::" 0 "::$peeraddr"
 
        proto_add_tunnel