VPS设置Ubuntu,Debian9/10以及centos7,IPV4优先和关闭IPV6

  • A+
所属分类:SSPnael

有时在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:

vim /etc/sysctl.conf
net.ipv6.conf.all.disable\_ipv6 = 1
net.ipv6.conf.default.disable\_ipv6 = 1
net.ipv6.conf.lo.disable\_ipv6 = 1
sysctl -p
centos:

vi /etc/sysctl.conf
net.ipv6.conf.all.disable\_ipv6 =1
net.ipv6.conf.default.disable\_ipv6 =1
sysctl -p
文章知识点与官方知识档案匹配,可进一步学习相关知识
————————————————

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: