如何在 RHEL、Rocky 和 AlmaLinux 中禁用或启用 IPv6
摘要:本指南探讨了如何在 RHEL、Rocky Linux 和 AlmaLinux 发行版上禁用 IPv6。
在计算中,IP 地址有两种类型:IPv4 和 IPv6。
IPv4 是一个 32 位地址,由 4 个八位字节组成,分为三部分。它是最常用的 IP 寻址方法,最多支持 232 个 IP 地址。您的设备很可能使用 IPv4 地址连接到任何网络(有线或无线)。
另一方面,IPv6 是由 16 个八位位组组成的 128 位地址。它比 IPv4 长得多,提供 2128 个 IP 地址。这比 IPv4 少了 340 个十亿个 IP 地址,而 IPv4 只有 43 亿个 IP 地址。
IPv4 和 IPv6 通常协同工作,不会出现任何问题。但是,有时您可能需要暂时禁用 IPv6 寻址,例如在排除网络故障时。
在本指南中,我们将演示如何在 RHEL、Rocky 和 AlmaLinux 发行版上禁用 IPv6。
永久更改 RHEL、Rocky 和 AlmaLinux 上的 IPv6
在本节中,我们将引导您了解如何永久禁用 IPv6。在执行其他操作之前,请使用以下 ip 命令验证您的 Linux 系统是否正在运行 IPv6,如下所示:
$ip 一个 | grep inet6
在下面的输出中,您可以看到 IPv6 已启用。下一步是禁用 IPv6。
我们通过更改 grub 配置文件来实现 IPv6。
因此,输入 GRUB 配置文件,如图所示。
$ sudo vim /etc/default/grub
在最后添加底线。
GRUB_CMDLINE_LINUX="$GRUB_CMDLINE_LINUX ipv6.disable=1"
保存更改并退出。
要应用更改,我们需要创建一个新的 GRUB 配置文件。为此,请运行以下命令:
$sudo grub2-mkconfig -o /boot/grub2/grub.cfg
此外,为 EFI 系统创建 EFI GRUB 配置文件,如下所示。
$ sudo grub2-mkconfig -o /boot/efi/EFI/rocky/grub2.cfg
之后,重新启动系统
$ 须藤重新启动
并再次检查是否支持 IPv6。
$ip 一个 | grep inet6
如果没有看到任何结果,则表示 IPv6 当前已禁用。
在 RHEL、Rocky 和 AlmaLinux 上临时更改 IPv6
另一种选择是暂时禁用 IPv6,这可以通过编辑 /etc/sysctl.conf 文件或将配置文件添加到 /etc/sysctl.d 目录来完成。
您可以使用以下命令更改 /etc/sysctl.conf 文件:
$sudo sysctl -w net.ipv6.conf.all.disable_ipv6=1
然后检查 IPv6 是否被禁用。
$ip 一个 | grep inet6
或者,您可以手动编辑 /etc/sysctl.conf 文件。
$ sudo vim /etc/sysctl.conf
添加以下行以禁用所有网络适配器的 IPv6。
网络.ipv6.conf.all.disable_ipv6 = 1
网络.ipv6.conf.default.disable_ipv6 = 1
保存更改并退出。然后运行以下命令来应用更改。
$sudo sysctl -p
在 RHEL、Rocky 和 AlmaLinux 上启用 IPv6
打开 /etc/default/grub 文件并解码ipv6.disable=1GRUB_CMDLINE_LINUX,如图所示。
GRUB_CMDLINE_LINUX="$GRUB_CMDLINE_LINUX"
运行grub2-mkconfig命令重新生成grub.cfg文件:
# grub2-mkconfig -o /boot/grub2/grub.cfg
或者,在 UEFI 系统上,执行以下操作:
# grub2-mkconfig -o /boot/efi/EFI/编辑/grub.cfg
请务必将您的发行版名称替换为 rocky 或 almalinux redhat。
重新启动系统以停止 IPv6 支持。
如果您已启用 IPv6 一段时间,只需从 /etc/sysctl.conf 文件中删除以下行并重新启动系统。
网络.ipv6.conf.all.disable_ipv6 = 1
网络.ipv6.conf.default.disable_ipv6 = 1
除非绝对必要,否则通常不建议在 Linux 系统上禁用 IPv6,因为这可能会导致问题,特别是当您使用仍支持 IPv6 的 DHCP 服务器时。
在本教程中,我们讨论在 RHEL、Rocky 和 AlmaLinux 上启用 IPv6 的各种方法。非常欢迎您对本指南提供反馈。