默认情况下,在RHEL / CenOS 7系统上启用IPv6。因此,如果故意在系统上禁用IPv6,则可以通过以下任一方法重新启用它。

1.在内核模块中启用IPv6(需要重启)
2。使用sysctl设置启用IPv6(无需重启)

在内核模块中启用IPv6(需要重启)

1.编辑/ etc / default / grub并在GRUB_CMDLINE_LINUX行中将内核参数ipv6.disable的值从1更改为0,例如:

# cat /etc/default/grub
GRUB_TIMEOUT=
GRUB_DEFAULT=saved
GRUB_DISABLE_SUBMENU=true
GRUB_TERMINAL_OUTPUT="console"
GRUB_CMDLINE_LINUX="ipv6.disable=0 crashkernel=auto rhgb quiet"
GRUB_DISABLE_RECOVERY="true"
注意:ipv6.disable = 0是默认值,因此您可以根据需要从GRUB_CMDLINE_LINUX参数列表中删除此参数ipv6.disable。

2.使用下面显示的命令重新生成GRUB配置文件并覆盖现有配置文件。

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

3.重新启动系统以使更改生效。

# shutdown -r now

使用sysctl设置启用IPv6(无需重新启动)

此外,即使加载了ipv6内核模块,也可以使用sysctl设置禁用它。

1.为了让ipv6在线运行,请确保/etc/sysctl.conf中的以下行被注释掉或删除。

#cat /etc/sysctl.conf | grep ipv6
#net.ipv6.conf.all.disable_ipv6 = 1 ###注释/删除此行或将其值从1更改为0
#net.ipv6.conf.default.disable_ipv6 = 1 ###注释/删除此行或将其值从1更改为0

2.使用命令'sysctl -p'重新读取配置文件/etc/sysctl.conf。

#sysctl -p

有关使用sysctl设置的更多信息

1.要在接口上动态禁用ipv6,请使用下面给出的命令。

#sysctl net.ipv6.conf。[interface] .disable_ipv6 = 1 ###把接口名称放在这里[interface],即eth0
#sysctl net.ipv6.conf.default.disable_ipv6 = 1

2.要在接口上动态启用ipv6,请使用下面给出的命令。

#sysctl net.ipv6.conf。[interface] .disable_ipv6 = 0 ### put interface name here [interface],即eth0
#sysctl net.ipv6.conf.default.disable_ipv6 = 0

3.要在所有接口上动态启用ipv6,请使用下面给出的命令。

#sysctl net.ipv6.conf.all.disable_ipv6 = 0
#sysctl net.ipv6.conf.default.disable_ipv6 = 0

4.要在所有接口上动态禁用ipv6,请使用下面给出的命令。

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

校验

要验证是否启用了IPv6,请执行:

#ifconfig -a | grep inet6
inet6 fe80 :: 211:aff:fe6a:9de4 prefixlen 64 scopeid 0x20
inet6 :: 1 prefixlen 128 scopeid 0x10 [host]

如上面的输出所示,启用了IPv6。

05-11 08:34