有时在VPS上下载文件时候,会停止不动,这时候可能是优先IPV6访问,但VPS上又没有IPV6。
可能就要考虑是不是配置哪里出错了?
一、设置IPv4优先:
Debian及Ubuntu:
修改 /etc/gai.conf,
vim /etc/gai.conf
取消下面这一行的注释
precedence ::ffff:0:0/96 100
centos:
新建文件 /etc/gai.conf,填写如下内容:
label ::1/128 0
label ::/0 1
label 2002::/16 2
label ::/96 3
label ::ffff:0:0/96 4
precedence ::1/128 50
precedence ::/0 40
precedence 2002::/16 30
precedence ::/96 20
precedence ::ffff:0:0/96 100
编辑 /etc/gai.conf 文件,查找
precedence ::ffff:0:0/96 100
将前面的注释 # 去掉并保存,如果前面没有 # 号表示已经更改过设置了。如果没有查找到该行直接在文件末尾添加上
precedence ::ffff:0:0/96 100
CentOS默认没有 /etc/gai.conf 该文件,可以执行命令
cp -p /usr/share/doc/glibc-common-2.17/gai.conf /etc/
拷贝该文件后修改。
修改完成保存生效。这样设置后有IPv4的话优先使用IPv4,也不影响IPv6的使用。
注:::ffff:0:0/96 为IPv4/IPv6转换地址 (IPv4-mapped IPv6 address)。
二、关闭IPv6
如果确实不需要IPv6,我们可以禁用IPv6
执行命令:
echo “1” > /proc/sys/net/ipv6/conf/all/disable_ipv6
这样就掉了禁用ipv6,如需恢复的话删除掉 /proc/sys/net/ipv6/conf/all/disable_ipv6 这个文件就可以。
debian:
net.ipv6.conf.all.disable\_ipv6 = 1
net.ipv6.conf.default.disable\_ipv6 = 1
net.ipv6.conf.lo.disable\_ipv6 = 1
centos:
net.ipv6.conf.all.disable\_ipv6 =1
net.ipv6.conf.default.disable\_ipv6 =1