测试 IPv6 连通性
curl ip.sb -6
# 国外机器
ping6 ipv6.google.com
# 国内机器
ping6 ipw.cn
开启 IPv6
部分厂商提供的云服务器镜像默认是关闭了 IPv6 的(例如阿里云),需要手动修改系统配置文件来开启。以 Debian 为例,编辑 /etc/sysctl.conf,将其中和 IPv6 有关字段的值设置为 0 即可:
net.ipv6.conf.all.disable_ipv6 = 0
net.ipv6.conf.default.disable_ipv6 = 0
net.ipv6.conf.lo.disable_ipv6 = 0
net.ipv6.conf.eth0.disable_ipv6 = 0
然后应用配置:
sysctl -p
此时使用 ifconfig 命令就可以看到网卡有了一个 IPv6 链路本地地址:
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 172.17.39.221 netmask 255.255.192.0 broadcast 172.17.63.255
inet6 fe80::216:3eff:fe00:2109 prefixlen 64 scopeid 0x20<link>
ether 00:16:3e:00:21:09 txqueuelen 1000 (Ethernet)
RX packets 33574372 bytes 5658726074 (5.2 GiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 26217969 bytes 11529139204 (10.7 GiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
添加 Tunnel
使用与 KVM VPS 无缝集成的 IPv 6 隧道服务。Tunnel Broker 以其可靠性和易用性而著称,是深受用户欢迎的选择。该解决方案可以让您在不影响主要 IPv 4 配置的情况下使用 IPv 6。
访问地址: https://tunnelbroker.net/
使用不在黑名单的 ip 访问网站,点击 Create Regular Tunnel,输入不在不在黑名单的 ip,创建 Tunnel,创建成功后将 Client IPv 4 Address 更改为目标 ip。
点击 Example Configurations,选择操作系统,会生成配置:
auto he-ipv6
iface he-ipv6 inet6 v4tunnel
address 2001:470:e:8d4::2
netmask 64
endpoint 72.185.24.153
local 172.16.45.89
ttl 255
gateway 2001:470:e:8d4::1
local 修改为服务器的私网地址:
ip addr
修改服务器的配置文件,将上面的配置粘贴到最后:
vim /etc/network/interfaces
之后启用 he-ipv6 接口:
apt-get install ifupdown
ifup he-ipv6
查看 ip:
4: sit0@NONE: <NOARP> mtu 1480 qdisc noop state DOWN group default qlen 1000
link/sit 0.0.0.0 brd 0.0.0.0
5: he-ipv6@NONE: <POINTOPOINT,NOARP,UP,LOWER_UP> mtu 1480 qdisc noqueue state UNKNOWN group default qlen 1000
link/sit 10.0.2.15 peer 72.185.24.153
inet6 2001:470:e:8d4::2/64 scope global
valid_lft forever preferred_lft forever
inet6 fe80::c0a8:102/64 scope link
valid_lft forever preferred_lft forever
如果没有生效可以尝试使用 systemctl restart network 命令重启网络或者直接 reboot。
维持 Tunnel 连接
如果一段时间内没有流量,Tunnel 会进入休眠状态。可以使用 crontab 命令添加一个计划任务来使 Tunnel 保持激活:
# 国外机器
*/10 * * * * ping6 -c 1 www.google.com
# 国内机器
*/10 * * * * ping6 -c 1 ipw.cn