先看总览
四种协议没有绝对的「最好」,只有「更适合当前网络环境」。总体上:
| 协议 | 核心思路 | 典型优势 | 典型短板 |
|---|---|---|---|
| Shadowsocks | 对称加密封装 TCP/UDP 流量 | 轻量、延迟低、生态成熟 | 流量特征相对固定,抗深度检测能力一般 |
| VMess | 基于 UUID 鉴权,可选 TLS 伪装 | 灵活可配、支持多种传输方式 | 配置字段较多,纯 TCP 无 TLS 时特征明显 |
| Trojan | 强制走标准 TLS,伪装成正常 HTTPS | 与真实网站流量高度相似,抗封锁能力强 | 依赖证书与域名,需要一定的部署门槛 |
| Hysteria2 | 基于 QUIC(UDP)的全新协议 | 弱网/高延迟下速度优势明显 | 部分网络环境对 UDP 限制较严,可用性不稳定 |
Shadowsocks:轻量老牌,胜在稳定
Shadowsocks 的实现足够简单,几乎所有平台都有成熟客户端支持,加解密开销很小,因此延迟表现一直不错。它的短板在于流量特征在长期使用中已经被广泛研究,在审查严格的网络环境下,单纯的 Shadowsocks 连接更容易被针对性识别,通常需要配合 obfs 一类的混淆插件使用。
VMess:灵活,但配置负担更重
VMess 出现的初衷之一就是解决 Shadowsocks 的鉴权与特征问题,支持 WebSocket、mKCP 等多种传输层,也可以叠加 TLS。灵活性带来的代价是配置项明显变多——服务器地址、端口、UUID、alterId、加密方式、传输方式、TLS 相关参数都需要对应正确,任意一项和服务端不一致都会导致连接失败,排查成本比 Shadowsocks 高一些。
Trojan:伪装成普通网站,抗封锁能力强
Trojan 的设计思路很直接:强制使用标准 TLS,把代理流量伪装成用户在正常访问一个 HTTPS 网站,审查系统很难仅凭流量特征把它和真实网站区分开。代价是部署门槛更高——需要一个真实域名和有效证书,sni 必须和证书域名保持一致,否则会被识别或直接连接失败。对终端用户而言,只要节点服务商已经处理好这些细节,使用体验和其他协议没有明显差异。
Hysteria2:新协议,弱网表现突出
Hysteria2 基于 QUIC(UDP)实现,天然自带前向纠错和拥塞控制优化,在丢包率较高、延迟较大的网络环境(比如国际长距离链路)下,实际体验往往比传统 TCP 类协议更流畅。需要注意的是部分公共网络、企业网络会限制或降级 UDP 流量,如果所在网络对 UDP 不友好,Hysteria2 的优势就发挥不出来,这种情况下换回 TCP 类协议(如 Trojan)通常更稳。
怎么选
- 网络审查压力大、需要长期稳定挂着用 —— 优先 Trojan;
- 追求配置灵活、需要自定义传输方式 —— 可以选 VMess;
- 只是想要一个简单轻量的方案,网络环境相对宽松 —— Shadowsocks 足够;
- 所在网络延迟高、丢包明显,且 UDP 没有被限制 —— 试试 Hysteria2,速度体验通常更好。
实际上很多订阅会同时提供多种协议的节点,没必要纠结「只用一种」,可以把它们混合编入同一个策略组,让客户端自动测速选择当前网络下表现最好的那一个。
混合使用比单选一种更实用
与其在四种协议里纠结出一个「唯一正确答案」,更贴近实际使用的做法是把它们当成同一个工具箱里的不同选项。比较成熟的订阅服务商往往会同时提供多种协议的节点,客户端侧完全可以把它们混合放进同一个 url-test 策略组,让测速机制自动挑出当前网络环境下延迟最低、最稳定的那一个,不需要用户手动判断该切换到哪种协议。
如果所在网络环境经常发生变化(比如白天在公司、晚上在家、周末在外面用移动网络),混合编组的意义会更明显:不同网络对协议的友好程度不一样,公司网络可能对 UDP 限制严格,Hysteria2 表现就会打折扣,而移动网络往往对标准 TLS 流量(Trojan)更宽松。让客户端自动测速切换,比人工判断更省心,也更不容易出现「换了环境忘记切换导致连不上」的情况。
更换协议的实际成本
不同协议之间切换,本质上只是换一份节点信息,不涉及规则、策略组、DNS 这些逻辑层面的配置,因此成本远比听起来低。多数情况下只需要在客户端里更新订阅(服务商如果同时提供多协议节点,通常会打包在同一份订阅里),或者手动替换 proxies 列表中的节点字段即可,策略组和规则可以完全保持不变。真正需要谨慎测试的,反而是切换后节点本身的稳定性和速度,而不是协议本身的兼容性问题。想看每种协议在 config.yaml 里具体怎么写,可以查看进阶配置文档的协议参数详解。
选好协议,接下来只差一步
下载 Clash 客户端,导入包含这些协议节点的订阅,混合编组、自动测速统统交给客户端处理。