检查确认
要验证是否启用了 IPv6,请执行:
# ifconfig -a | grep inet6 inet6 fe80::211:aff:fe6a:9de4 prefixlen 64 scopeid 0x20 inet6 ::1 prefixlen 128 scopeid 0x10[host]
如上面的输出所示,IPv6 已启用。
之路教程 https://onitr oad .com
使用 sysctl 设置启用 IPv6(无需重启)
此外,即使加载了 ipv6 内核模块,也可以使用 sysctl 设置将其禁用。
- 为了让 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 设置的更多信息
- 要在接口上动态禁用 ipv6,请使用下面给出的命令。
# sysctl net.ipv6.conf.[interface].disable_ipv6 = 1 ## [interface] 是接口名称,比如 eth0 # sysctl net.ipv6.conf.default.disable_ipv6 = 1
- 要在接口上动态启用 ipv6,请使用下面给出的命令。
# sysctl net.ipv6.conf.[interface].disable_ipv6 = 0 ## [interface] 是接口名称,比如 eth0 # sysctl net.ipv6.conf.default.disable_ipv6 = 0
- 要在所有接口上动态启用 ipv6,请使用下面给出的命令。
# sysctl net.ipv6.conf.all.disable_ipv6 = 0 # sysctl net.ipv6.conf.default.disable_ipv6 = 0
- 要在所有接口上动态禁用 ipv6,请使用下面给出的命令。
# sysctl net.ipv6.conf.all.disable_ipv6 = 1 # sysctl net.ipv6.conf.default.disable_ipv6 = 1
RHEL/CenOS 7 系统默认启用 IPv6.
因此,如果系统上有意禁用了 IPv6,则可以通过以下任一方法重新启用它。
- 在内核模块中启用IPv6(需要重启)
- 使用 sysctl 设置启用 IPv6(无需重启)
在内核模块中启用 IPv6(需要重新启动)
- 编辑 /etc/default/grub 并在 GRUB_CMDLINE_LINUX 行中将内核参数 ipv6.disable 的值从 1 更改为 0,例如:
# cat /etc/default/grub GRUB_TIMEOUT=5 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。
- 使用下面显示的命令重新生成一个 GRUB 配置文件并覆盖现有的配置文件。
# grub2-mkconfig -o /boot/grub2/grub.cfg
- 重启系统使更改生效。
# shutdown -r now
日期:2020-09-17 00:13:35 来源:oir作者:oir