高校生使用教育网的一点姿势

Author Avatar
Wincer 4月 27, 2019
  • 在其它设备中阅读本文章

最近一直忙于毕业的相关事项,所以也没有新文章产出——并非是找不到写作素材,实在是没写作时间。虽然这几天依旧很忙,但总算也抽出了一点时间完成了本文,希望能给广大高校生在办理宽带时带来一些帮助。

前言

目前大部分高校的校园宽带应该都对使用者作出了诸多限制,比如:一号一机,禁止使用路由器(破解后才可以共享);与校方合作垄断,导致价钱比家用宽带贵一大截等。在校生也只能被迫接受——毕竟,你总不能真的不用电脑上网吧?

好在目前越来越多的高校里校园网已经开始支持 IPv6 了,而一般校园网只针对 IPv4 的流量计费,对 IPv6 产生的流量是不计费的,至于原因,我猜测有两方面原因:一是 IPv6 相关技术还不是特别完善,IPv4 计费系统可能需要修改;二是目前国内 99% 的网站都不支持 IPv6,而纯 IPv6 环境下是无法访问 IPv4 网站的,所以干脆就没做这一限制。

连接上校园网后,不要认证,戳这里来测试是否支持 IPv6,当然也可以直接打开 Google,目前 Google 可以通过 IPv6 直连。

但,谁让我是学计算机的呢,这并不能难倒我。既然无法通过 IPv6 直接连接 IPv4 的网站,那利用一个同时支持 IPv4 和 IPv6 的 VPS 做一层代理不就可以绕过这一限制了吗?原理见下拓扑图:

原理

原理

这就意味着,只要你具备 IPv6 网络,便可以通过此方法绕过诸多限制,从而免费上网

获取 IPv6

目前比较出名的 VPS 服务商除搬瓦工外,大部分都原生支持 IPv6 连接,包括:Vultr、Linode、DigitalOcean。而搬瓦工的 VPS 中 OpenVZ 架构自带 IPv6,KVM 架构则需要利用 Tunnel Broker 技术来提供 IPv6 隧道给只支持 IPv4 的用户(我的搬瓦工 CN2 主机便是通过 Tunnel Broker 来获取 IPv6 支持的,这也是搬瓦工的客服推荐的方案),它定义在 RFC 3053

如果你的 VPS 原生支持 IPv6 连接的话,便可以跳过这一步。

获取 Tunnel

目前 Hurricane Electric 免费提供 Tunnel Broker 服务(我 TM 吹爆!),该公司运营了世界上以对等数目计算的最大 IPv6 网络,所以服务方面是不用担心的。戳这里注册。

随后点击左侧的 Create Regular Tunnel,再在框内输入 VPS 的 IP 地址,再选择一个地区服务器来作为隧道的一端,这里建议根据服务器的地区来就近选择,我这里选择的是 Los Angeles。

Tunnel 面板

Tunnel 面板

配置 IPv6

创建成功后,在以下页面选择你的系统,如果是 Debian 系就选择 Debian/Ubuntu,其余就选择 Linux-net-tools。

框中会出现几行命令,登陆 VPS,依次运行这几行命令就行了。

IPv6 配置命令

IPv6 配置命令

第四行被我抹去的地址便是公网 IPv6 的地址。

如果对 Tunnel 的速度需要更换的话,可以删除该 Tunnel 后在 VPS 运行 modprobe -r sit 命令或者直接重启,再重新创建一个 Tunnel。

测试

不出意外,这时 VPS 已经可以使用 IPv6 连接了:

测试 IPv6 连接

测试 IPv6 连接

需要注意的是,如果选择非北美地区的服务器,会绕道美国,所以这里的 PING 值会略高。

配置代理

代理可以选择 Shadowsocks,但本次要介绍的不是它,而是另一款代理软件:V2Ray。该代理软件比 Shadowsocks 多了许多种伪装流量的方法,且占用内存更低(毕竟是 Go 写的),这对于小内存的 VPS 来说,非常重要。只不过其配置文件比 Shadowsocks 要劝退小白一些。

服务端安装

输入以下一行代码进行安装,系统需支持 Systemd:

bash <(curl -L -s https://install.direct/go.sh)

有关更详细的安装教程见官方文档

服务端配置

如果是通过以上命令安装的化,配置文件在 /etc/v2ray/config.json 目录,以下是我的配置文件,没有流量伪装等进阶配置:

{
  "log": {
    "loglevel": "warning",
    "access": "/var/log/v2ray/access.log",
    "error": "/var/log/v2ray/error.log"
  },
  "inbounds": [{
    "port": 10086,
    "protocol": "vmess",
    "settings": {
      "clients": [
        { 
          "id": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
          "alterId": 4
        }
      ]
    }
  }],
  "outbounds": [{
    "protocol": "freedom",
    "settings": {}
  }]
}

inbounds:入站配置,是一个数组

注意协议这里填的是:VMess ,由 V2Ray 原创的一份加密传输协议。

clients 是一个 Object 数组,每一个元素里的 id 必须满足 UUID 格式,且服务端客户端需保持一直,作用类似于 Shaowsocks 中的密码。

outbounds:出站配置,也是一个数组

客户端安装

Linux 客户端的安装与服务端一致。

Windows 建议使用 V2RayN,带有图形化界面,下载 V2RayN-Core.zip 解压,下载 V2RayN.zip 解压出的 .exe 文件放入刚刚的目录下。

目录应该与以下类似:

.
├── config.json
├── geoip.dat
├── geosite.dat
├── guiLogs
│   ├── 20190421.txt
│   ├── 20190422.txt
│   └── 20190423.txt
├── guiNConfig.json
├── pac.txt
├── readme.md
├── user-wininet.json
├── v2ctl.exe
├── v2ctl.exe.sig
├── v2ray.exe
├── v2ray.exe.sig
├── v2rayN.exe
├── wv2ray.exe
└── wv2ray.exe.sig

客户端配置

Linux

格式与服务端一致,你需要修改的仅有 address 和 id 部分:address 填写服务端的 IPv6 地址;id 需与服务端一致。

{
  "log": {
    "loglevel": "warning",
    "access": "/var/log/v2ray/access.log",
    "error": "/var/log/v2ray/error.log"
  },
  "inbounds": [{
    "port": 1081,
    "listen": "127.0.0.1",
    "protocol": "socks",
    "settings": {
      "netword": "udp"
    }
  }],
  "outbounds": [{
    "protocol": "vmess",
    "settings": {
      "vnext": [{
        "address": "xxxx:xxxx:xxxx::xxxx",
        "port": 10086,
        "users": [
          {
            "id": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
            "alterId": 4
          }
        ]
      }]
    }
  },{
    "protocol": "freedom",
    "tag": "direct",
    "settings": {}
  }]
}

这时,打开网络代理,填入:

注意,这里一定要选择手动代理模式,不能使用 PAC/自动模式,因为我们的目的是要本地的所有流量都走代理。而 PAC 仅会当遇到被墙的 IP 时才会走代理。

Windows

双击 V2RayN.exe 后,点击右上角的添加 VMess 服务器

填入地址,端口,id 即可:

Windows 配置

Windows 配置

再将右下角的系统代理模式改为全局模式,道理同 Linux 类似:

这样,不出意外的话,就已经成功了,你的仅支持 IPv6 的电脑已经该可以通过代理来访问非 IPv6 的网站了。

连接测试

网速测试

正好手头最近入了一个原生支持 IPv6 的 VPS,贴一下与搬瓦工的对比,以下均在同一时段做的测试:

原生 IPv6

原生 IPv6

搬瓦工 + Tunnel Broker

搬瓦工 + Tunnel Broker

原生支持 IPv6 的机器可以直接观看 2K 视频并且不会出现卡顿现象(可以看到已经缓冲了一分钟了),而使用 Tunnel Broker 的就没这么好了,不仅连接速度只有三分之一,而且无法较为流畅的观看 2K 视频,时不时会出现卡顿。考虑到 YouTube 的线路优化已经很强了,国内的视频或者直播应当只能观看 720p(码率最好不要超过 3000)甚至更低了,而前者直播时蓝光 8M 无压力。

延迟与丢包测试

首先是搬瓦工的,经过了 15 个节点,教育网的入口和出口丢包率很高:

搬瓦工 + Tunnel Broker

搬瓦工 + Tunnel Broker

这是原生 IPv6 的,经过了 19 个节点,同样教育网的入口和出口丢包率较高(但还不是最高的):

原声 IPv6

原声 IPv6

可以看到其原生自带 IPv6 的主机其实也用的是 HE 的 IPv6 网络(前 13 个节点都一样),那么看来是返程的时候出问题了:

原生的 IPv6 返程

原生的 IPv6 返程

搬瓦工的返程

搬瓦工的返程

果然,问题出在返程上面,原生的 IPv6 并没有走 HE 的线路,丢包率为 0。而相比于浏览网页,在看视频时返程的网络状况会直接影响观看体验,这一点也确实在之前的网速测试中体现了。

所以,购买建议是:

如果你还没有购买 VPS 的话,建议购买原生自带 IPv6 连接的 VPS,使用体验会好很多,不过由于电脑是全局的代理,所以要注意 VPS 流量的使用哦~

最后附赠一个国内的 IPv6 电视网站:清华大学 IPTV

参考:

  1. 给搬瓦工 KVM 版 VPS 配置 IPv6 支持(基于 Linux CentOS 7)
  2. Project V 官方网站

本文标题: 高校生使用教育网的一点姿势
最后更新:2019 年 04 月 27 日 - 09:04
本文链接:https://blog.itswincer.com/posts/36b4c1ab/
本文采用:署名-非商业性使用-禁止演绎 4.0 国际 协议进行许可,阅读 相关说明