summaryrefslogtreecommitdiffstats
path: root/package/network/ipv6/6rd/files/6rd.sh
diff options
context:
space:
mode:
Diffstat (limited to 'package/network/ipv6/6rd/files/6rd.sh')
-rw-r--r--package/network/ipv6/6rd/files/6rd.sh4
1 files changed, 4 insertions, 0 deletions
diff --git a/package/network/ipv6/6rd/files/6rd.sh b/package/network/ipv6/6rd/files/6rd.sh
index 59c3169b3..b681f2bbe 100644
--- a/package/network/ipv6/6rd/files/6rd.sh
+++ b/package/network/ipv6/6rd/files/6rd.sh
@@ -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