Shadowrocket 支持哪些协议:Shadowsocks、VMess、VLESS、Trojan、Hysteria2 一分钟看懂

逐一科普 Shadowsocks、VMess、VLESS、Trojan、HTTP/SOCKS5、WireGuard、Hysteria2 的定位和特点,并说明在 Add Server 中对应选哪个 Type。

本文速览

Shadowrocket(小火箭)支持多种服务器协议,但 Type 必须与服务端一致,不能仅修改名称就切换协议。本文以用户已有自己的服务商与订阅为前提,说明七类协议的用途、添加时需要核对的字段,以及如何区分协议错误、传输错误与规则错误。订阅链接和连接参数均从你的服务商处获取。

1. 支持哪些协议,Add Server 的 Type 怎么选

先确认服务端使用的协议,再在 Home → 右上角「+」→ Add Server → Type 中选择对应项。Shadowsocks、VMess、VLESS、Trojan、Hysteria2、WireGuard,以及 HTTP 与 SOCKS5 均属于本文讨论的支持范围;具体可选项与字段以设备上当前应用界面为准。

协议决定客户端与服务器如何握手、认证和传输数据。服务器地址与端口只是连接入口,不能据此推断协议。例如端口 443 可以承载不同服务,看到 443 不等于应该选 Trojan,也不等于已经启用了 TLS。

服务端协议Type 对应项主要核对内容
ShadowsocksShadowsocks地址、端口、加密方法、密码
VMessVMessUUID、加密设置、传输方式、TLS
VLESSVLESSUUID、传输方式、TLS 或对应安全参数
TrojanTrojan密码、端口、TLS、服务器名称
HTTP / HTTPSHTTP / HTTPS 对应项代理入口、认证方式、是否使用 TLS
SOCKS5Socks5 对应项地址、端口、用户名与密码、UDP 支持条件
WireGuardWireGuard本地私钥、对端公钥、端点、隧道地址
Hysteria2Hysteria2认证信息、UDP 端口、TLS、可选混淆参数

结论:按服务端参数选 Type

先导入已有订阅并查看生成的服务器类型;只有手动添加时才逐项填写。某项协议可用,不代表任意传输组合或扩展参数都能直接互换。

2. Shadowsocks、VMess 与 VLESS 的区别

Shadowsocks:密码与加密方法成对核对

Shadowsocks 使用预先约定的密码和加密方法建立代理连接。在 Add Server 中选择 Shadowsocks 后,除了地址和端口,还要确保加密方法与服务端一致。密码正确但方法不匹配,同样可能导致连接失败;不要因为名称相近就替换加密方法。

若服务端配置还带有额外插件或混淆参数,需要确认应用对应支持并完整保留。仅复制地址、端口和密码,不一定等价于导入完整配置。订阅导入后,应以服务器编辑页中的实际字段为核对依据。

VMess:UUID 之外还要核对传输层

VMess 使用 UUID 等身份信息进行认证,也有自身的数据安全设置。服务端若指定 WebSocket 或其他传输方式,客户端必须一致;启用了 TLS 时,还需要核对服务器名称等参数。UUID 正确只是必要条件之一,并不能替代传输配置。

VLESS:身份认证与连接安全分开理解

VLESS 本身不负责数据加密,连接安全取决于所使用的安全层和完整配置。不能把 VMess 的 Type 改成 VLESS 后继续沿用全部字段。涉及 TLS、REALITY 或特定传输参数时,应按服务端提供的配置核对,并确认当前应用存在相应选项。

3. Trojan 与 Hysteria2:TLS 相似,传输基础不同

Trojan 常见配置使用 TLS 保护连接,以密码进行认证。选择 Trojan 后,应核对服务端端口、密码,以及 TLS 服务器名称。服务器地址可以是 IP,但证书通常对应域名,因此地址与证书名称需要分别理解。证书错误不应通过长期关闭证书验证来掩盖。

Hysteria2 基于 QUIC,使用 UDP 作为底层传输,并结合 TLS 与认证机制。选择 Hysteria2 后,除地址与认证信息,还应核对 UDP 端口、服务器名称及服务端是否启用了混淆。Hysteria 与 Hysteria2 不是同一个协议版本,不能只凭名称前半段判断兼容。

检查项Trojan 常见配置Hysteria2
基础传输通常通过 TCP 建立 TLS 连接通过 UDP 建立 QUIC 连接
认证核对密码核对认证信息及服务端要求
端口示意若服务端指定 TCP 443,就填写 443若服务端指定 UDP 443,就填写 443
网络限制影响检查 TCP 端口和 TLS 握手重点检查当前网络能否访问目标 UDP 端口

表中的 443 只是说明同一个端口数字可以对应不同传输,不是通用配置值。Hysteria2 的实际表现受 UDP 可达性、丢包、带宽与服务端配置共同影响,不能仅凭协议名承诺更快。若同一配置在 Wi-Fi 可用、在蜂窝网络超时,应先保留配置不变并比较网络条件。

4. HTTP、SOCKS5 与 WireGuard 的定位

HTTP 与 SOCKS5 是通用代理协议。HTTP 代理可以通过 CONNECT 建立目标连接;HTTPS 代理则在客户端与代理服务器之间增加 TLS,这与“通过 HTTP 代理访问 HTTPS 网站”不是同一个概念。Type 应依据代理入口本身是否使用 TLS 选择,而不是依据要访问的网站。

SOCKS5 可以协商用户名和密码认证,但协议本身不提供流量加密。其 UDP 能力还取决于服务端支持、应用设置和中间网络,不能因为选择了 Socks5 就认定所有 UDP 请求都会成功。常见端口 1080 只是约定俗成的示例,实际仍须使用服务端给出的端口。

WireGuard 是基于密钥的隧道协议,与只填写代理密码的方式不同。配置中通常需要本地私钥、对端公钥、隧道地址、远端端点等内容;若启用预共享密钥,也需要双方一致。其端点使用 UDP,51820 是常见示例端口,并非固定要求。

5. 从订阅导入到首次验证的操作顺序

订阅是服务器配置的交付方式,不是流量传输协议。一个订阅中可以包含不同 Type 的服务器;更新订阅也不等于升级协议。优先使用从你的服务商处获取的完整订阅,避免手动复制时遗漏 TLS、传输路径或认证参数。

  1. 确认来源

    准备已有订阅或完整连接参数。若尚未获取应用,先前往正版核验页核对 App Store 入口;服务连接参数需另行从你的服务商处获取。

  2. 导入订阅

    进入 Home → 右上角「+」→ Add Server → Type → Subscribe,填写订阅链接并保存;返回 Home,使用订阅的更新操作获取服务器列表。

  3. 核对类型

    打开导入服务器的编辑页,查看 Type、地址、端口和 TLS 等字段。手动添加时,在 Add Server → Type 选择对应协议,再按原始参数填写。

  4. 选中并连接

    返回 Home,点选要使用的服务器,确认选择标记后打开顶部连接开关;首次连接按系统提示允许添加 VPN 配置。

  5. 验证访问

    在 Home 使用 Connectivity Test 检查,再访问实际目标。测试通过但目标失败时,继续核对 Global Routing、当前配置与 DNS,而不是立即更换 Type。

订阅更新后,手动修改过的服务器字段可能被新内容覆盖。若更新前后行为发生变化,先对照 Type、端口、传输方式与 TLS 字段;如需服务端确认,只提交已移除凭据的错误现象与网络条件。

6. Type 与 Global Routing 不是同一个设置

Type 决定如何连接服务器;Global Routing 决定请求如何选择处理路径。协议配置正确,也可能因为路由姿态或规则命中而没有使用预期服务器。下面的推荐针对已有可靠规则配置的日常使用,不是对任何协议或线路的推荐。

Config

推荐

依据当前选中的配置文件处理请求。规则按顺序匹配,最终结果由命中的策略决定;不能把 Config 简化为固定的某类网站直连。

适合:已有正确规则配置,需要按目标分流。

Proxy

将代理作为全局路由姿态,用于对照 Config 下的规则影响。它不更改服务器 Type,也不修复密码、证书或传输错误。

适合:临时验证失败是否与规则分流有关。

Direct

使用直连姿态,不通过所选代理服务器验证协议可用性。此时网页能打开,不能据此证明刚导入的服务器有效。

适合:对照当前网络的直接访问情况。

Scene

按已设置的场景条件应用对应路由行为。排查时需一并查看当前场景与其设置,不能只记录界面上显示 Scene。

适合:已明确配置不同网络环境下的路由行为。

Config 中的 DOMAIN-SUFFIX 匹配域名后缀,GEOIP 根据目标 IP 的地理数据库信息匹配,IP-CIDR 匹配地址段,FINAL 用作最后兜底。这些是规则关键字,不是 Add Server 的协议选项。Settings → On Demand 则用于检查按需连接条件,也不是协议选择入口。

7. 协议选择与连接失败常见问答

能把 VMess 改成 VLESS,让连接更快吗?

不能只改 Type。回到 Home 的服务器编辑页,将类型恢复为服务端提供的协议;若服务端另行提供 VLESS 配置,再作为独立服务器完整导入。认证方式、传输与安全参数必须成套匹配。

Hysteria2 一直超时,但其他连接能用?

先核对 Type 确实是 Hysteria2,再检查认证、UDP 端口与 TLS 服务器名称。保持服务器参数不变,分别用 Wi-Fi 和蜂窝网络测试。若仅某个网络失败,记录网络条件并确认目标 UDP 端口是否可达。

有延迟数字,为什么网页还是打不开?

先在 Home 确认选中的服务器,再运行 Connectivity Test;随后检查 Global Routing 是否为预期姿态。Config 下还需确认当前配置与规则命中。延迟结果只反映对应测试方式,不能替代完整的目标访问验证。

出现证书错误,可以直接关闭验证吗?

先检查系统日期与时间,再对照服务器编辑页中的 TLS 服务器名称以及服务端证书要求。证书过期、名称不匹配或信任链异常需要分别处理;应保留错误信息并向你的服务商核对,而不是将关闭验证作为常规解决办法。

更新订阅后协议变了,需要自己改回去吗?

先查看更新后服务器的 Type 和连接字段,再核对服务商提供的变更说明。不要凭旧名称覆盖新参数;若配置疑似不完整,保留移除凭据后的错误描述,请服务商确认,再重新更新订阅验证。

最终判断顺序是:协议是否一致、连接参数是否完整、当前网络是否允许所需传输、路由是否符合预期。一次只改变一个条件,记录前后现象,比在多个 Type 之间反复切换更容易定位问题。

App Store 正版获取核对开发者与应用 ID