本文速览

Hysteria2 使用基于 UDP 的 QUIC 传输,适合评估高延迟、存在随机丢包但仍有可用带宽的链路。本文面向已经持有服务商配置资料的用户,依次说明传输机制、带宽参数、Shadowrocket 字段与排查顺序,帮助区分协议特性、网络限制和规则设置问题。

一、Hysteria2 与 QUIC:速度来自哪些机制

Hysteria2 是一种代理协议,不是线路套餐,也不是带宽加速开关。Shadowrocket(小火箭)作为客户端,使用用户已有的服务器地址、认证资料及传输参数建立连接。连接效果仍受本地网络、运营商路径、服务器负载和出口带宽共同影响。

QUIC 在 UDP 之上实现加密、可靠传输、流量控制和拥塞控制。这里的 UDP 不等于“所有内容都不重传”:Hysteria2 代理 TCP 连接时,可靠性由 QUIC stream 提供;代理 UDP 数据报时,则使用不同的传输语义,不能把两者混为一谈。

UDP
外层传输,网络必须允许到达服务器对应 UDP 端口
TLS 1.3
QUIC 集成的加密握手机制,仍需验证服务器身份
443/UDP
可用的部署示例,不是固定端口;以已有资料为准

传统单条 TCP 连接内的有序交付,会让后续数据等待丢失的数据补齐。QUIC 把不同 stream 的交付分开,一个 stream 的丢包不必阻塞其他 stream 的有序交付。但同一 stream 内仍然需要等待缺失数据,而且不同 stream 依旧共享链路容量与拥塞状态。因此,“使用 QUIC 就完全没有队头阻塞”并不准确。

QUIC 的握手设计也可以减少部分连接建立开销,但首次连接、会话恢复和实际网络路径的条件不同。不能把理论握手优势直接换算成固定的网页提速比例,更不能把一次连接延迟当作持续下载速度。

二、拥塞控制与带宽参数:不是填得越大越快

丢包可能来自无线干扰,也可能来自队列拥塞。两种原因在客户端都可能表现为丢失数据,但适合的发送行为不同。Hysteria2 的一个重要特征,是可使用带宽目标驱动的 Brutal 拥塞控制;协议也存在带宽协商与其他拥塞控制路径,并非所有连接都固定按同一种方式发送。

在启用相应带宽配置的连接中,发送侧会结合目标速率和丢包情况调整发送。对于存在随机丢包的链路,这可能比把每次丢包都当成拥塞信号更充分地利用可用带宽;如果链路已经拥堵,过高目标反而会增加排队、重传和其他业务的延迟。

结论:先记录空闲延迟,再调整带宽

使用同一个已有服务器测试持续传输,同时观察网页响应或交互延迟。如果下载期间交互明显变慢,先降低带宽目标并复测,而不是继续提高数值;每次只改一个参数,保留原值用于恢复。

三、适用场景:移动网络、高丢包与电量取舍

移动网络的信号波动、基站负载变化和无线重传,会使可用带宽不断变化。Hysteria2 在允许 UDP、存在随机丢包且仍有剩余容量的环境中值得测试;在 UDP 被阻断、被严格限速或网络要求登录认证时,协议本身不能绕过这些连接前提。

从 Wi-Fi 切换到蜂窝网络时,QUIC 的连接标识与路径验证机制可以帮助处理地址变化,但具体能否维持会话还取决于实现、系统网络状态及服务端支持。实际使用中仍可能重新连接,不应把“支持 QUIC”理解为所有应用会话都不会中断。

电量消耗需要结合任务判断。加密处理、用户态传输处理、丢包重传以及持续无线发送,都可能增加处理器和无线模块工作量;反过来,若任务更快完成,也可能缩短活跃时间。因此不能笼统断言 Hysteria2 一定更耗电或更省电。可在相同网络、相近屏幕亮度和相同文件大小下比较完成时间、温升与系统电池记录。

四、Shadowrocket 配置字段与填写依据

在 Shadowrocket 中,Home 用于选择连接及查看连接状态,Config 管理规则配置,Settings 管理应用设置。手动填写前,先确认已有资料确实属于 Hysteria2;不要把 Hysteria 的旧配置直接视为可互换配置。字段是否显示、如何分组会随平台界面而异,下面列出需要核对的参数含义。

字段或参数核对内容常见误区
Type选择 Hysteria2,与已有服务资料的协议类型一致。仅更换类型,却沿用另一种协议的认证字段。
Server填写服务器域名或 IP 地址,不包含网页路径。把整个订阅 URL 填入服务器地址栏。
Port填写服务端实际监听的 UDP 端口,例如资料明确指定的 443。看到 HTTPS 常用 443,就擅自修改已有端口。
Password使用服务商提供的完整认证值,保留大小写和必要符号。把认证值中的一部分误当作备注而删掉。
SNI使用已有资料指定、与服务器证书及部署对应的名称。随意填写一个网站域名,以为会自动改变线路。
Upload / Download按字段单位及服务端要求设置,区分上传与下载方向。混用 Mbps 与 MB/s,或把数值直接设为无限大。
Obfs仅当服务端启用并提供对应参数时配置;如使用 salamander,两端类型及密钥需一致。单独启用客户端混淆,却没有匹配的服务端设置。

TLS 验证用于确认连接的服务器身份。使用 IP 地址连接、证书却签发给域名时,应先核对正确的 SNI 与证书链,而不是把关闭证书验证当作常规修复步骤。认证失败、证书错误和 UDP 不通是不同问题,修改密码无法解决端口被阻断的问题。

五、从已有资料导入并完成首次验证

优先使用用户已有且了解用途的配置资料。本站不提供、不销售、不推荐节点或订阅。订阅 URL 是配置更新入口,不是服务器地址;例如 https://example.com/sub?token=xxxx 只是说明格式的假值,不可用于连接。链接中的认证信息应视为凭据,不要公开截图或粘贴到公开讨论中。

  1. 核对资料

    确认协议为 Hysteria2,记录 Server、Port、认证值、SNI,以及是否启用 Obfs。若资料没有说明带宽单位,先向已有服务商核对。

  2. 添加连接

    手动添加时,从 Home → 右上角「+」进入 Add Server,在 Type 选择 Hysteria2,再逐项填写;若使用已有订阅,则按其导入说明选择 Subscribe,不把订阅 URL 填进 Server。

  3. 选择并连接

    保存后回到 Home,选择刚添加的项目并开启连接。系统请求 VPN 配置许可时,核对应用名称后确认,再观察是否成功建立连接。

  4. 确认路由

    在 Global Routing 核对当前为 Config、Proxy、Direct 还是 Scene。首次排查可临时使用 Proxy 测试,再恢复日常配置,避免请求实际走 Direct 却被误判为协议故障。

  5. 复测与恢复

    分别检查网页打开、持续传输和短时交互。若需要手动控制测试时段,到 Settings → On Demand 核对触发条件,避免自动连接行为干扰观察;测试后恢复原有设置。

通过订阅导入的项目,更新后字段可能随来源改变。手动修改之前记录原值;更新以后重新核对 SNI、端口和带宽参数。不要只看列表中仍有同名项目,就认定配置内容没有变化。

六、Global Routing 对比:区分协议与规则问题

协议负责“怎样与服务器传输”,路由姿态负责“请求交给谁处理”。Hysteria2 已连接,不代表每个请求都会交给它。以下对比只用于解释 Shadowrocket 自身的设置;日常使用哪种姿态,仍取决于已有配置的规则与策略是否正确。

Config

推荐

按当前配置中的规则与策略处理请求。命中 DIRECT 的请求直连,命中代理策略的请求才进入对应代理路径;并非所有未命中请求都默认直连。

适合:规则已经核对完成后的日常分流。

Proxy

让受应用接管的请求按代理姿态处理,用于暂时排除配置规则的影响。系统流量接管边界与必要排除项仍可能存在,不等于设备每一个数据包都必然经过同一服务器。

适合:短时验证所选 Hysteria2 连接能否承载请求。

Direct

按直连姿态处理请求,不适合拿来验证代理服务器的吞吐。Direct 能打开网页,只说明当前直连路径可以访问该目标。

适合:与代理路径进行有明确目标的连通性对照。

Scene

按已经设置的场景条件决定路由行为。它不是另一种传输协议,判断结果时需要同时核对当前网络与场景设置。

适合:已经配置并验证过按网络环境切换行为的使用方式。

在 Config 中,DOMAIN-SUFFIX 匹配域名后缀,IP-CIDR 匹配地址网段,GEOIP 按 IP 地理数据库匹配,FINAL 为前面规则未匹配的请求指定最终策略。规则顺序会改变命中结果;看到速度与预期不一致时,应先查实际命中的策略,再调整 Hysteria2 参数。

七、连接超时、认证失败与速度波动的排查顺序

排查时先处理建立连接的问题,再处理请求路由,最后优化速度。不断同时修改端口、SNI、密码和带宽会丢失对照条件。下面列出可观察的现象与检查方向,它们是诊断线索,不是虚构的实测成绩,也不能仅凭单个现象就确定故障原因。

结论:保留一组可重复的测试条件

固定服务器、目标文件和 Global Routing,每轮只更改一个字段,并记录连接结果、完成时间与交互表现。能够稳定重复的改善,才适合作为保留配置的依据;一次峰值不能说明所有网络环境都更快。

获取 Shadowrocket 与查看配置教程

iPhone / iPad 版在 App Store 一次性付费 $2.99,Mac(Apple 芯片 / Intel)/ Windows / 安卓 / Linux 版免费。iPhone / iPad 系统要求以 App Store 页面标注为准,开发者为 Shadow Launch Technology Limited。前往全平台下载页按设备获取客户端,再按教程导入你已有的资料。

客户端买断 ≠ 线路套餐。Shadowrocket 是闭源商业应用,客户端的获取费用与已有服务商的线路费用分别计算。