双栈VPS云服务器配置ipv4出口优先教程

简介

有不少VPS都是双栈出口,双栈网络也就是同时拥有ipv6和ipv4。默认情况下系统会优先使用ipv6,如果我们有特殊的用途需要让ipv4先被识别到,那就需要对双栈的VPS进行配置了,这里我以centos7系统演示如何去修改双栈网络实现ipv4优先以及禁用ipv6来达到这个效果。习惯性的记录一下笔记留以后查阅,并分享给需要的朋友。

 

教程

修改gai.conf文件

因为/etc/gai.conf 文件默认的情况,是优先使用ipv6的。使用下面的命令,需要系统先安装curl。我们可以通过下面的命令测试一下

#debian/centos 安装curl,有curl可以忽略这个
apt-get install curl
yum install curl

#测试IP
curl ip.sb

或

curl ip.sb -6

我们可以看到返回的IP是ipv6

这里cents7需要新增一个/etc/gai.conf

vi /etc/gai.conf

然后加一条进来

precedence ::ffff:0:0/96  100

debian系统上找到/etc/gai.conf这个文件,把#号给删除掉就可以了

默认
#precedence ::ffff:0:0/96  100

修改为
precedence ::ffff:0:0/96  100

再查就发现显示的是 ipv4的地址了

 

禁用ipv6

在sysctl.conf文件里添加禁用ipv6的参数,先来修改文件

vi /etc/sysctl.conf

添加下面代码到最后一行,保存文件退出

net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1

如果有其他的网卡要禁用ipv6,比如ent2,只需要添加下面一句

net.ipv6.conf.ent2.disable_ipv6 = 1

最后使用命令设置生效,这样的操作和上面修改gai.conf文件可以达到一样的效果,不过禁用ipv6可能会导致其他的一些问题,有时间后面再讲

sysctl -p
THE END