我有这个配置 Ubuntu 18.04:
sudo nano /etc/sysctl.d/99-sysctl.conf
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
net.ipv6.conf.lo.disable_ipv6 = 1
sudo sysctl -p
cat /proc/sys/net/ipv6/conf/all/disable_ipv6
1
还有我的 /etc/netplan/*.yaml
dhcp6: no
但我仍然有 IPv6 流量,如下所示网络数据报告:
为什么?如何才能完全阻止 IPv6?
答案1
Netdata 报告显示 IPv6 流量仅由您的主机接收,而不是发送。但我怀疑它是否由 IPv6 堆栈主动接收。您看到的可能只是 LAN 上使用 EtherType 0x86DD(IPv6)的一些广播数据包,并且您的 NIC 尽职尽责地将这些数据包传递给您的主机操作系统,这是 NIC 应该做的。NIC 只应该知道它们自己的层,即第 2 层,即以太网所在的数据链路层,而不是第 3 层,即 IP[v4|v6] 所在的网络层。因此,NIC 不应该特殊对待 EtherType 0x86DD,它应该只是盲目地将这些帧传递给主机操作系统的网络堆栈,并让主机操作系统的网络堆栈决定处理它们或丢弃它们。您可能已成功禁用 Ubuntu 中的所有 IPv6 支持,因此没有任何内容监听 EtherType 0x86DD,因此这些帧可能在 NIC 将它们传递给 Ubuntu 时被 Ubuntu 网络堆栈的最低层丢弃。