Skip to content

Latest commit

 

History

History
161 lines (92 loc) · 11.1 KB

fq-2019.md

File metadata and controls

161 lines (92 loc) · 11.1 KB

背景

本文首发与 2019.9.21,最后更新于 2019.11.2

两年之前写过一篇 爱国上网的教程,介绍了各种基础知识和工具使用,无背景的读者可以看下。其中部分工具在本文得到了更新。

如果觉得文章太长,可以直接参考使用我的解决方案后得到的效果,和几个服务的评测。

我的解决方案

我使用华硕路由器的梅林固件,通过在路由器上配置代理,做到对内网所有设备提供透明的科学上网服务。

ac88u 虽然看起来数字比 ac86u 高,但其实 CPU 很落后,5G 频道信号也不稳定,因此推荐买 ac86u,双十一价格不到 800.

路由器配置

首先安装科学上网插件。由于插件中心下架,所以需要自行下载 zip 包进行离线安装

由于我选择下文介绍的 IPLC 节点,配置相当稳定,所以没有使用服务订阅,而是手动导入了一些速度还不错的节点:

路由器上的科学上网,最重要的就是稳定。但任何节点都不可能永远稳定,好在服务商一次会提供很多节点可供选择,所以我们只要在节点宕机以后进行自动切换即可。我没有采用故障转移的方案,这种方案无法控制备用节点的范围,会导致可能切换到性能很差的节点。

我的解决方案是使用 Haproxy 进行自动恢复。Haproxy 是一个类似于 Nginx 的负载均衡服务。配置方式如下,我挑选了一个最稳定高速的节点作为主节点,以及一些性能和稳定性都不错的节点作为备用节点:

配置成功后,会自动生成一个 IP 地址为 0.0.0.0,端口 1181 的 SS 节点。好处是,可以一次性订阅很多节点,然后选择其中质量好的做为主、备用节点。

在路由器上,我还搭建了一个 socks5 代理:

首先需要填写 ss 服务的信息。由于上面我已经通过 haproxy 搭建了具备容灾功能的节点,这里就可以直接用上了,避免出现直接写服务商的节点可能导致的偶尔不可用问题。配置好后,就对外提供一个 14179 端口作为 socks5 代理,这样接入的电脑不再需要安装/启动 GoAgent/Clash 等软件,可以在需要科学上网的地方使用路由器的 socks5 代理,常见的有:

  1. Chrome 的 SwitchyOmega 插件:

  2. 终端需要科学上网时,使用 export ALL_PROXY=socks5://192.168.50.1:14179 即可。

总体来看,服务的结构大概是这样的:

效果展示

以下效果基于华硕路由器(硬件)、梅林(操作系统)、科学上网插件(软件)和 N3RO (科学上网服务提供商)实现

总结来看,这套方案配置下来,有以下特点:

  1. 路由器上的配置对接入路由器的所有设备透明,无需任何配置即可科学上网。
  2. 服务稳定,本身采用 IPLC 专线,国庆/大会期间无影响,再通过 haproxy 进行多节点容灾,几乎不会存在服务不可用的情况。
  3. 主要用香港节点,低延迟,高带宽。如果不是刻意观察,很难意识到自己在使用代理。
  4. 自动 + 手动调度流量,路由器上默认根据域名黑名单或者 IP 地址,使用代理服务访问被墙的网站。通过 socks5 代理,支持浏览器上手动细化调整规则。

比如以搜索 Golang 为例,下面分别是我百度和 Google 的搜索耗时:

下面是百度的:

对比谷歌的:

可以看到两者差距不到 100ms,基本上无法感知,从而实现了对百度的替换。

服务评测

  1. 自己购买 VPS 并搭建服务,有一定技术成本并且容易造成资源浪费。相比之下,直接购买服务,可以以更低的价格获得更高的配置。
  2. 按流量付费是比较合理的策略,可以让用户得到非常好的网络服务。由于国内流量是直接转发,并不会走科学上网,大部分人对流量的需求其实远低于预期,以我自己使用的观察来看,一个月 30G 流量就足够,60G 流量基本上是绰绰有余了。

在踩(浪)了(废)好多坑(钱)以后,我总结了几个还不错的服务推荐出来:

  1. N3RO 是我购买了众多服务并多方比较以后,最后发现性能和稳定性比较好,价格也比较适中,因此重点推荐一下。
  2. JustMySocks 是搬瓦工推出的服务,使用了 ShadowSocks 服务,解决了 IP 容易被封的问题,且使用 CN2 GIA 专线,速度很快。
  3. Duang Cloud:使用了新的 v2ray 协议,支持节点订阅,技术更加先进,但配置方式几乎不变。价格比第一种方案便宜,但胜在节点多,而且即使在敏感时期也不受任何影响。

N3RO

N3RO 主打高速稳定,非常壕无人性的提供了 44 条 IPLC 节点,提供服务国家&地区包括香港、日本、韩国、新加坡、美国、德国、台湾。

说到 IPLC,也是我在这次调研过程中新发现的东西。全名叫:国际私人租赁线路(International Private Leased Circuit),最大的特点就是:不经过 GFW,所以稳定高速。唯一的缺点就是:贵!

以 “IPLC 京港 01” 这条线路为例演示下:

可以看到虽然相比于直连服务器,中间经过了一次北京服务器中转,但北京的中转服务器到手机连接速度非常快(我在北京,其他地方可以通过深圳、上海、杭州等地接入),且和香港服务器之间通过专有网络连接,高速稳定且没有 GFW。

90% 以上的 IPLC 通过阿里云内网专线实现,很少有人真的租公网专线,那个价格一般人用不起

一般的 IPLC 专线价格在每 GB 0.5~2 元,N3RO 的价格还是很有优势的:

套餐名称 每月流量 每月价格 优惠后年费价格
小包 32G ¥16 ¥132
中包 70G ¥28 ¥231
大包 120G ¥40 ¥312
大大包 320G 80 ¥624

年费计算价格 = 原价 * 年费优惠(0.9)* 特殊优惠码(0.85) 特殊优惠码:海螺钻进垃圾桶

对于正常用户来说,购买中包年费套餐,算下来每月不到 20 元。如果对速度和稳定性没有很高的要求,但是需要大量流量,可以看下下面 JustMySocks 的方案。

JustMySocks

JustMySocks 是搬瓦工官方提供的服务,质量有保障,且提供了 CN2 GIA/GT 专线,同时支持联通、移动、电信三大运营商。

我实测从国内访问美国,延迟可以控制在 200ms 内,甚至达到 150ms。

JustMySocks 最大的创新在于,它会直接向用户提供五个 HTTP 地址,用户不需要关心 IP 被封的问题。 因为即使 IP 被封,服务商也可以通过 DNS 实时的更新 IP 地址,从而实现对用户透明。

JustMySocks 有三种套餐,区别如下:

每月流量 最大带宽 最多同时在线设备数 每月价格 优惠后年付价格 购买地址
100G 1 Gbps 3 $2.88 $27.38 购买
500G 2.5 Gbps 5 $5.88 $55.82 购买
1000G 2.5 Gbps 无限制 $9.88 $93.74 购买

和搬瓦工不同的是,由于不用担心封 IP 的问题,我更推荐选择年付,价格是月付的十倍,相当于买 10 个月送两个月,还可以使用优惠码 JMS9272283 优惠 5.2%。

考虑到应该没有人买最高的配置,且最低配置的性价比非常高,因此每年只要 $27 就可以拥有一个简单、稳定、高速、好用的科学上网服务,还是比较推荐的。

Duang Cloud

Duang Cloud 是我最近发现的,基于 v2ray 的科学上网工具。

这个工具,其实是一些列协议的汇总,其中有一个叫 VMess 的协议,才是 v2ray 最新独创的,它的诞生目的就是为了对抗 GFW 基于深度学习的 ShadowSocks 流量监测。

简单来说就是,这个协议下的数据传输,特征更不明显,更加不容易被识别,因此也就更不容易受到 GFW 的影响。比如 v2ray 支持 HTTP 伪装CDN 中转 等各种高级操作,大大增强了安全性。

介绍完 v2ray 的优点,我们来看下服务商提供的套餐:

套餐名称 每月流量 最大带宽 每月价格 优惠后年费价格 购买地址
Mini 60G 200 Mbps ¥15 ¥162 购买
Basic 150G 200 Mbps ¥28 ¥259.2 购买
Pro 300G 200 Mbps ¥43 ¥464.40 购买

还有一个按使用量付费的套餐,就不多介绍了,个人觉得年费 ¥162 和 ¥260 的套餐,都是很推荐的,上述价格是使用优惠码 hunterx.xyz 后的价格。对于大部分人来说,200 Mbps 的贷款应该是足够的。

总的来说,V2Ray 是未来的趋势,iOS 系统的 小火箭(ShadowRocket)、Quantumult 等 APP 也已经跟进支持了,具体操作可以看下服务商的文档。不过由于路由器固件对于容灾和 socks 的代理支持不是很好,我暂时没有选择这种方案,希望未来能够切换过来。

服务比较

需要说明的是,不同的测速方案会得出不同的结果,不具备横向比较的意义。

尤其是基于 ICMP (也就是 ping 命令)和 TCP 的测速,一方面受到中转策略的影响,一方面不是完全模拟日常上网,所以准确度和可信度都不高。

比如以京港 IPLC 为例,北京联通到北京服务器的延迟完全可以做到 10ms 以内,但是数据必须经过京港专线,两地的往返距离即使是光速也超过 10ms

由于不同时间测速结果不同,所以使用同一个测速服务,纵向比较各个服务商的节点即可。我使用 Quantumult 进行测速,尽量模拟真实使用场景。也可以看得很多 ping 值很低的节点,延迟其实很高。

我测试了几个手上常用的服务商的服务,可以看到 N3RO 确实远快于 DuangCloud(图中的 Mini)