在本文中,我们将学习如何在 Ubuntu 20.04LTS 上禁用 IPv6。
什么是 IPv6?
IPv6 或 Internet 协议版本 6 是一种通信协议,它为连接到 Internet 的计算机提供识别和定位系统。 它是由 Internet 工程任务组 (IETF) 于 1998 年设计的,旨在提供唯一的 IP 地址作为原始 IP 地址方案,即由于 Internet 用户数量的增加,IPv4 的地址已用完。 那么,让我们看看如何禁用 IPv6。
方法 1:使用 Sysctl 禁用 IPv6(临时)
要暂时禁用 IPv6,请执行以下步骤:
首先,通过执行以下命令检查是否启用了 IPv6:
ip a
如果启用,您将看到一个 IPv6 地址,如上所示。
现在,要禁用 IPv6,请运行以下命令并使用 ip a 命令检查 IPv6 是否已禁用。
sudo sysctl -w net.ipv6.conf.all.disable_ipv6=1 sudo sysctl -w net.ipv6.conf.default.disable_ipv6=1 sudo sysctl -w net.ipv6.conf.lo.disable_ipv6=1
此方法仅在您重新启动系统之前禁用 IPv6。 每当您再次启动系统时,IPv6 将再次启用。
要重新启用它,请运行以下命令:
sudo sysctl -w net.ipv6.conf.all.disable_ipv6=0 sudo sysctl -w net.ipv6.conf.default.disable_ipv6=0 sudo sysctl -w net.ipv6.conf.lo.disable_ipv6=0
方法 2:使用 sysctl 禁用 IPv6(永久)
通过运行以下命令打开 sysctl.conf 文件(您也可以使用 vim 编辑器):
sudo vi /etc/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
这将禁用 IPv6,但有时在重新启动后,IPv6 会再次启用。 现在,通过执行以下命令创建文件 /etc/rc.local:
sudo touch /etc/rc.local
使用 nano 命令打开文件:
sudo nano /etc/rc.local
添加以下行并按 Ctrl+X 保存。
#!/bin/bash # /etc/rc.local /etc/sysctl.d /etc/init.d/procps restart exit 0
现在通过运行 chmod 命令使文件可执行:
sudo chmod 755 /etc/rc.local
就是这样,IPv6 将被永久禁用,直到您手动启用它。 使用 ip a 命令检查,
如果您需要重新启用 IPv6,请通过执行以下命令删除 /etc/rc.local 文件:
sudo rm /etc/rc.local
重新启动后将再次启用 IPv6。
方法 3:使用 GRUB 禁用 IPv6
GRUB 是所有 Linux 发行版的默认引导加载程序。 要使用此方法禁用 IPv6,您需要编辑 /etc/default/grub 文件。 使用 nano 打开文件:
sudo nano /etc/default/grub
现在替换以下行:
GRUB_CMDLINE_LINUX=""
和
GRUB_CMDLINE_LINUX="ipv6.disable=1"
Save 文件并退出。 现在,运行以下命令来更新 GRUB 启动菜单并重新启动。
sudo update-grub
IPv6 将被永久禁用。
结论
因此,我们讨论了如何使用 systemctl 禁用 Ipv6。 您可以暂时或永久禁用 IPv6。 修改 Grub 文件是永久禁用 IPv6 的最简单方法。