网站搜索

如何在 CentOS 8 中禁用 IPv6


互联网协议版本 6 (IPv6) 是 IPv6 计算机网络中涉及的网络接口的标识符。如果您不想使用 Ipv6 寻址,可以选择暂时或永久禁用它。

在本文中,您将学习几种在 CentOS 8 Linux 计算机中禁用 IPv6 的方法。

在 CentOS 8 中禁用 IPv6

首先,使用以下 ip 命令检查您的 CentOS 8 计算机上是否启用了 IPv6

ip a | grep inet6

如果启用了 IPv6,您可以看到一些 inet6 行,但是,如果该命令不打印任何内容,则说明您的所有网络接口上都禁用了 IPv6。

使用 sysctl 命令禁用 IPv6

此方法用于临时禁用IPv6。您不需要重新启动系统即可使更改生效。然而,它比你很快就会学到的永久方法要复杂得多。

首先使用以下命令创建一个新的 sysctl 配置文件 /etc/sysctl.d/70-ipv6.conf

vi /etc/sysctl.d/70-ipv6.conf

接下来,添加以下行并保存文件。

net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1

现在,要禁用 IPv6,请使用以下命令。

sysctl --load /etc/sysctl.d/70-ipv6.conf

IPv6 现在应该被禁用。

要验证 IPv6 是否已禁用,请运行以下 ip 命令。

ip a | grep inet6

如果该命令未返回任何内容,则表明您的所有网络接口上已禁用 IPv6

使用此方法时,重新启动系统后,某些网络接口可能仍使用 IPv6。发生这种情况是因为 CentOS 8 默认使用网络管理器。

要完全停止使用 IPv6,请使用以下 nmcli 命令。

nmcli connection modify interface ipv6.method ignore

最后,重新启动您的 CentOS 8 计算机。

reboot

使用内核引导选项禁用 IPv6

内核启动选项需要在配置后重新启动系统。这是禁用 IPv6 的最佳方法。

要使用此方法,请使用 vi 文本编辑器打开默认的 GRUB 配置文件 /etc/default/grub,如下所示。

vi /etc/default/grub

接下来,转到文件末尾并按 O 创建一个新行并键入以下内容。

GRUB_CMDLINE_LINUX="$GRUB_CMDLINE_LINUX ipv6.disable=1"

接下来,保存并退出配置文件。

下一步是更新 GRUB CFG 文件。键入以下命令来查找 grub 文件。

 ls -lh /etc/grub*.cfg

您将看到2个GRUB CFG文件路径:/boot/grub2/grub.cfg/boot/efi/EFI/centos/grub.cfg >。

键入以下命令创建新的 GRUB 配置文件并将其保存到 /boot/grub2/grub.cfg


grub2-mkconfig -o /boot/grub2/grub.cfg

接下来,键入以下命令创建新的 GRUB 配置文件并将其保存到 /boot/efi/EFI/centos/grub.cfg

grub2-mkconfig -o /boot/efi/EFI/centos/grub.cfg

最后,重新启动您的 CentOS 8 计算机。

reboot

重新启动后,键入以下命令以验证 IPv6 是否已禁用。

ip a | grep inet6

如果该命令没有打印任何内容,则表示 IPv6 已禁用。

概括

在本文中,您了解了在 CentOS 8 Linux 计算机上禁用 IPv6 的两种方法。第一种方法是使用sysctl,而第二种方法是使用内核启动选项。虽然使用 sysctl 禁用 IPv6 是暂时的,但内核引导选项 是永久性的,并且是最好的方法。