Total Pageviews

Sunday, 28 October 2012

CentOS5下,禁用 IPv6

1. 编辑 /etc/sysconfig/network ,设置 NETWORKING_IPV6=”no”
2. 编辑 /etc/modprobe.conf,加如下面两行
alias ipv6 off
alias net-pf-10 off
3. 禁用 IPv6 防火墙
chkconfig ip6tables off
4. 重新引导系统。
注意:
在 5.4 或以上版本,请在 /etc/modprobe.conf 把
alias ipv6 off
改为
options ipv6 disable=1
另类做法(可能较容易,并适用于在任何有 /etc/modprobe.d 的发行内):
# touch /etc/modprobe.d/disable-ipv6.conf
# echo “install ipv6 /bin/true” >> /etc/modprobe.d/disable-ipv6.conf
* 5.4 版的更新引进了符号/ipv6 模块的互赖性;因此,假若 IPv6 曾经以上述方法停用,当结合界面的驱动程序被升级到 5.4 后,内核的结合模块将会不能被装入。要让这个模块正常装入,请改用:
# touch /etc/modprobe.d/disable-ipv6.conf
# echo “options ipv6 disable=1″ >> /etc/modprobe.d/disable-ipv6.conf

为什么要禁用IPv6?
有资料显示 IPv6 有可能会导致 DNS 解析变慢,禁用 IPv6 后恢复正常。
补充:
请详细阅读:
http://wiki.centos.org/zh/FAQ/CentOS5#head-578b77a75af362bb1f4f6cd797d4664f2c7819df
RedHat官方建议不要禁用ipv6模块,而是使用net.ipv6.conf.all.disable_ipv6 = 1 的方式禁用ipv6。
比如我们已知的一个问题,当系统禁用ipv6模块后,php在调用curl的时候,速度会非常慢。因为curl会测试是否支持ipv6,并试图modprobe ipv6(这个过程慢导致应用变慢)。