直接答案
Hysteria2(常简称 hy2)是一种跑在 QUIC 之上的代理协议,底层走 UDP 而不是 TCP。它的特点是用可调的拥塞控制在丢包较多、跨境链路拥挤的环境里争取更高吞吐,因此在“线路一般但带宽充足”的场景下往往表现明显;代价是依赖 UDP,在对 UDP 限速或干扰较重的网络里可能不如 TCP 类协议稳定。
先打个比方:hy2 解决的是什么问题
把跨境网络想象成一条经常堵车、偶尔丢货的公路。传统的 TCP 协议像一位谨慎的司机:一发现丢包,就判断“路堵了”,主动把速度降下来,再一点点试探着加速。这种策略对公共网络很友好,但在丢包本身就比较频繁的国际链路上,TCP 会频繁“踩刹车”,实际速度远低于带宽上限。
Hysteria2 的思路不同:它把传输搬到 QUIC(一种基于 UDP 的传输协议,也是 HTTP/3 的底层)上,并允许使用更激进的拥塞控制。简单说,就是在你声明的带宽范围内,不因为少量丢包就大幅降速,而是通过重传把丢失的数据补回来。
Hysteria2 协议原理拆解
- 传输层:QUIC over UDP。QUIC 自带加密(基于 TLS 1.3)、多路复用和连接迁移,切换 Wi-Fi 与移动网络时连接更不容易断。
- 拥塞控制:Hysteria2 提供一种按预设带宽发送的模式(项目中称为 Brutal),也可以回退到 BBR 等常规算法。具体用哪种,取决于服务端与客户端的配置。
- 伪装:握手阶段模拟 HTTP/3 流量,未通过认证的访问会被当成普通网站请求处理。部分实现还提供可选的混淆(如 salamander),开启后流量不再像标准 QUIC。
- 认证:客户端用密码完成认证,服务端需要 TLS 证书;机场节点通常已配置好,用户侧导入订阅即可。
- 端口跳跃:服务端可以监听一段端口范围,客户端在其中轮换,用来减轻单一端口被限速的影响。是否启用由服务商决定。
Hysteria2 为什么快,又为什么有时慢
“hy2 更快”这句话只在特定条件下成立。它的优势主要体现在:链路丢包率偏高、带宽本身不小、晚高峰拥挤。在这些条件下,TCP 的保守策略吃亏最多,hy2 的差距就会拉开。
反过来,下面这些情况下 hy2 可能表现平平甚至更差:
- 本地运营商或校园网、公司网对 UDP 做了 QoS(限速或降低优先级);
- 所在网络直接屏蔽或丢弃大量 UDP 包;
- 节点使用的是专线类线路,本身丢包就低,TCP 类协议已经够用;
- 客户端声明的带宽远大于实际带宽,导致过度发送反而加剧拥塞。
怎么判断 hy2 节点适不适合你
| 你观察到的现象 | 可能的原因 | 建议 |
|---|---|---|
| hy2 节点速度明显高于同地区 TCP 节点 | 线路丢包较多,hy2 的拥塞控制发挥作用 | 可以把 hy2 作为主力节点 |
| hy2 节点能连上但速度忽高忽低 | 本地网络对 UDP 有周期性限速 | 换网络对比测试,或切回 TCP 类协议 |
| hy2 节点完全超时,其他协议正常 | UDP 被屏蔽,或客户端内核不支持 hy2 | 检查客户端内核版本,再换网络验证 |
| 家里宽带正常、手机流量下异常 | 不同网络对 UDP 的策略不同 | 按网络环境分组,自动选择节点 |
| 视频通话、游戏体验好于 TCP 节点 | QUIC 的连接迁移与 UDP 转发更友好 | 适合实时类应用 |
使用 hy2 节点的操作步骤
- 确认客户端支持:选择内核支持 Hysteria2 的客户端,例如基于 mihomo(Clash Meta)或 sing-box 内核的客户端;较旧的 Clash 内核无法解析 hy2 节点。
- 导入订阅:用机场提供的订阅导入;如果节点列表里看不到 hy2 节点,通常是客户端或订阅格式不兼容,而不是节点不存在。
- 同地区对比测试:在同一时段分别测试同地区的 hy2 节点与 TCP 类节点,至少覆盖白天和晚高峰两个时段。
- 按网络环境取舍:如果只在某个网络下异常,可以在客户端里为不同网络准备不同的节点分组,不必一刀切放弃 hy2。
注意事项
- hy2 的“快”依赖 UDP 通畅,任何宣传中的“绝对更快”都应当按你自己的网络环境验证。
- 激进的拥塞控制会占用更多带宽,在共享网络中可能影响同网络的其他设备。
- 协议只决定传输方式,线路质量、节点负载和出口 IP 仍然决定最终体验。部分机场资料显示同时提供 hy2 与 TCP 类协议,这种组合更便于根据网络切换。
- 使用任何网络工具都请遵守所在地法律法规。
Hysteria2 为什么在有些网络下反而更慢?
因为它基于 UDP。部分运营商或局域网会对大流量 UDP 做限速甚至丢弃,此时 hy2 的优势无法发挥,TCP 类协议可能更稳定。
hy2 节点需要什么客户端?
需要内核支持 Hysteria2 的客户端。常见的是基于 mihomo 或 sing-box 内核的客户端,旧版内核通常无法识别 hy2 节点。