sysctlのでは、/proc/sys/net/ipv[46]/conf/
:キーは、次のサブキーを持っているall
、default
と、各ネットワークインタフェースのためのキー。たとえば、単一のネットワークインターフェイスeth0を持つマシンでは、次のようになります。
iserv ~ # ll /proc/sys/net/ipv[46]/conf/
/proc/sys/net/ipv4/conf/:
insgesamt 0
dr-xr-xr-x 0 root root 0 12. Sep 23:30 all/
dr-xr-xr-x 0 root root 0 12. Sep 23:30 default/
dr-xr-xr-x 0 root root 0 12. Sep 23:30 eth0/
dr-xr-xr-x 0 root root 0 12. Sep 23:30 lo/
/proc/sys/net/ipv6/conf/:
insgesamt 0
dr-xr-xr-x 0 root root 0 12. Sep 23:30 all/
dr-xr-xr-x 0 root root 0 12. Sep 23:30 default/
dr-xr-xr-x 0 root root 0 12. Sep 23:30 eth0/
dr-xr-xr-x 0 root root 0 12. Sep 23:30 lo/
それぞれの設定はすべて、各キーに個別に存在します。たとえば、accept_ra
値でIPv6ルーターアドバタイズを無効にしたい場合、この値は4回存在します。
iserv ~ # sysctl -a 2>/dev/null | grep "accept_ra "
net.ipv6.conf.all.accept_ra = 1
net.ipv6.conf.default.accept_ra = 1
net.ipv6.conf.lo.accept_ra = 1
net.ipv6.conf.eth0.accept_ra = 1
私の質問は、これらの値のどれを変更する必要があるかです。all
(既存のすべてのインターフェイスdefault
を変更するため)と(後で表示される可能性があるすべての新しいインターフェイスを変更するため)を考えましたが、これらを変更してもloとeth0の値は1のままです。
iserv ~ # sysctl -w net.ipv6.conf.all.accept_ra=0
net.ipv6.conf.all.accept_ra = 0
iserv ~ # sysctl -w net.ipv6.conf.default.accept_ra=0
net.ipv6.conf.default.accept_ra = 0
iserv ~ # sysctl -a 2>/dev/null | grep "accept_ra "
net.ipv6.conf.all.accept_ra = 0
net.ipv6.conf.default.accept_ra = 0
net.ipv6.conf.lo.accept_ra = 1
net.ipv6.conf.eth0.accept_ra = 1
マシンはeth0でルーターアドバタイズメントを受け入れるようになりますか?