小火箭支持哪些协议:Shadowsocks、VMess、VLESS、Trojan 到 Hysteria2 一分钟看懂

用一张对照表概览 Shadowsocks、VMess、VLESS、Trojan、HTTP/SOCKS5、WireGuard、Hysteria2 的传输方式与加密特点,并说明在 Shadowrocket 中按服务商提供的类型选择对应协议。

本文速览

在 Shadowrocket 的 Home → + → Type 中,按用户已有服务商提供的配置选择协议,再核对地址、认证信息与传输参数。本文适合已有配置、但分不清协议名称与 TLS、TCP、UDP 含义的用户:先看协议表,再按步骤填写,最后用 Global Routing 区分协议连接问题与规则问题。

协议对照:先确认 Type,再看传输与加密

在 Home 打开已有条目的编辑页,或点击右上角的 + 查看 Type。这里选择的是与服务端通信的协议,不是速度档位。Shadowrocket(小火箭)支持下表所列协议;具体扩展字段与可用传输组合,以当前应用界面和用户已有服务商的配置说明为准。

协议 传输特点 加密与认证 填写时先核对
Shadowsocks 可承载 TCP、UDP;实际 UDP 能力还取决于服务端与网络。 使用指定加密方法与共享密钥;常见 AEAD 方法同时提供加密与完整性保护。 Address、Port、Password 与加密方法必须对应。
VMess 可使用 TCP 等传输,也可按配置组合 WebSocket、TLS。 使用 UUID 识别用户;协议加密设置与外层 TLS 是不同层次。 UUID、加密选项、传输方式及 TLS 参数。
VLESS 传输与外层安全机制由服务端配置决定。 使用 UUID 认证;VLESS 本身不提供载荷加密,通常依赖 TLS 等外层机制。 UUID、传输方式、TLS 及服务端要求的附加字段。
Trojan 通常依托 TLS 连接;UDP 转发取决于实现与服务端支持。 使用 Password 认证,由 TLS 保护连接并校验服务端身份。 Password、SNI、证书校验及实际监听端口。
HTTP / SOCKS5 HTTP 代理常用 CONNECT 建立隧道;SOCKS5 支持 CONNECT,也定义 UDP ASSOCIATE。 基础 HTTP 代理和 SOCKS5 本身不加密客户端到代理的链路;用户名与密码不等于传输加密。 代理类型、地址、端口、认证,以及是否另有 TLS。
WireGuard 基于 UDP 的网络层隧道,使用 Peer 与地址配置。 使用公私钥体系,可额外配置 Pre-shared Key。 Private Key、Peer Public Key、隧道地址、Allowed IPs、MTU。
Hysteria2 基于 QUIC,底层使用 UDP;需要路径允许相应 UDP 通信。 使用 QUIC 的 TLS 1.3 安全机制,并按服务端要求配置认证。 认证信息、SNI、端口与可选混淆参数。

在服务商资料中看到 WebSocket、TLS 或 QUIC 时,不要直接把它们都当成 Type。WebSocket 是传输封装,TLS 是安全层,QUIC 是基于 UDP 的安全传输协议;它们与 Shadowsocks、VMess 等名称并不处在同一分类层级。先确认协议,再逐层对齐字段,可以减少“地址和密码都对,却无法握手”的情况。

参数分层:地址、认证、TLS 不可互相替代

在编辑页先填写 Address 与 Port,再按 Type 填认证信息。Address 是连接目标,Port 是服务端实际监听的端口;SNI 则用于 TLS 握手中的服务名称指示。即使 Address 填写的是 IP,SNI 也可能需要填写证书对应的域名,不能把两者机械地改成同一内容。

443
常见 TLS 端口示例,不是所有协议的固定端口
TCP / UDP
两类底层传输;同一端口数字不表示传输相同
TLS 1.3
QUIC 使用的安全机制,涉及 Hysteria2 握手

在认证字段中,Shadowsocks 的 Password、VMess/VLESS 的 UUID、WireGuard 的 Private Key 不能互换。WireGuard 里的本地 Private Key 应与服务端登记的客户端公钥对应,Peer Public Key 则是对端公钥;把客户端自己的公钥填进 Peer Public Key,通常无法建立预期的握手关系。

结论:按字段对齐,不按名称猜测

先把服务端资料拆成“连接目标、认证、传输、安全层”四部分,再对应填写;遇到资料未给出的字段,先确认是否必需,不从另一条可用配置中借用参数。

添加步骤:手填与导入后都要复核 Type

在 Home 添加服务器条目,Config 用于配置文件与规则管理,Settings 用于应用设置。添加协议条目与切换规则配置是两项操作:前者决定怎样连接服务端,后者决定哪些请求使用哪项策略。以下步骤以用户已经持有自己的服务商参数为前提。

  1. 核对类型

    打开 Home → + → Type,选择资料中明确写出的协议。Trojan 不能通过改成 VLESS 来兼容,Hysteria2 也不能仅靠更换端口变成其他协议。

  2. 填写目标

    回到添加表单,按资料填写 Address、Port 与该协议的认证信息。端口必须使用实际值;资料写 8443 时,不应因为启用了 TLS 就改成 443。

  3. 对齐传输

    按所选 Type 展开的字段核对 TLS、SNI、传输方式及附加参数。保存前检查域名是否带入空格、Password 是否多出换行,以及 UUID 是否完整。

  4. 检查导入

    已有订阅时,可在 Home → + → Type → Subscribe 填入自己的订阅链接并保存。导入后打开具体条目,核对 Type 与关键字段;更新订阅可能覆盖手动修改,应保留原始参数供复核。

  5. 连接验证

    返回 Home 选择待测条目,打开连接开关并按系统提示允许 VPN 配置。先验证一个已知可访问的目标,再检查实际请求是否走到预期策略;单次延迟结果不能证明所有业务都可用。

在更新订阅后发现协议字段变化时,先核对服务端是否同步变更,再重新测试。订阅负责分发与更新配置,并不自动保证每个条目的服务状态。手工修改条目前记录原值,可以避免更新后无法区分“原始配置错误”和“本地修改错误”。

Global Routing:协议可用与规则命中分开检查

在 Home → Global Routing 中检查当前姿态,再判断请求为什么没有使用所选条目。Config、Proxy、Direct 与 Scene 属于路由控制,不是协议名称。Scene 用于按场景组织路由行为,实际结果需要核对相应场景设置;不要把 Scene 理解成另一种加密方式。

Config

推荐

按照当前配置的规则与策略处理请求。匹配结果可能是 DIRECT,也可能是代理或其他指定策略;没有匹配前面的规则时,通常由 FINAL 决定去向。

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

Proxy

将进入代理处理路径的请求交给所选代理策略,便于临时减少规则匹配带来的变量。测试完成后应恢复原姿态,不能据此认定所有应用流量都已被验证。

适合:区分服务端连接失败与规则未命中。

Direct

使用直连路径。此时网页可以打开,并不能证明刚填写的 Trojan、WireGuard 或其他协议参数有效,因为请求可能根本没有经过对应服务端。

适合:对照本地网络的基础连通情况。

在 Config 对应的配置文件中,按规则顺序检查匹配目标与策略名。下面仅演示语法,不是完整配置;其中 PROXY 必须在实际配置中对应可用策略。DOMAIN-SUFFIX 匹配域名后缀,IP-CIDR 匹配地址段,GEOIP 按 IP 地理数据库判断,FINAL 负责前面均未命中的请求。

DOMAIN-SUFFIX,example.com,PROXY
IP-CIDR,192.168.0.0/16,DIRECT
GEOIP,CN,DIRECT
FINAL,PROXY

在 Settings → On Demand 配置的是按条件自动建立连接的行为,不是替某个协议补全参数。协议本身尚未验证时,先手动连接并确认可用,再设置 On Demand;这样可以避免把自动触发条件与握手故障混在一起排查。规则匹配的完整说明可参阅使用手册中的路由章节。

常见问题:按现象缩小协议排查范围

在 Home 选中待测条目后,先记录失败发生在连接建立、TLS 握手还是打开目标网站的阶段,再查看连接记录。超时只能说明某个环节没有及时完成,不能单凭这一个提示就断定密码错误或协议不受支持。以下操作用于逐项减少变量,不代表所有同类现象都有同一个原因。

Hysteria2 超时,其他条目能用,是哪里不同?

先核对 Hysteria2 的 Address、Port、认证与 SNI,再检查当前网络是否允许到服务端的 UDP 通信。可在另一条可信网络上重复同一配置作对照;基于 TCP 的连接成功,不能证明同一目标的 UDP 端口也可达。

Trojan 提示证书错误,打开 Allow Insecure 就行吗?

先在条目编辑页核对 SNI 是否对应证书域名,再在设备系统设置中检查日期与时间,并向自己的服务商确认完整证书链。Allow Insecure 会削弱服务端身份校验,不应作为长期默认设置。

VLESS 的 UUID 正确,为什么仍然连接失败?

返回 Home 打开该条目,逐项检查传输方式、TLS、SNI,以及服务端要求的 Host、Path 或其他附加字段。UUID 只解决认证的一部分,无法弥补传输封装或安全层不一致。

WireGuard 有握手,但部分页面一直加载怎么办?

先检查 Allowed IPs 是否覆盖预期目标,再核对 DNS 与 MTU。MTU 不宜盲目调大,应依照服务端建议和路径状况调整;每次只改一项并记录结果,避免把路由遗漏与报文大小问题混为一谈。

哪个协议一定最快,能直接选一个吗?

先确认服务端提供哪种协议,再用相同网络、相同目标和相近时段比较连接成功率、响应时间与持续传输情况。协议名称不能替代链路质量判断,也不能让只提供 Shadowsocks 的服务端直接接受 Trojan 连接。

在提交排查信息前,遮盖订阅链接的 token、认证信息和密钥,只保留 Type、传输方式、端口、错误阶段及网络切换后的现象。需要进一步分析时,按照连接排查章节的顺序整理记录,比反复切换所有选项更容易定位原因。

App Store 正版入口核对开发者与应用 ID