CentOS禁用IPv6

1.修改/etc/sysconfig/network,追加:

NETWORKING_IPV6=no

2.修改/etc/hosts,把ipv6的那句本地主机名解析的也注释掉:

#::1   localhost localhost6 localhost6.localdomain6

3.让系统不加载ipv6相关模块,这需要修改modprobe相关设定文件,为了管理方便,我们新建设定文件/etc/modprobe.d/ipv6off.conf(名字随便起)(RHEL6.0之后没有了/etc/modprobe.conf这个文件),内容如下,三种方式,总有一款适合你:

alias net-pf-10 off
alias ipv6 off

或者(未测试)
install ipv6 /bin/true

或者(未测试)
install ipv6 /sbin/modprobe -n -i ipv6
注意,如果你使用了网卡绑定(bond)技术,而且不希望用ipv6,那么你使用第一种,否则系统启动时,bonding模块可能会加载失败。

4.重启系统,然后确认:

[root@test ~]# lsmod | grep -i ipv6
[root@test ~]# ifconfig | grep -i inet6
如果上述2个命令执行的结果没有任何显示,那么说明ipv6已经被完全禁止了。

后记:
alias net-pf-10 off
alias ipv6 off
options ipv6 disable=1
第二句,在有的版本的系统里,当我们重启网络的时候,会出现如下错误:
FATAL: Module off not found.
我估计大家都不希望在启动过程中看到FATAL这样的错误信息,可以尝试更换以下配置
alias net-pf-10 off
options ipv6 disable=1

5.其他应用可能启动会出现ipv6加载失败的情况,需要逐一处理,修改监听协议为指定ipv4

你可能感兴趣的:(CentOS禁用IPv6)