rtadvd revision 247271
1109998Smarkm#!/bin/sh 2280304Sjkim# 3280304Sjkim# $FreeBSD: head/etc/rc.d/rtadvd 247271 2013-02-25 17:07:42Z des $ 4280304Sjkim# 5109998Smarkm 6109998Smarkm# PROVIDE: rtadvd 7109998Smarkm# REQUIRE: DAEMON 855714Skris# BEFORE: LOGIN 955714Skris# KEYWORD: nojail shutdown 1055714Skris 1155714Skris. /etc/rc.subr 12109998Smarkm. /etc/network.subr 13109998Smarkm 14280304Sjkimname="rtadvd" 15109998Smarkmrcvar="rtadvd_enable" 1655714Skriscommand="/usr/sbin/${name}" 17109998Smarkmstart_precmd="rtadvd_precmd" 18109998Smarkm 19109998Smarkmrtadvd_precmd() 20109998Smarkm{ 21109998Smarkm # This should be enabled with a great care. 22109998Smarkm # You may want to fine-tune /etc/rtadvd.conf. 23109998Smarkm # 24109998Smarkm # And if you wish your rtadvd to receive and process 25109998Smarkm # router renumbering messages, specify your Router Renumbering 26109998Smarkm # security policy by -R option. 27109998Smarkm # 28109998Smarkm # See `man 3 ipsec_set_policy` for IPsec policy specification 29109998Smarkm # details. 30109998Smarkm # (CAUTION: This enables your routers prefix renumbering 31109998Smarkm # from another machine, so if you enable this, do it with 32109998Smarkm # enough care.) 33109998Smarkm # 34109998Smarkm # If specific interfaces haven't been specified, 35109998Smarkm # get a list of interfaces and enable it on them 36109998Smarkm # 37109998Smarkm case ${rtadvd_interfaces} in 38109998Smarkm [Aa][Uu][Tt][Oo]|'') 39109998Smarkm command_args= 40109998Smarkm for i in `list_net_interfaces`; do 41109998Smarkm case $i in 42109998Smarkm lo0) continue ;; 43109998Smarkm esac 44109998Smarkm if ipv6if $i; then 45109998Smarkm command_args="${command_args} ${i}" 46109998Smarkm fi 47109998Smarkm done 48109998Smarkm ;; 49109998Smarkm [Nn][Oo][Nn][Ee]) 50109998Smarkm ;; 51109998Smarkm *) 52109998Smarkm command_args="${rtadvd_interfaces}" 53109998Smarkm ;; 54109998Smarkm esac 55109998Smarkm 56109998Smarkm # Enable Router Renumbering, unicast case 57109998Smarkm # (use correct src/dst addr) 5855714Skris # rtadvd -R "in ipsec ah/transport/fec0:0:0:1::1-fec0:0:0:10::1/require" ${ipv6_network_interfaces} 5955714Skris # Enable Router Renumbering, multicast case 60109998Smarkm # (use correct src addr) 6155714Skris # rtadvd -R "in ipsec ah/transport/ff05::2-fec0:0:0:10::1/require" ${ipv6_network_interfaces} 62109998Smarkm return 0 63109998Smarkm} 6455714Skris 65109998Smarkmload_rc_config $name 66280304Sjkimrun_rc_command "$1" 67280304Sjkim