本页目录(12)
Shadowsocks:老牌轻量
Shadowsocks 诞生于 2012 年,原理是把流量加密后伪装成随机数据。优点是极其轻量、客户端支持最广、几乎所有机场都提供;缺点是流量特征「太随机」,在主动探测下可能被识别。新的 Shadowsocks 2022(AEAD-2022)修复了重放攻击等问题,抗封锁明显提升。
结论:日常够用、速度快,但不要把它当成唯一协议。
Trojan:伪装成 HTTPS
Trojan 的思路是「大隐隐于市」:流量就是标准的 TLS 握手 + HTTPS,主动探测时服务器会返回一个真实网页。因为和正常访问网站的流量几乎无法区分,抗封锁能力很强,也是目前机场普及率最高的协议之一。
结论:稳定主力,速度与 SS 相当,敏感时期表现好。
VLESS 与 Reality:伪装成别人的网站
VLESS 是 V2Ray/Xray 推出的无状态轻量协议,本身不加密,依赖 TLS 层。配合 Reality 后,服务器可以「借用」一个真实大站(如 microsoft.com)的 TLS 证书特征,探测者看到的是对那个网站的正常访问,无法证明代理存在。目前被认为是抗封锁最强的方案之一。
结论:敏感时期首选,速度快,需要较新的客户端(mihomo / sing-box / Xray 内核)。
Hysteria2:弱网暴力提速
Hysteria2 基于 QUIC(UDP),自带激进的拥塞控制:在丢包严重的线路上,TCP 协议会把速度降到几 Mbps,Hysteria2 仍能跑出几十上百 Mbps。代价是 UDP 流量容易被运营商限速或 QoS,而且对服务器带宽消耗大。
结论:晚高峰丢包高、下载大文件时非常好用;UDP 被限速时切回 Trojan。
怎么选:按场景一句话
| 场景 | 推荐协议 |
|---|---|
| 日常上网、看视频 | Trojan 或 Shadowsocks,让客户端自动选 |
| 敏感时期大面积失联 | VLESS Reality、AnyTLS |
| 晚高峰丢包严重、下载大文件 | Hysteria2 |
| 游戏、语音通话 | TUIC 或 IPLC 线路上的任意 TCP 协议 |
选机场时的协议标准很简单:Trojan / VLESS 至少有一个 + Hysteria2 作为备选,就足够应对绝大多数情况。可以在机场推荐榜单里用「协议」筛选器直接过滤。
四种协议一张表看完
上面分别介绍了四种协议,这里把关键差异放在一起,方便横向比较:
| 对比项 | Shadowsocks | Trojan | VLESS + Reality | Hysteria2 |
|---|---|---|---|---|
| 底层传输 | TCP(UDP 另行转发) | TCP + TLS | TCP + Reality(借用真实网站的 TLS 特征) | QUIC(UDP) |
| 流量看起来像 | 随机数据 | 访问一个 HTTPS 网站 | 访问某个知名大站 | QUIC 流量 |
| 抗封锁 | 中(2022 版更好) | 高 | 高 | 中,怕 UDP 限速 |
| 丢包线路上的速度 | 受 TCP 影响明显 | 受 TCP 影响明显 | 受 TCP 影响明显 | 最好 |
| 游戏、语音(UDP) | 视节点而定 | 协议内支持 | 视实现而定 | 原生支持 |
| 客户端门槛 | 最低,几乎都支持 | 低,几乎都支持 | 需新内核,部分客户端不支持 | 需新内核,部分客户端未确认 |
可以看出,前三种都跑在 TCP 上,区别主要在“伪装得像不像”;Hysteria2 则换了一条路,用 UDP 换取弱网下的速度。所以它们并不是互相替代的关系,而是互补:TCP 类协议负责稳,Hysteria2 负责在丢包时提速。
补充:TUIC 和 AnyTLS 两个“新面孔”
除了四大协议,机场订阅里越来越常见另外两种协议。它们的节点通常不多,但值得知道各自定位:
TUIC:另一种 QUIC 协议
和 Hysteria2 一样基于 QUIC、原生支持 UDP,延迟表现好。区别在拥塞控制:TUIC 用 BBR、Cubic 等常规算法,遇到丢包会按算法调整速度;Hysteria2 设置带宽后用 Brutal 主动对抗丢包。所以高丢包线路上 Hysteria2 更能扛,干净线路上两者差别不大,TUIC 对网络更温和。同样怕运营商限制 UDP。两者的详细对比见 Hysteria2 协议详解。
AnyTLS:更进一步的 TLS 伪装
外层和 Trojan 一样是标准 TLS,但协议内置了可由服务器下发的填充方案和强制的会话复用,专门削弱“TLS 里再套 TLS”的包长特征。思路接近 Trojan 的升级版,适合作为敏感时期的后备。它基于 TCP,UDP 通过 UDP over TCP 转发,不适合当游戏主力。原理和客户端版本要求见 AnyTLS 协议是什么。
VMess 也还能在不少订阅里看到。它是 V2Ray 的原生协议,能用,但在抗封锁和性能上已被 VLESS、Trojan 取代,不必专门追求。
你的客户端支持哪些协议
协议再好,客户端不支持也用不上。常见客户端里,有几处“短板”值得提前知道:
- mihomo 系客户端(Clash Verge Rev、FlClash、Clash Meta for Android)、Shadowrocket、Stash、sing-box:上面提到的协议都支持,主要注意客户端版本不要太旧。
- Surge:官方手册没有列出 VLESS,VLESS Reality 节点无法使用,主力靠 Trojan、AnyTLS。
- Quantumult X:Hysteria2、TUIC 的支持未见官方说明,UDP 类节点不能指望。
- v2rayNG:TUIC、AnyTLS 的支持本站未确认,安卓上需要这两种协议时改用 mihomo 内核客户端。
完整的客户端 × 协议支持表和依据见按客户端选机场。如果订阅导入后某种协议的节点“消失了”,大多是客户端不认识这种协议,先升级客户端再说。
怎么知道一个节点用的是什么协议
要按协议切换,先得知道每个节点是什么协议。机场订阅里的节点名常常只写地区和编号,协议信息藏在参数里。几个查看办法:
- 看节点名或分组:不少机场会在节点名里加上“Hy2”“Reality”“Trojan”等后缀,或把不同协议分成不同的组,这是最直观的。
- 看客户端的节点详情:多数客户端在节点卡片或详情里显示类型,例如 Clash 系客户端会标出 trojan、vless、hysteria2 等字样;部分客户端需要先打开“显示节点细节”之类的选项。
- 用解析工具看整份订阅:想一次看清订阅里各协议各有多少个节点,可以用本站的订阅解析器,它在浏览器本地解析,不会把订阅链接发到别处。
知道了协议分布,也就能判断这家机场适不适合你:如果绝大多数节点都是同一种协议,一旦这种协议被集中干扰,就没有可切换的余地;Trojan、VLESS、Hysteria2 各有一定数量的机场,抗风险能力明显更好。
什么时候该切换协议
平时让客户端自动选择即可,出现下面这些情况时才需要手动介入。判断方法很简单:在同一地区里,分别挑不同协议的节点各试一次,对比结果。
| 现象 | 可能原因 | 换成 |
|---|---|---|
| 某种协议的节点集体超时,其他协议正常 | 这种协议正在被集中干扰 | VLESS Reality、Trojan 或 AnyTLS |
| 晚高峰 TCP 协议节点掉速严重 | 线路丢包率高 | Hysteria2 或 TUIC |
| Hysteria2 晚上比 Trojan 还慢,甚至断流 | 运营商限制境外 UDP | Trojan、VLESS |
| 游戏延迟忽高忽低 | UDP 被封装进 TCP 后丢包重传 | 原生 UDP 协议,或专线节点 |
| 只有 Shadowsocks 节点频繁断连 | 协议特征较明显,敏感时期易受影响 | 任意 TLS 类协议 |
如果所有协议都不行,问题就不在协议上,而在线路、本地网络或机场本身,按故障排查里的通用步骤处理。敏感时期的协议切换顺序,可以看敏感时期连不上怎么办。