在如今到处都在普及 IPv6 之际,某 VPS 服务商非常不友好地不支持 Native IPv6,无奈之下只能采用曲线救国方式,利用 HE.NET 提供的 IPv6 Tunnel 来实现 VPS 对 IPv6 的支持。
检查 VPS 是否支持 IPv6
输入 ip -6 address show
看是否有显示内容,如无则表示没有启用 IPv6。
编辑文件 /etc/sysctl.conf
,添加或修改一下内容启用 IPv6:
net.ipv6.conf.all.disable_ipv6 = 0
net.ipv6.conf.default.disable_ipv6 = 0
net.ipv6.conf.lo.disable_ipv6 = 0
键入 sysctl -p
使上述设置生效,再输入 ip -6 address show
查看是否有信息显示。
为 VPS 配置 IPv6 Tunnel
在 /root
目录下新建一个 he-ipv6.sh
文件,将 Tunnelbroker.net 中 Linux-route2 选项下的配置内容粘贴进去,执行 ./he-ipv6.sh
设置 IPv6 优先级
尽管目前 IPv6 在全世界范围内快速普及,但在实际使用中仍然会遇到不少问题,为保守起见,我们设置了 IPv4 的优先级高于 IPv6。
方法很简单,就是在 /etc/gai.conf
中加入 precedence ::ffff:0:0/96 100
就行了。
添加一整段 IPv6
虽然我也不知道在一个 VPS 上监听 2^n 个 IP 地址有啥用…
ip -6 route add local XXXX/64 dev lo #添加
ip -6 route list table local #查看