summaryrefslogtreecommitdiffstats
path: root/etc/rc.d
diff options
context:
space:
mode:
authorhrs <hrs@FreeBSD.org>2011-09-13 00:06:11 +0000
committerhrs <hrs@FreeBSD.org>2011-09-13 00:06:11 +0000
commit08320280c671000afa24235eaab7869ae2dbd736 (patch)
tree65838798bfafaaad2f247158cfaf03eb7eb3814f /etc/rc.d
parent06dd2030acf84db5a0d9e068e527ed1d2545df04 (diff)
downloadFreeBSD-src-08320280c671000afa24235eaab7869ae2dbd736.zip
FreeBSD-src-08320280c671000afa24235eaab7869ae2dbd736.tar.gz
Add $ipv6_cpe_wanif to enable functionality required for IPv6 CPE
(r225485). When setting an interface name to it, the following configurations will be enabled: 1. "no_radr" is set to all IPv6 interfaces automatically. 2. "-no_radr accept_rtadv" will be set only for $ipv6_cpe_wanif. This is done just before evaluating $ifconfig_IF_ipv6 in the rc.d scripts (this means you can manually supersede this configuration if necessary). 3. The node will add RA-sending routers to the default router list even if net.inet6.ip6.forwarding=1. This mode is added to conform to RFC 6204 (a router which connects the end-user network to a service provider network). To enable packet forwarding, you still need to set ipv6_gateway_enable=YES. Note that accepting router entries into the default router list when packet forwarding capability and a routing daemon are enabled can result in messing up the routing table. To minimize such unexpected behaviors, "no_radr" is set on all interfaces but $ipv6_cpe_wanif. Approved by: re (bz)
Diffstat (limited to 'etc/rc.d')
-rwxr-xr-xetc/rc.d/netoptions13
1 files changed, 13 insertions, 0 deletions
diff --git a/etc/rc.d/netoptions b/etc/rc.d/netoptions
index 09ed6ef..1547ade 100755
--- a/etc/rc.d/netoptions
+++ b/etc/rc.d/netoptions
@@ -106,6 +106,19 @@ netoptions_inet6()
${SYSCTL} net.inet6.ip6.use_tempaddr=1 >/dev/null
${SYSCTL} net.inet6.ip6.prefer_tempaddr=1 >/dev/null
fi
+
+ case $ipv6_cpe_wanif in
+ ""|[Nn][Oo]|[Nn][Oo][Nn][Ee]|[Ff][Aa][Ll][Ss][Ee]|[Oo][Ff][Ff]|0)
+ ${SYSCTL} net.inet6.ip6.no_radr=0 >/dev/null
+ ${SYSCTL} net.inet6.ip6.rfc6204w3=0 >/dev/null
+ ;;
+ *)
+ netoptions_init
+ echo -n " IPv6 CPE WANIF=${ipv6_cpe_wanif}"
+ ${SYSCTL} net.inet6.ip6.no_radr=1 >/dev/null
+ ${SYSCTL} net.inet6.ip6.rfc6204w3=1 >/dev/null
+ ;;
+ esac
}
load_rc_config $name
OpenPOWER on IntegriCloud