Shadowsocks、Trojan、VLESS、Hysteria 2、TUIC 和 REALITY 怎么选
Shadowsocks、Trojan、VLESS 是机场订阅里最常见的三种协议,Hysteria 2、TUIC 和 REALITY 则是近年补充进来的新技术,设计思路各不相同,但对普通用户来说协议选择远没有想象中重要,本文说明原因与例外情况。
打开订阅的节点列表,常常能看到 ss、trojan、vless 几种前缀混在一起。好消息是:对绝大多数用户,这不是一道必须做对的选择题——但理解三者的思路,能帮你看懂客户端报错、判断该不该升级软件。
三种协议的设计思路
Shadowsocks(SS):诞生最早的轻量加密代理协议。思路是把流量加密成「看不出是什么」的随机数据,不模仿任何协议。实现简单、开销小,是许多机场的默认选择;现代实现(如采用 AEAD 加密的 Shadowsocks 2022 版本)修补了早期版本易被识别的弱点。
Trojan:思路与 SS 相反——与其不像任何东西,不如完全像 HTTPS。Trojan 跑在 443 端口的 TLS 连接里,从外部观察与访问一个普通网站几乎无异;代价是需要域名和证书配合,部署门槛略高。
VLESS:Xray 项目的传输协议,本身不做加密,把安全性交给外层的 TLS 或 REALITY(一种无需自有域名、借用真实网站握手特征的伪装技术),并可搭配 WebSocket、gRPC 等多种传输方式,是三者中组合最灵活的。
对比表
| 维度 | Shadowsocks | Trojan | VLESS(+REALITY) | Hysteria 2 / TUIC |
|---|---|---|---|---|
| 伪装思路 | 随机化流量、无特征 | 伪装成 HTTPS | 依赖 TLS,或用 REALITY 借用真实网站握手 | 基于 QUIC,运行在 UDP 上 |
| 性能开销 | 最小 | 有 TLS 握手开销 | 小(配 REALITY 表现好) | 抗丢包能力强,但依赖 UDP 通畅 |
| 部署门槛 | 低 | 需域名与证书 | REALITY 不需要自有域名,配置组合较复杂 | 中等,需较新内核支持 |
| 客户端兼容性 | 几乎全部支持 | 主流客户端支持 | 需较新的内核 | 需明确支持该协议的客户端,兼容面比前三者窄 |
性能与兼容性
日常使用中,三者的速度差异通常小于线路本身的差异——同一条线路上换协议,体验变化有限,线路的影响见直连、中转、IEPL 和 IPLC 的区别。更值得注意的是兼容性:Shadowsocks 几乎被所有客户端支持;VLESS 的新特性(REALITY、部分传输组合)需要基于 Xray 或 mihomo 内核的较新客户端,老旧软件可能直接忽略订阅里的这类节点。主流客户端对三者均有支持,安装配置可参考Clash Verge Rev 教程与Shadowrocket 导入订阅。
普通用户怎么选
实际情况是:协议由机场决定,用户很少需要亲自选。你要做的是确保客户端足够新、支持订阅里的全部协议,然后按延迟和稳定性挑节点即可。如果同一地区提供了多协议版本,各自试用几天、以实际体验为准,比纠结协议理论更有效。
延伸:Hysteria 2 与 TUIC
近年流行的 Hysteria 2 和 TUIC 走了另一条路:都基于 QUIC(运行在 UDP 上的新一代传输协议),通过更积极的拥塞控制在丢包严重的线路上抢回速度,弱网、移动网络环境下表现突出。两者思路接近,都属于“用 UDP 换抗丢包能力”这条路线,实际差异更多在具体实现细节而非设计理念——不需要纠结选哪个,同一订阅如果两种都有,各自测几天速度和稳定性即可。它们共同的限制是:部分网络环境(尤其是对 UDP/QUIC 流量限制较多的公司网络、部分公共 Wi-Fi)会影响连接效果,此时它们更适合作为 TCP 系协议(SS/Trojan/VLESS)的补充出现在订阅里,而不是唯一选择。
延伸:REALITY 是什么
REALITY 不是一个独立协议,而是搭配 VLESS 使用的一种伪装技术。它解决的问题和 Trojan 类似——让代理流量看起来像正常网站访问——但方式不同:Trojan 需要你自己准备域名和证书,REALITY 则是“借用”一个真实网站(如某个访问量大的公开站点)的 TLS 握手特征,不需要自购域名,部署门槛比 Trojan 更低,因此近两年被不少机场采用。使用 REALITY 节点同样要求客户端内核较新(基于 Xray 或兼容实现),老旧客户端可能无法识别这类节点。
下一步阅读
- 理解协议背后的整个体系:机场是什么。
常见问题
订阅里同一地区有多种协议的节点,选哪个?
优先按延迟与稳定性实测选择。日常体验差异通常不大,如果所在网络对某类流量干扰明显,可以切换协议各用几天对比。
为什么有些节点导入客户端后不显示?
大概率是客户端内核过旧,不支持该节点的协议或传输组合(例如 VLESS 加 REALITY,或 TUIC)。升级到较新的客户端版本通常可以解决。
Hysteria 2 比这三种协议更快吗?
在丢包严重的线路上它的抗性更好,速度提升可能明显;但在本身干净的线路上差别有限,且部分网络环境对 UDP 流量有限制或限速。
TUIC 和 Hysteria 2 有什么区别?
两者都基于 QUIC、都对高丢包网络有优化,思路接近,实际表现的差异更多体现在具体实现和调参上而非协议设计的根本不同。日常使用中,两者能否连接、速度如何,仍取决于你的网络环境是否对 UDP/QUIC 流量友好,建议实际测试对比而不是预设结论。
REALITY 是一种协议吗?
不是独立协议,是搭配 VLESS 使用的一种伪装技术——不需要自己购买域名和证书,而是借用一个真实网站的 TLS 握手特征来伪装。它解决的是 Trojan 式伪装门槛较高的问题,本质上仍是 VLESS 协议加一层特定的传输方式。