Ban*_*uin 5 proc ipv6 linux-kernel
我即将将我们的网络连接到 IPv6 Internet,并且需要控制在 下找到的内核 ipv6 设置/proc
。我知道每个接口都有配置,all
接口和default
配置。我的问题是:如果各个值相互矛盾,哪些设置会获胜?虽然我能够找到有关各个设置的良好文档,但我不知道设置优先级...
有一个关于 IPv4的相关问题,但主要讲的是 的区别all
,default
以及各个接口。从中我收集到具体的设置总是以某种方式在逻辑上结合起来。但是,对我来说最重要的字段(请参阅以下示例)并未涵盖,而且 IPv6 的实现方式似乎有所不同,因此参考答案中引用的内核源文件对我的 IPv6 问题和以下示例没有帮助。
几个例子:
cat /proc/sys/net/ipv6/conf/all/accept_ra
0
cat /proc/sys/net/ipv6/conf/eth1/accept_ra
1
Run Code Online (Sandbox Code Playgroud)
eth1 会接受路由器广告吗?
cat /proc/sys/net/ipv6/conf/all/forwarding
1
cat /proc/sys/net/ipv6/conf/eth1/forwarding
0
cat /proc/sys/net/ipv6/conf/eth1/accept_ra
1
Run Code Online (Sandbox Code Playgroud)
eth1 会接受路由器广告吗?
cat /proc/sys/net/ipv6/conf/all/disable_ipv6
1
cat /proc/sys/net/ipv6/conf/all/accept_ra
1
cat /proc/sys/net/ipv6/conf/eth1/disable_ipv6
0
cat /proc/sys/net/ipv6/conf/all/accept_ra
0
Run Code Online (Sandbox Code Playgroud)
eth1 会接受路由器广告吗?
cat /proc/sys/net/ipv6/conf/all/disable_ipv6
1
cat /proc/sys/net/ipv6/conf/all/fowarding
1
cat /proc/sys/net/ipv6/conf/eth1/disable_ipv6
0
cat /proc/sys/net/ipv6/conf/all/accept_ra
1
Run Code Online (Sandbox Code Playgroud)
eth1 会接受路由器广告吗?
“默认”条目是默认的。当一个接口出现时,它会继承那里的参数。
“all”条目用于一次性为所有接口分配参数。这并不意味着每个接口都被锁定到该参数。例如,考虑
echo 0 > /proc/sys/net/ipv6/conf/all/accept_ra
echo 1 > /proc/sys/net/ipv6/conf/enp2s1/accept_ra
Run Code Online (Sandbox Code Playgroud)
然后
cat /proc/sys/net/ipv6/conf/all/accept_ra
0
cat /proc/sys/net/ipv6/conf/enp2s1/accept_ra
1
cat /proc/sys/net/ipv6/conf/wlp2s0/accept_ra
0
Run Code Online (Sandbox Code Playgroud)
所以“all”并不代表任何一种状态,它只是用于集体赋值。