最近买了阿里云香港B来翻墙,然而被Google的验证码折磨的死去活来。四处查询,终于找到了一个合适的方案。
添加IPV6支持
阿里云香港是没有IPV6地址的,需要一个tunnel,这边使用HE.NET提供的服务。
填完之后会获得Server IPv4 Address
,Server IPv6 Address
etc……
然后在阿里云配置开启IPV6,修改 /etc/sysctl.conf
,添加(修改)如下参数
net.ipv6.conf.all.disable_ipv6 = 0
net.ipv6.conf.default.disable_ipv6 = 0
net.ipv6.conf.lo.disable_ipv6 = 0
然后编辑 /etc/network/interfaces
(来源)
face he-ipv6 inet6 v4tunnel
address <IPV6>::2
netmask 64
remote <HE Server IPv4 Address>
local <阿里云 IPv4 Address>
endpoint any
ttl 255
gateway <IPv6>::1
up ip -6 route add 2000::/3 via ::<HE Server IPv4 Address> dev he-ipv6
up ip -6 addr add <IPv6>::1:1/128 dev he-ipv6
up ip -6 addr add <IPv6>::2:1/128 dev he-ipv6
down ip -6 route flush dev he-ipv6
这儿没有添加 auto he-ipv6
是因为我觉得可能会导致所有流量通过HE中转。
修改Hosts
这儿直接用现成的 ipv6-hosts 。 需要注意的是其中有很多其他网站的hosts,按需删除。 当然愿意自己修改也成,看wiki就好。
重启Shadowsocks
这儿遇到一个问题,如果使用的是Shadowsocks-libev版本,要开启-6
参数,但不知道会不会导致所有流量都走IPV6,如果是用的其他版本(我使用的python版本),直接重启即可。
在Google查询一下自己 IP,如果是IPV6就说明配置成功。
修改IPV4与IPV6优先级
编辑 \etc\gai.conf
precedence ::1/128 50
precedence ::/0 40
precedence 2002::/16 30
precedence ::/96 20
precedence ::ffff:0:0/96 100
避免走IPV6拖慢速度。