Hysteria2被封还是被QoS限速?用对照测试自己判断,不靠猜

“Hysteria2 被封了吗”“被 QoS 了怎么办"是很多人搜的词,但官方文档没有给出判断方法,网上不少文章靠一句"UDP 被限速了"就下结论。你在客户端看到的只有"连不上"或者"很慢”,这两个现象背后至少有四种可能:配置问题、IP 被阻断、UDP 被限速、线路本身拥塞。

这篇不给"你被封了"的结论,而是给一套自己能做的对照测试,按结果缩小范围。下面的测试方法是通用的网络排查思路,不是官方步骤;每种结果能推出什么、推不出什么,我都标出来了。

第一步:先排除配置,这一步最容易漏

绝大多数"被封"其实是配置问题。先按顺序确认,别跳过:

  1. 服务端在运行,并且监听 UDP 端口:systemctl status hysteria-server、ss -ulnp。
  2. 系统防火墙和服务商安全组都放行了 UDP,只放 TCP 是最常见的原因。
  3. 客户端地址、端口、密码、SNI、混淆设置和服务端一致。

这三条的完整清单在timeout 报错排查里。另外,报认证错误或证书错误,说明握手已经完成,UDP 是通的,根本不是被封,先去查密码和证书。只有一直 timeout,才继续往下做。

第二步:服务器 IP 本身还通不通

在你本地电脑上:

1
2
ping 服务器IP
mtr -rwzbc 100 服务器IP

再测一个 TCP 端口,比如 SSH 的 22 端口,或者服务器上随便开一个。nc -zv 服务器IP 22 就能测。

结果 能推出什么
ping 通、TCP 通 IP 没有被整体阻断,问题更可能在 UDP 或配置
ping 不通、TCP 也不通 很可能是你这个网络到这个 IP 不通,也可能是服务器宕机或服务商防火墙,需要第三步确认
ping 不通、TCP 通 常见情况是服务器或服务商禁了 ICMP,不代表被封

mtr 能看到哪一跳开始丢包,但中间某一跳显示丢包不等于有问题,很多路由器对探测包限速,要看最后一跳。

第三步:换个网络测同一台服务器

这是区分"阻断"和"服务器本身有问题"的关键:

  • 用手机流量、另一家运营商的宽带,或者另一台在不同网络里的机器,测同一个 IP 的 TCP 端口。
  • 别的网络通、你这个网络不通:更像是你这个网络到这台服务器的路径被阻断。
  • 所有网络都不通:先怀疑服务器、服务商防火墙或者 IP 被服务商处理,而不是网络层的封锁。

第四步:单独测 UDP,并和 TCP 对比

想知道"UDP 是不是比 TCP 差",用 iperf3,它的 UDP 模式会直接报丢包率。服务器上:

1
iperf3 -s

先放行 iperf3 默认的 5201 端口,TCP 和 UDP 都要,测完记得关掉。本地:

1
2
3
iperf3 -c 服务器IP -t 20            # TCP
iperf3 -c 服务器IP -u -b 20M -t 20 # UDP,发送速率20Mbps
iperf3 -c 服务器IP -u -b 20M -t 20 -R # UDP,反方向,测下行
  • -b 是 UDP 的发送速率,从你预期用到的速度开始,别一上来就填满线路。
  • 看输出里的丢包率(Lost/Total)和抖动(Jitter)。
  • UDP 丢包率明显高于 TCP 的重传表现,并且服务端配置没问题,说明这条路对 UDP 不友好。这是支持"UDP 被限制或限速"的证据,但你看不到运营商策略,所以只是推断。
  • 完全收不到 UDP 包而 TCP 正常,是 UDP 被整体阻断的典型表现。

下行方向很重要:很多人只感觉"下载慢",上下行可能差别很大。

第五步:换时段,再对照一次

把第四步在高峰期(晚上)和凌晨各做几次:

现象 倾向
高峰期丢包高、凌晨正常 线路拥塞或高峰期限速,并非持续阻断
任何时段都完全不通 阻断,或服务器侧问题
刚开始快,跑一阵子(比如几十秒到几分钟)后掉下来 值得怀疑有流量层面的限速,但要同时排除 bandwidth 填得过大

最后一条要特别小心:官方明确提醒 bandwidth 不要超过线路真实能力,否则会造成拥塞、连接不稳定,这个现象和"被 QoS"长得几乎一样。排查思路见速度慢怎么办,先把 bandwidth 调低或去掉再对比。

第六步:用 TCP 协议做最后的对照

同一台服务器、同一个时段,再开一个基于 TCP 的协议,比如 VLESS Reality,和 Hysteria2 各测一次:

  • TCP 协议正常、Hysteria2 不行:问题大概率在 UDP 这条路,不是服务器和线路整体坏了。
  • 两者都不行:先别怪 UDP,回头查服务器和线路。

这也是优点和缺点那篇说的稳妥做法:一台服务器同时开 UDP 和 TCP 协议,哪个稳用哪个。

判断之后怎么办

  • 只是特定端口不通:端口跳跃可能有用,见端口跳跃配置。但官方写明,它对 UDP 整体被限制没有帮助,这时要换成基于 TCP 的协议。
  • UDP 整体被限制或丢包严重:换 TCP 协议。
  • IP 被阻断:换 IP 或者换服务器。能不能换 IP、怎么换,取决于服务商的规则,这篇不展开。
  • 只是高峰期变慢:调低 bandwidth,或者避开高峰,不要急着换协议。

这篇的局限

  • 上面所有"推出什么"都是从测试结果倒推的推断,运营商是否在限速、限速规则是什么,从外面看不到,我也没有可靠的资料去断言。
  • iperf3 测的是你的网络到服务器这一段,和实际用 Hysteria2 访问外网的速度不是一回事,还会受服务器出口线路影响。
  • 我没有在你的网络里实测过,命令是通用用法,数值(如 20M)按你自己的线路调整。