Shadowrocket(小火箭)可配置 Shadowsocks、VMess、VLESS、Trojan、WireGuard、Hysteria2 等协议。本文适合已经持有自己的服务端参数或订阅、需要判断 Type 与字段如何对应的用户;先用对照表辨认协议,再按 Home →「+」→ Add Server 核对设置,最后区分协议、传输方式与 Global Routing 的作用。本文不提供服务端资源,列举的六种协议也不是应用全部类型的清单。
一分钟速览:六种协议分别核对什么?
优先选择与已有服务端一致的协议,而不是凭名称选择“更快”的类型。在 Home →「+」打开 Add Server,再进入 Type 查看当前应用可选类型;下面的协议名称用于辨认,具体字段与可用选项以当前界面为准。
| 协议 | 设计特点 | 优先核对的参数 |
|---|---|---|
| Shadowsocks | 以共享密钥和指定加密方法建立代理连接。 | Address、Port、Method、Password;如有额外混淆设置也需一致。 |
| VMess | 使用用户标识进行认证,传输设置需与服务端配套。 | Address、Port、UUID、加密设置,以及 TLS、传输方式。 |
| VLESS | 使用 UUID 认证,协议本身不提供内容加密。 | UUID、传输方式及配套安全设置;不能只填 UUID 就视为配置完整。 |
| Trojan | 使用 Password 认证,通常通过 TLS 保护连接。 | Password、Port、TLS 与证书对应的服务器名称。 |
| WireGuard | 使用密钥对建立基于 UDP 的加密隧道。 | 客户端 Private Key、对端 Public Key、Endpoint、隧道地址及路由范围。 |
| Hysteria2 | 基于 QUIC,底层依赖 UDP,使用 TLS 与认证参数。 | Address、UDP 端口、认证信息、服务器名称,以及服务端要求的额外参数。 |
结论:先匹配服务端,再比较连接表现
先逐项核对 Type、Address、Port 和认证信息;只有这些参数一致,后续对比延迟或网页加载才有意义。不要把同一地址随意改成另一种 Type 来尝试提速。
Shadowsocks、VMess 与 VLESS:认证字段不能互换
这三种协议的主要区别不是名称长短,而是认证方式、安全设置与传输组合。在 Add Server 选择 Type 后,应按自己的原始配置填写对应字段;改换 Type 后保留下来的地址或端口,并不能保证其余参数仍然有效。
- Shadowsocks:Method 与 Password 必须同时匹配。即使 Address 和 Port 正确,Method 不一致也可能出现服务器可达但请求失败。不要因为密码看起来相同,就把不同加密方法当作等价选项。
- VMess:UUID 是用户标识,不是订阅网址,也不是普通登录密码。传输若使用 WebSocket,还要核对对应的 Host 与 Path;TLS 是否启用同样必须跟随服务端配置。出现认证失败时也应检查设备日期与时间是否准确。
- VLESS:UUID 正确不等于连接安全设置正确。VLESS 本身不提供内容加密,实际保护取决于搭配的安全层;需要核对当前界面支持的安全选项以及服务端要求,不能直接照搬 VMess 的加密字段。
WebSocket 不是与 VMess、VLESS 并列的认证协议,TLS 也不是新的服务器账号。在服务器编辑页中,应分别理解协议 Type、承载连接的传输方式、TLS 安全层三个部分;某一组合是否可用,取决于当前应用与服务端共同支持的配置。
Trojan、WireGuard 与 Hysteria2:安全参数与网络条件
这三种协议需要特别区分证书、密钥和底层网络条件。在 Add Server 中选定协议后,先完成对应认证,再处理 TLS 或隧道参数;连接问题不能一概归因于密码错误。
Trojan:Password 与 TLS 名称都要一致
Trojan 常用 TLS,但使用 443 端口不是协议成立的充分条件。若连接地址填写 IP,而证书签发给域名,需要按已有配置填写用于 TLS 校验的服务器名称;不要将证书错误简单处理为关闭证书校验。Address、TLS 服务器名称与 WebSocket Host 分属不同用途,不能看到一个域名就填入所有位置。
WireGuard:客户端私钥与对端公钥分开填写
WireGuard 使用密钥对,而不是 UUID 或 Password。客户端 Private Key 应保密,对端 Public Key 必须对应实际服务端;Endpoint 则指向对端地址和 UDP 端口。隧道地址、Allowed IPs 与 MTU 等参数也可能影响可达范围,应依照现有配置核对,而不是自行套用固定数值。
Hysteria2:先确认 UDP 路径可达
Hysteria2 基于 QUIC,需要网络允许相应 UDP 流量。即使某个 TCP 端口测试有响应,也不能证明同端口的 UDP 路径正常;若服务端配置了额外混淆或特定认证,客户端必须配套填写。Hysteria 与 Hysteria2 也不能仅凭相近名称当作可互换类型。
- 仅某个网络失败:保留服务器参数,分别在 Wi-Fi 与蜂窝网络测试同一目标,记录差异;这一现象可帮助缩小到网络路径,但不能单独证明协议被限制。
- 出现证书相关错误:核对系统时间、服务器名称与证书有效性,不要先删除 TLS 安全设置。
- 小请求可用、大页面停顿:同时检查丢包、路径 MTU 与服务端日志;不能只据此断定某种协议性能不足。
在 Add Server 里如何选择 Type 并保存?
手动添加应从已有的完整参数开始,不以猜测端口或随机切换 Type 代替配置。下面步骤以 iPhone、iPad 的 Home 入口为主;字段会随 Type 改变,只填写当前协议需要且已有明确来源的内容。
-
打开添加页
进入 Home → 右上角「+」,打开 Add Server。准备已有服务端的地址、端口、认证信息和传输说明,避免在多个来源之间拼接参数。
-
选择类型
进入 Type,选择与原配置相同的协议。若原配置标明 Hysteria2,就不要选择其他相近名称;界面未提供所需选项时,先核对 App Store 中的应用状态与该配置的兼容要求。
-
填写基础项
填写 Address 与 Port,再按协议填写 Password、UUID 或密钥。假设原配置明确给出 Port 为 8443,就填写 8443,不要因为启用了 TLS 就擅自改成 443。
-
核对附加项
按原配置检查 TLS、服务器名称及传输选项;若使用 WebSocket,核对 Host 与 Path。WireGuard 则检查隧道地址和对端参数,不要套用其他协议的字段。
-
保存并测试
保存后返回 Home,选择对应条目,再开启连接;首次出现系统 VPN 配置授权时按提示确认。结合 Connectivity Test 与实际网页访问核对结果,记录错误信息后再改一项参数重试。
订阅导入与手动添加的目的相同,但入口和维护方式不同。已有自己的订阅时,可从 Home →「+」→ Type → Subscribe 填入自己的订阅链接;订阅更新可能改变条目和字段,重要的手动调整应先记录。订阅网址包含访问凭据时,不要公开粘贴到截图或求助记录中。
协议与 Global Routing、On Demand 有什么区别?
协议决定怎样连接已配置的服务端,Global Routing 决定请求按哪种姿态处理,On Demand 则决定何时触发连接。排查时分别进入 Home → Global Routing、Config 与 Settings → On Demand 核对,不要把三类设置混为一谈。
| 设置项 | 作用 | 核对重点 |
|---|---|---|
| Add Server → Type | 确定服务器连接使用的协议。 | 与服务端认证、传输及安全参数一致。 |
| Global Routing → Proxy | 以代理姿态处理请求。 | 用于排查时仍需结合实际请求与连接记录判断,不能只看开关。 |
| Global Routing → Direct | 以直连姿态处理请求。 | 网页可打开不等于当前协议已成功承载该请求。 |
| Global Routing → Config | 按启用的配置规则处理请求。 | 到 Config 核对当前启用项,以及规则命中的策略。 |
| Global Routing → Scene | 按已配置的场景条件应用路由设置。 | 检查场景条件与实际生效设置,不把 Scene 当作一种协议。 |
| Settings → On Demand | 按所设条件触发连接。 | 不会替代服务器参数,也不负责逐条请求的规则匹配。 |
Config 中的 DOMAIN-SUFFIX、GEOIP、IP-CIDR 与 FINAL 是规则关键字,不是 Type 选项。例如 DOMAIN-SUFFIX,example.com,DIRECT 表示域名后缀匹配时使用 DIRECT;FINAL,DIRECT 是前面规则均未命中时的兜底策略。规则按顺序匹配,看到某个网页直连,应先确认命中规则,而不是立即更换协议。
常见问题:能导入、能测速,为什么仍然不能用?
导入成功只能说明内容被识别,不能证明认证有效、UDP 可达或网页请求使用了预期策略。先保留原始配置,再按参数、网络、模式与规则的顺序排查,避免同时修改多处造成结果无法比较。
同一个地址能直接从 VMess 改成 VLESS 吗?
不能仅改 Type 就认为完成转换。进入 Home → 对应条目编辑页,核对服务端是否另行提供 VLESS 的端口、UUID、传输和安全参数;只有服务端明确支持该组合时,才按新参数建立条目。
Hysteria2 测试不通,换成 443 就能好吗?
不能用换端口代替核对。先在条目编辑页确认服务端实际 UDP 端口,再用同一配置切换网络测试;443 只是端口号,填入一个未监听的端口不会建立连接,也不会自动改变网络对 UDP 的处理。
订阅刷新后为什么看起来多了不同协议?
同一订阅可以包含多个不同 Type 的条目。回到 Home 打开各条目编辑页,分别核对类型和参数;更新只是重新取得订阅内容,并不代表应用把一个协议转换成了另一个协议。测试时确认当前选中的是预期条目。
Connectivity Test 有结果就代表网页一定正常吗?
不代表。测试结果反映所选测试方法与目标的表现,不覆盖所有请求路径。继续在 Home → Global Routing 核对模式;使用 Config 时再核对启用规则,同时检查 DNS 解析与实际网页访问现象。
哪一种协议一定最快,适合直接照选?
没有脱离服务端与网络条件的固定答案。先保留同一测试网络、目标网页和大致时段,再比较可用配置的加载情况与稳定性;不要把不同地区服务端的一次测速差异直接归结为协议差异。