在学校里看剧、电影,下载破解游戏基本都靠北邮人。一方面资源比较全,另一方面是走 IPv6,不需要走计费的校园网 IPv4 流量。不过由于北邮人只支持 IPv6,而国内 IPv6 基本只有校园网有。问题来了,怎么在校外的纯 IPv4 环境下使用 IPv6 Only 的北邮人呢?

目前已经有一些运行商为家庭网络提供了 IPv6,但是北邮人这种教育网 IPv6 资源站点常常封禁了这些家庭 IPv6 网络。

IPv6

1 Shadowsocks 代理方案

1.1 从 IPv4 到 IPv6

这是最重要的一步。你首先需要一个支持 IPv6 的 VPS。国内目前支持 IPv6 的好像只有阿里云?即便支持,国内的 IPv6 VPS 又贵又难用(需要申请)。因此最好的方案是采用海外的 VPS。听起来用海外的 VPS 会很慢?资源站点对于 IPv6 网络的封禁也是一个需要考虑的因素。我在实际使用中发现,海外 VPS 的 IP 一般可以访问这些资源站点。由此推断,这些资源站点对于国内运营商网络的 IPv6 封禁应该是通过黑名单方式实现的。海外的 IPv6 网段不在这个黑名单里面。

其实海外的 VPS 主要问题是延时高,其实速度还是挺快的,而且 P2P 传输业务受到延时的影响挺小的,实测利用我的 VPS 可以达到 5MB/s 的 P2P 下载速度(在服务器上看上下行都是 5MB/s,基本跑满了 100M 的带宽)。我用的 VPS 是Digital Ocean的旧金山节点。价格是$5 一个月。平均下来每天一块钱吧。注意创建 Droplet 的时候要自己勾选 IPv6(添加 IPv6 是免费的)。

选择IPv6

最重要的一点是这些海外 VPS 的带宽及流量非常廉价。我使用的 5 美元套餐,运营商称其服务器是用 1Gbps 的网线连到路由,然后路由有一个 10Gbps 的出口。运营商本身不会特别限制每个 IP 的速度。实际使用中,虽然无法达到 1Gbps 的理论速度,但是大多数时候达到 100Mbps 的速度是没有问题的。流量方面,5 美元套餐提供了 1TB 每月的流量,即便是 BT 下载应该也是够了。

在服务器上我部署了 Shadowsocks 服务。SS 服务器可以直接无痛支持 IPv4 到 IPv6 的转换。关于如何部署 Shadowsocks,这方面的教程文章网上汗牛充栋,我这里就不提供了。

1.2 设置

首先需要将北邮人的网址 bt.byr.cn 添加到 Shadowsocks 客户端的代理列表。

Shadowsocks选项

点击 Shadowsocks 小飞机,选择“编辑 PAC 用户自定规则”。在弹出的框中输入||bt.byr.cn

编辑PAC用户自定规则

然后你就能在 IPv4 网络环境下打开北邮人的网页啦。

接下来是设置下载客户端 uTorrent 的网络设置。打开 uTorrent 的设置(Preferences),进入到 Network。进行如下设置:

uTorrent设置

注意:上面的 Socks5 设置中,端口会与你的 Shadowsocks 设置有关。如果你没有动过相关设置的话,应该就是 1086 端口。 查看你的 Shadowsocks 客户端 Sock5 代理端口设置的方式是单击 Shadowsocks 小飞机,选择偏好设置,在弹出的窗口中点击“高级”,其中“本地 Socks5 监听端口”即为应该填写到 uTorrent 设置中的代理端口。

大功告成!_(:з」∠)_

2 VPN 方案

如果你有一个在宿舍或者实验室常驻,且有公网 IP 的服务器的话,那么使用 VPN 也不失为一种好的方案。如果是在海外服务器上部署 VPN 服务,很容易被防火墙拦截。而如果是连接墙内服务器,就没有这个问题了。这里我推荐 Pritunl 这个工具。我之前写过一个教程:部署 Pritunl 来使用 OpenVPN

相比于代理,VPN 的实现在 OSI 模型中的较为基础,因此,使用 VPN 以后,客户端所有的应用都会透明地使用 VPN 网关,那么所有的应用都会自动获得 IPv6 访问能力,而不需要额外的设置。