使用 socks5 代理来避开北京大学和清华大学的校园网认证,从而实现免费上网

本来是想和平地使用校园网的,然而清华友人不少,时不时要到清华一坐,连上 wifi 却不能上网着实难过,所以花了5分钟了 bypass 了他们的校园网认证。

这篇文章陈述的方法主要原理是,北京大学和清华大学的校内网络在连接上的同时即分配没有访问限制的 IPv6 地址。通过在拥有 IPv6 地址的服务器上搭建 socks5 代理间接访问 IPv4 地址,即可实现无限制访问。因此,这篇文章也适用于具有类似网络环境的大学或其它机构。

另外,由于鄙校未限制对 CERNET IPv4 地址的访问,也可以在 IPv4 地址处在教育网列表内的服务器上搭建代理,从而实现 Unlimited Access(即类似普通的翻墙),但将导致需要通过  https://its.pku.edu.cn/ 登录才能上网

步骤

  • 首先,需要一个拥有 IPv6 地址的服务器。

位于美国的 VPS 提供商大部分在提供一个 IPv4 地址的同时提供数个免费的 IPv6 地址,例如著名的 Digital Ocean 和 Bandwagonhost 都提供1个免费 IPv6 地址。如果你不能确定你购买的产品中是否包含这项服务,请咨询你的服务提供商。

  • 在服务器上配置 socks5 代理

世界上有许多优秀的软件可用于配置这类代理服务器。由于 Shadowsocks 具有开源、配置简单、流量特征不明显、生态良好等众多优点,已经成为目前广泛使用的开源软件。虽然原作者已经迫于中国官方压力停止了开发,但在其它软件发展成熟前它仍是最优秀的解决方案之一。

本文以 Shadowsocks 为例配置代理服务器。

Shadowsocks 的服务端可适配多个系统,推荐易于安装的 Python 版本。以 Debian 6.0/7/8 和 CentOS 6/7 为例,使用如下命令安装(需要 root 权限)

Debian

apt-get install python-pip
pip install shadowsocks

Cent OS

yum install python-setuptools && easy_install pip
pip install shadowsocks

接下来在后台运行服务端程序即可。

ssserver -s :: -p 443 -k mypassword -m aes-256-cfb --user nobody -d start

注意在运行服务端程序时的参数:

-s ::

这一参数指定了server address为 :: ,此时 shadowsocks server 将会监听来自 IPv6 的连接。

Alternatively, 你也可以用一个配置文件来启动ssserver。将如下的文件保存于服务器上,推荐将其保存为 /etc/shadowsocks.json

{
    "server":"::",
    "server_port":443,
    "local_address":"127.0.0.1",
    "local_port":1080,
    "password":"mypassword",
    "timeout":300,
    "method":"aes-256-cfb",
    "fast_open":false
}

然后使用以下命令启动

ssserver -c /etc/shadowsocks.json --user nobody -d start

这样,代理的服务端就设置好了。如果你使用其它软件,将其设置为监听来自 IPv6 地址的连接即可。

  • 在本地设置使用 socks5 代理

仍以 Shadowsocks 为例。向服务商咨询或者在服务器上运行 ifconfig 来确定你的IPv6地址

下载 Shadowsocks 的客户端,安装后打开 Servers – Open Server Preferences… ,在 Address 一栏中填入你的 IPv6 地址,“:” 后方填入你设置的端口号(例如443),其余设置按字面意思填入即可。

如果你未使用 Shadowsocks ,请参阅你所使用软件的手册进行本地设置。

设置完毕后,大多数 App 已经可以直接连接互联网了。如果你还使用 tor browser 等需要设置代理的 App,可以使用如下的方法。

  • 设置其余软件使用代理

许多常用的 App 例如 Terminal 或者 Tor Browser 会需要进行代理设置。通常这类软件的设置都会放在 Preferences – Network – Proxy 或类似的菜单或配置文件中。如果你使用 Shadowsocks ,则只需在这些 App 的设置选项中选择 Manual Proxy Configuration ,并设置 Proxy 类型为 SOCKS v5, SOCKS Host 为 127.0.0.1:1080 (或其它地址,如果你改动了 Shadowsocks 配置文件)即可。

 

Reference :

  1. shadowsocks wiki

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.