netifd: add a hotplug handler for setting sysctls (based on the old 10-routes file)
SVN-Revision: 30743
This commit is contained in:
parent
e3ec30cad1
commit
429886fbbb
1 changed files with 36 additions and 0 deletions
36
package/netifd/files/etc/hotplug.d/iface/10-sysctl
Normal file
36
package/netifd/files/etc/hotplug.d/iface/10-sysctl
Normal file
|
@ -0,0 +1,36 @@
|
||||||
|
# Skip fake devices (e.g. relayd)
|
||||||
|
grep -qs "^ *$DEVICE:" /proc/net/dev || exit 0
|
||||||
|
|
||||||
|
case "$ACTION" in
|
||||||
|
ifup)
|
||||||
|
include /lib/network
|
||||||
|
scan_interfaces
|
||||||
|
|
||||||
|
# Setup sysctls
|
||||||
|
local proto accept_ra send_rs
|
||||||
|
|
||||||
|
config_get proto "$INTERFACE" proto
|
||||||
|
if [ "$proto" = dhcp ]; then
|
||||||
|
accept_ra=1
|
||||||
|
send_rs=0
|
||||||
|
else
|
||||||
|
accept_ra=0
|
||||||
|
send_rs=1
|
||||||
|
fi
|
||||||
|
|
||||||
|
config_get_bool accept_ra "$INTERFACE" accept_ra $accept_ra
|
||||||
|
[ $accept_ra -eq 0 ] || {
|
||||||
|
logger -t ifup "Allowing Router Advertisements on $INTERFACE ($DEVICE)"
|
||||||
|
accept_ra=2
|
||||||
|
}
|
||||||
|
do_sysctl "net.ipv6.conf.$DEVICE.accept_ra" $accept_ra
|
||||||
|
|
||||||
|
config_get_bool send_rs "$INTERFACE" send_rs $send_rs
|
||||||
|
[ $send_rs -eq 0 ] || {
|
||||||
|
logger -t ifup "Enabling Router Solicitations on $INTERFACE ($DEVICE)"
|
||||||
|
send_rs=2
|
||||||
|
}
|
||||||
|
do_sysctl "net.ipv6.conf.$DEVICE.forwarding" $send_rs
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
Loading…
Reference in a new issue