Hysteria2是什么?什么时候该从Reality切过去
大多数人第一次听说 Hysteria2,是在某条线路连不上、被建议「换个协议试试」的时候。切过去有时候立刻好了,有时候反而更卡。这不是玄学——Hysteria2 和常见的 TCP 系协议(比如 Reality)解决的根本不是同一个问题,用错场景当然没效果。
这篇把三件事讲清楚:它到底是什么、什么时候该切、切完怎么确认真的生效了。
一句话定位:它换掉的是传输层,不是加密层
Hysteria2 是一个基于 QUIC 的代理协议,而 QUIC 跑在 UDP 上。这是它和绝大多数常见协议最根本的区别。
| TCP 系(Reality / VLESS / Trojan 等) | Hysteria2 | |
|---|---|---|
| 传输层 | TCP | QUIC over UDP |
| 加密 | TLS 1.3 | TLS 1.3(QUIC 内置) |
| 伪装思路 | 让流量看起来像在访问某个真实网站 | 让 UDP 包看起来不像已知代理协议(混淆) |
| 丢包时的表现 | 整条连接一起卡住 | 只有丢包的那个流受影响 |
| 拥塞控制 | 由操作系统内核决定 | 协议自己实现,可手动指定带宽 |
| 最怕遇到 | 针对 TLS 握手的主动探测 | 运营商对 UDP 的限速或丢弃 |
注意「加密」那一行两者是一样的——所以切协议不会让你变得更安全或更不安全,它改变的是数据包在网络里怎么走。
为什么要用 UDP:QUIC 解决了 TCP 的哪个毛病
TCP 有一个结构性问题叫队头阻塞:一个连接上的数据必须按顺序交付,中间丢了一个包,后面已经收到的包也得在缓冲区里等着重传补齐。浏览网页时一个页面往往要拉几十个资源,共用一条隧道,任何一个包丢了,其它资源的数据就全都卡在队列里。
这就是为什么在丢包线路上,代理表现出来的症状常常不是「慢」,而是一卡一卡的:测速跑得出数字,实际用起来一顿一顿。
QUIC 在一条连接里划分出多个独立的流,每个流单独做流控和重传,A 流丢包不会拖住 B 流。另外它用连接 ID 而不是「IP+端口」来标识连接,所以手机从 Wi-Fi 切到蜂窝、IP 变了,连接也不用重建。
还有一点对代理场景很关键:TCP 的拥塞控制是内核的,用户改不了;QUIC 跑在用户态,协议自己就能决定发包节奏。Hysteria2 因此可以让你直接填写线路的上下行带宽,按这个值恒定发送,而不是像 TCP 那样一遇到丢包就以为网络拥塞、主动把速度降下来。跨境线路上的丢包很多时候并不代表真的拥塞,TCP 的这套「谦让」逻辑反而会把速度压死。
代价也在这里:这套机制对网络其它使用者是不谦让的,带宽填得比实际大,只会让丢包更严重、速度更低。填错方向的人很多,这也是下面那个误区的来源。
什么时候该切过去
按实际症状对号入座,不要凭感觉切:
| 症状 | 该不该切 | 原因 |
|---|---|---|
| 能连上,但网页一卡一卡、视频频繁转圈 | 该切 | 典型丢包导致的队头阻塞,QUIC 的多流机制正对症 |
| 晚高峰速度断崖式下跌,凌晨恢复正常 | 可以试 | TCP 拥塞控制在丢包率升高时退让过度 |
| 主协议突然完全连不上,其它线路也一样 | 该切 | 传输层可能被整体干扰,换到 UDP 通道绕开 |
| 手机在 Wi-Fi 和流量之间切换时断流 | 该切 | QUIC 的连接迁移能力就是为这个设计的 |
| 延迟高但很稳定,不丢包 | 不用切 | 延迟由物理距离和路由决定,换协议改不了 |
| 完全连不上,且只有这一条线路有问题 | 不用切 | 先查线路本身,见下文 |
| 网页能开、就是下载速度低 | 先别切 | 可能是线路带宽或服务端限速,换协议帮不上 |
最后两种情况属于先诊断再动手。FunMeGo 的客户端里有分层自助诊断,会依次检测本地代理端口、线路配置、传输层握手、实际访问,直接告诉你断在哪一层,而不是笼统地报「连接失败」;确认是线路本身的问题,还可以一键自助修复,或者更换伪装域名。这些做完仍然不通,再考虑换协议才有意义。
什么时候反而不该切
有三种情况切了会更糟:
- 网络环境对 UDP 不友好。 部分校园网、公司网络、以及一些移动网络会对 UDP 限速甚至直接丢弃(因为 UDP 常被用于 P2P 下载)。这种环境下它会表现为「握手都完不成」或者「刚连上就断」,而同一条线路的 TCP 协议完全正常。
- 你需要的是抗主动探测,而不是抗丢包。 Reality 的价值在于借用真实网站的证书做伪装,让主动探测的结果和访问真实网站一模一样;QUIC 这一侧走的是另一条路——混淆加自定义证书。两者防的东西不同,别拿其中一个当另一个的升级版。
- 你已经在用移动数据且流量紧张。 QUIC 的恒定发包策略在丢包时会更积极地重传,流量消耗通常高于 TCP。
切过去之后,怎么确认真的生效了
切协议最怕的是「我以为我切了」。三步确认:
第一步,看协议是不是真的换了。 在 FunMeGo 的客户端里,主协议和备用协议是同一条线路上的两套入站,一键切换即可,不用重新申请线路,订阅地址也不变。安卓端还会为每条线路单独记住上次用的协议,下次连接自动沿用——好处是省事,坏处是你可能记错了当前到底在用哪个,切换前先看一眼界面上的状态。具体在客户端哪里切、切完界面上怎么看,可以参考 VPN客户端怎么设置分流:智能分流、自定义规则与路由日志。
第二步,用对的方法测。 判断协议换得值不值,看的不是最大速度,而是卡顿是否消失。测速数字本身有很多陷阱,怎么测才算准,可以看 VPN线路测速怎么判断准不准。更直接的办法是拿实际场景试:放一个高码率视频,看还会不会周期性转圈。
第三步,给它一点时间。 拥塞控制需要若干秒来收敛,切换后立刻测出来的数字往往偏低。连上后先正常用两三分钟再判断。
如果切过去之后反而更差,八成是上面「不该切」的第一种情况,切回主协议即可。主协议走 TCP、备用协议走 UDP/QUIC,两条通道在传输层上是物理隔离的,一边被干扰不影响另一边——这也正是保留两套协议的意义:不是为了让你挑一个更好的,而是为了在任何一条路被堵住时还有另一条。
一个很常见的误区:它不等于「更快」
网上流传最广的说法是「这是个加速协议,速度更快」。这句话的错误在于把协议的上限当成了线路的上限。
协议能做的只有一件事:让你更充分地用上线路本来就有的带宽。线路物理带宽 20Mbps,任何协议都跑不出 30Mbps。它在丢包线路上比 TCP 快,是因为 TCP 在那种环境下发挥不出应有的水平,不是因为 QUIC 凭空造出了带宽。
推论有两个,都很实用:
- 在优质低丢包线路上,两者的速度差距通常很小,甚至因为 UDP 被 QoS 而略慢。这种线路上没必要折腾。
- 如果两个协议都慢,那就不是协议的问题,该去查线路和本机环境了——具体排查顺序见 VPN速度很慢如何修复。
小结
把 Hysteria2 理解成「备用通道」而不是「加速器」,就不会用错:TCP 通道正常的时候没必要动它;一旦出现丢包卡顿、突发性不通、或者网络切换断流,它才是那个最该按的按钮。两套协议同时在线、一键互切、不用重新申请线路,这件事本身比哪个协议更快重要得多。
常见问题
Hysteria2 和 Reality 哪个更快?
没有固定答案,取决于线路质量。低丢包线路上两者差距很小,UDP 被运营商 QoS 时 TCP 系协议反而更快;丢包严重的线路上 QUIC 的多流机制才会拉开差距。按上文那张症状表对号入座判断,不要按"谁更新"判断。
切换协议需要重新申请线路吗?
不需要。两套协议是同一条线路上的两个独立入站,在客户端里一键切换即可,订阅地址不变,剩余时长和流量也不受影响。安卓端还会为每条线路单独记住上次用的协议,下次连接自动沿用。
主协议正常,Hysteria2 却连不上,是线路坏了吗?
多半不是。同一条线路上两套协议走的是完全独立的传输层,一边不通而另一边正常,最常见的原因是当前网络对 UDP 限速或直接丢弃——校园网、公司网络和部分移动网络都有这种策略。换个网络环境试一次就能确认,确认后切回主协议用即可。
换成 Hysteria2 会更安全吗?
不会,也不会更不安全。两者都用 TLS 1.3 加密,换协议改变的是数据包在网络里怎么走,不是加密强度。真正影响隐私的是日志策略和泄漏防护,那是另一个话题,见 VPN服务安全怎么判断:看协议、日志和泄漏防护。
它会更费流量吗?
通常会多一些。QUIC 的恒定发包策略在丢包时重传更积极,同样的浏览行为流量消耗一般高于 TCP。用移动数据且流量紧张时,这一点值得纳入考虑。