20.04: 为什么sysctl.conf在主界面禁用ipv6失败?

sta*_*low 6 server ipv6 networking 20.04

我知道grub 内核参数方法,但我想了解为什么 sysctl 方法不起作用。

在 20.04 服务器上,如果我将 net.ipv6.conf.(all|default|lo).disable_ipv6=1 添加到 /etc/sysctl.conf (或单独的 /etc/ sysctl.d/ 文件),启动时它仅在环回上禁用 ipv6,主界面仍然有它。

由于它适用于环回,因此 sysctl conf 文件将在启动时处理。

小智 2

如果systemd-networkd认为应该启用 ipv6,则它会在网络设备配置期间将disable_ipv6 sysctl 重置为 false

在 Ubuntu 22.10 上,我必须编辑 /etc/netplan/ configname .yaml 文件(参考)并添加:

link-local: [ ]
Run Code Online (Sandbox Code Playgroud)

在我的网络设备下,以避免导致此问题的 ipv6 链路本地地址创建。


Ste*_*ski 0

遗憾的是,关于如何在 Ubuntu 上禁用 IPv6 有很多神话,并且 Ubuntu 项目本身还没有提供早至 Ubuntu 16.04 的规范解决方案。

到目前为止,我找到的最佳解决方案是通过 Grub 修改内核命令行并重新启动系统。看这里:

https://askubuntu.com/a/337736/266