Shadowsocks链接VPS的ipv6
本方法只针对既有ipv4又有ipv6的vps有效,系统为Debian 9,vps为Vultr,ss为shadowsocks-libev。试过仅有ipv6的vps,能在本地ping通ipv6,也能在服务器端用ipv6上google的ipv6,但shadowsocks硬是连不上,尚未找到原因。
服务器端开通ipv6
申请vps instance的时候首先勾选提供ipv6地址。ipv6地址在settings页面。
两种方法激活ipv6
方法一,动态激活
进入SSH,修改/etc/network/interfaces文件,文末添加:
1 |
iface ens3 inet6 auto |
重新启动网络服务或去vultr页面重启vps:
1 |
systemctl restart networking.service |
方法二,静态激活
仍旧修改/etc/network/interfaces文件,文末添加:
1 2 3 4 |
iface ens3 inet6 static address 2001:db8:1000::100 netmask 64 up /sbin/ip -6 addr add dev ens3 2001:db8:1000::200 |
address即为提供的ipv6地址,子网掩码netmask默认值64不变。
仍旧按照上述动态操作重启网络服务或重启vps。
以上参考自vultr提供的说明文档。
服务器端验证ipv6开通成功
ssh进入vps,输入以下代码:
1 |
dig google.com AAAA |
圈中的即为google的ipv6地址,复制此地址,然后在ssh里用ping6是否能ping通:
1 |
ping6 2607:f8b0:4006:811::200e |
能ping通即代表ipv6以成功开启。按ctl+C或ctl+Z退出ping。
修改shadowsocks的设置文件
设置文件地址详见此文。首行address修改为ipv6地址,重启shadowsocks-libev服务。
桌面端设置
其它操作不变,ip地址更改为ipv6地址,即可shadowsocks链接ipv6上网了。