本文面向已经拥有自己的服务商与配置、准备在 Shadowrocket(小火箭)中使用 Hysteria2 的用户。先区分 QUIC、UDP 与业务流量,再核对认证、证书和混淆参数,最后用固定条件测试连接。读完可判断问题发生在网络可达性、TLS、认证还是规则分流,而不是仅凭一次延迟测试更换协议。
Hysteria2 与 QUIC、UDP 的关系
Hysteria2 是基于 QUIC 的代理协议。QUIC 使用 UDP 承载数据,并在其上提供加密、可靠传输、拥塞控制和多路复用等机制。这里的“基于 UDP”描述的是客户端与服务端之间的外层传输,不表示网页请求都变成不可靠数据,也不表示用户只能访问 UDP 业务。
在 Shadowrocket 中选择 Hysteria2 后,被分流到该连接的 TCP 业务可通过 QUIC stream 转发;UDP 业务使用相应的报文转发机制。网页仍按原本的应用协议工作,用户不需要把浏览器改成 HTTP/3。服务端必须支持 Hysteria2,不能只因为地址和密码相同,就把其他协议的配置改成 Hysteria2。
端口号相同不代表传输相同。例如服务端监听 443/UDP,网络侧只放行 443/TCP 仍无法建立该连接。443 不是 Hysteria2 的强制端口;填写 8443 或其他端口时,客户端、服务端监听及防火墙放行项必须一致。
弱网表现与拥塞控制的边界
QUIC 的多路复用减少了不同 stream 之间因可靠传输排序而产生的队头阻塞:一个 stream 的数据需要重传时,另一个 stream 已收到的数据不必等待同一条 TCP 字节流补齐。不过,各 stream 仍共享路径带宽和拥塞控制,持续丢包、无线信号差或上行拥塞依然会影响全部业务。
Hysteria2 的拥塞控制思路包含基于带宽估计的 Brutal,以及可协商的 BBR。实际采用什么方式,取决于客户端实现、配置和服务端协商。Brutal 需要合理的带宽参数,并结合丢包反馈控制发送;它不能创造额外带宽,也不能绕过网络对 UDP 的限制。
- 随机丢包或时延波动:可以用已有 Hysteria2 配置做对照测试,观察网页完成时间和长连接稳定性,而不是预先认定一定更快。
- UDP 被丢弃或严格限速:常见现象是持续握手超时,或开始传输后吞吐量很低。此时增加带宽参数通常不能解决根因。
- 上行已被占满:上传会挤占确认与控制报文所需的发送空间,表现可能是下载也变慢。先暂停其他上传再测试。
- 服务端出口受限:即使本地网络质量良好,目标网站响应、远端负载和出口带宽也可能成为瓶颈。
结论:先确认 UDP 可达
若连续出现握手超时,先核对已有配置中的地址、UDP 端口与当前网络限制;只有连接可建立并能持续传输后,调整带宽参数才有诊断意义。
password、sni、obfs 分别控制什么
这些参数属于不同层次,不能互相替代。添加前应向自己的配置提供方确认完整参数;字段缺失时不要用另一个密码补齐。下表中的英文是配置字段名,Shadowrocket 表单可能以相应的标签展示;具体字段是否出现,以所选 Type 和实际界面为准。
| 参数 | 作用 | 核对要点 |
|---|---|---|
server | 连接的服务端域名或 IP 地址。 | 不要把完整分享链接或带路径的网页地址填入地址栏。 |
port | 服务端的 UDP 监听端口。 | 例如 443;必须与原配置一致,不因网页使用 HTTPS 就自行改成 443。 |
password | Hysteria2 服务端认证凭据。 | 保留大小写及符号;检查复制时是否带入首尾空格。 |
sni | TLS 握手使用的服务器名称,与证书名称核对相关。 | 通常为域名,不包含协议头、端口或路径;按已有配置填写。 |
obfs | 可选的传输混淆方式,例如 Salamander。 | 服务端启用时,两端须匹配;未启用时不要单方面开启。 |
obfs-password | 混淆使用的密钥。 | 与认证 password 是两项独立配置;混淆密钥错误可能导致握手阶段就失败。 |
up / down | 部分配置格式中的上传、下载带宽提示。 | 先核对单位与方向,不把测速结果中的 MB/s 直接当成 Mbps。 |
连接地址与 sni 可以不同。例如已有配置以 IP 地址连接,但使用证书覆盖的域名进行 TLS 名称核对。这不意味着可以随意填写一个知名网站的域名:证书链、证书名称和服务端配置必须对应。出现证书错误时,应检查 sni、设备时间和服务端证书状态,而不是直接关闭证书验证。
在 Shadowrocket 中添加并核对连接
以下步骤以 iPhone、iPad 的 Home 为起点,前提是用户已有合法可用的 Hysteria2 配置。若已有 Subscribe 条目,应先更新并检查导入结果;手工添加适合核对单个连接,不应与订阅管理的条目反复互相覆盖。
-
确认参数
准备服务端地址、UDP 端口、password、sni,以及服务端要求的 obfs 信息。确认配置明确属于 Hysteria2,而不是名称相似但不兼容的协议。
-
选择类型
进入 Home → 右上角“+” → Type,选择 Hysteria2。已有配置通过分享信息导入时,也要打开条目检查 Type,不能只看备注名称。
-
填写参数
按原配置填写地址、端口和认证字段;在相应 TLS 与混淆选项中核对 sni、证书验证和 obfs。首次测试保持原始带宽值,不同时修改多项设置。
-
保存并选中
保存后回到 Home,选中刚添加的条目。若 Config 中使用策略组,还需检查实际策略是否选择该条目,避免测试到另一个连接。
-
授权并测试
开启 Home 的连接开关,按系统提示确认 VPN 配置授权。先访问一个已知可用的 HTTPS 页面,再检查实际流量使用的策略与连接记录。
Settings → On Demand 管理按条件触发连接的行为,不负责修复 Hysteria2 参数。排查期间应记录它是否启用,避免自动连接造成“刚关闭又连接”的误判。Home 显示已连接也只说明本地 VPN 会话已建立,并不等于服务端认证、目标网站访问及所有规则路径都正常。
用 Global Routing 区分协议问题与分流问题
如果连接已开启但某个网站无法访问,先区分“连接本身失败”和“请求没有走到该连接”。Global Routing 中的 Config、Proxy、Direct 是路由姿态,不是三种 Hysteria2 参数。Scene 则按已设置的场景逻辑工作,排障前应确认当前场景的实际选择,避免把场景切换误认为协议波动。
Config
推荐日常使用已核对的 Config,按规则决定 DIRECT 或代理策略。检查命中的 DOMAIN-SUFFIX、IP-CIDR、GEOIP 及 FINAL,确认策略最终指向预期的 Hysteria2 连接。
适合:已有明确分流需求,且规则与策略组已核对的日常使用
Proxy
临时让由客户端接管的业务使用所选代理路径,用于减少 Config 分流带来的变量。它仍受系统流量接管范围和协议能力约束,不应解释为设备所有流量都必然经过同一路径。
适合:短时确认连接是否可用,隔离规则匹配问题
Direct
使用直连路径做基线对照。此姿态不能用于证明 Hysteria2 已经正常,因为测试请求并未经过该代理连接。
适合:检查本地网络及目标网站的直连表现
结论:Proxy 可用后再查规则
同一目标在 Proxy 下可用、在 Config 下失败时,保留连接参数,优先检查命中规则、策略组和 DNS 结果;不要同时更换 sni、obfs 与端口。
按失败阶段排查,不以单次延迟定结论
延迟测试取决于测试方式和目标,不能代表所有业务。一个测试值较低的连接,仍可能在大流量时受到 UDP 限速;一个测试超时的条目,也需要结合实际网页请求和连接记录判断。下表描述可观察现象,不是对某条线路的实测承诺。
| 现象 | 先查什么 | 下一步 |
|---|---|---|
| 持续握手超时 | 域名解析、UDP 端口、当前网络限制、obfs 是否匹配。 | 保持配置不变,在允许使用的另一网络重复同一请求,判断是否与接入网络相关。 |
| 出现证书相关错误 | sni、证书有效期、设备时间和信任链。 | 与自己的配置提供方核对证书对应域名,保留证书验证。 |
| 出现认证失败 | password 是否完整,认证信息是否仍有效。 | 重新复制原始凭据;不要用 obfs-password 替代。 |
| 小页面可用,大传输停顿 | UDP 限速、路径 MTU、丢包、服务端负载与带宽值。 | 先恢复原始带宽参数,暂停并行传输,再用相同目标复测。 |
| 只有部分网站失败 | 规则命中、策略组选择、DNS 结果和目标站状态。 | 临时用 Proxy 对照,确认是分流问题还是连接问题。 |
QUIC 路径需要支持至少 1200 字节的 UDP 载荷;某些隧道叠加或异常路径可能产生包长相关问题。不过,“页面打不开”本身不足以诊断 MTU。没有清楚的路径证据时,不要随意修改系统网络参数,也不要把 Hysteria2 当成 WireGuard 的 MTU 表单来处理。
保留一组可复核的测试记录
- 记录网络类型、所选条目、Global Routing 姿态,以及测试目标,避免不同条件的数据混在一起。
- 在同一网络下重复三次相同页面请求,分别观察握手是否成功、页面能否完成加载、连接是否中断;这是一种记录方法,不是性能指标。
- 每轮只修改一项参数。若调整带宽后恶化,恢复原值再验证,避免叠加修改后无法定位原因。
- 比较 Wi-Fi 与蜂窝网络时,保持配置和目标相同;结果不同说明接入路径有影响,但仍需进一步核对,不能直接断定某一设备故障。
- 分享排障记录前移除 password、obfs-password、完整分享信息及订阅凭据,只保留必要的错误类型和经过脱敏的参数关系。
Hysteria2 的适用条件是:服务端明确支持、UDP 路径可用、认证与 TLS 参数完整。弱网下是否更合适,应由可重复的访问结果决定。若当前路径限制 UDP,继续提高带宽值不是有效的优化方向;应先处理网络可达性,并使用用户已有、与该环境相容的配置。