Shadowrocket 分享链接格式:ss://、vmess://、vless://、trojan:// 与订阅链接的区别

分享链接对应单个节点,订阅链接对应一组节点并能定期更新。本文拆解四种前缀的结构,讲清两者区别,以及在 Shadowrocket 里各自如何导入。

本文速览

本文适用于已经拥有自己的服务商与订阅、需要在 Shadowrocket(小火箭)中导入连接参数的用户。先根据链接前缀区分单条分享与远程订阅,再核对服务器、端口、认证和传输参数,最后按导入、测试、更新的顺序验证。文内示例全部为结构说明,不能用于连接;本站不提供、不销售、不推荐节点或订阅。

一、分享链接与订阅链接:保存的是参数还是远程地址

ss://、vmess://、vless://、trojan:// 通常把一个节点的连接参数编码进字符串。导入后,客户端得到服务器地址、端口、认证信息及相关选项。以后服务器更换端口,原先保存的这条分享链接不会自动改写。

订阅链接通常是一个 https:// 地址。Shadowrocket 请求该地址后,读取返回内容中的节点列表;再次更新时重新获取内容。因此,订阅可以维护一组节点,也可能暂时只返回一个节点。“能否更新”取决于是否保留了远程订阅来源,而不是列表里当前有几条记录。

4 种
本文拆解的分享前缀:ss / vmess / vless / trojan
2 类
导入来源:单条参数与远程订阅地址
443
本文 TLS 示例端口,不是协议强制端口

不能仅凭 https:// 就认定某个网址是订阅。服务商的账户页面、使用说明页面和订阅接口都可能采用 HTTPS。有效订阅地址必须返回客户端能够识别的订阅内容,而不是登录表单或网页。

二、ss://:Shadowsocks 的方法、密码与服务器

常见 Shadowsocks 分享链接采用 SIP002 风格:将“加密方法:密码”编码成 Base64 用户信息,后面接服务器与端口。Base64 是编码,不是保密措施;拿到完整链接的人通常可以还原认证信息。

ss://[email protected]:8388#Demo-SS

还有较早的格式会把“方法:密码@服务器:端口”整体编码。因此,同样以 ss:// 开头,后面的字符串也未必都能按 @ 直接拆分。导入失败时先确认链接是否完整,以及方法是否受支持;不要把一种格式强行拼成另一种格式。

三、vmess://:Base64 内部通常是 JSON

常见 VMess 分享格式是 vmess:// 后接一段 Base64 编码的 JSON。它不像普通网址那样直接在外层显示主机和端口。下方展示的是解码后的教学结构,不是可以直接粘贴导入的分享链接。

{
  "v": "2",
  "ps": "Demo-VMess",
  "add": "example.com",
  "port": "443",
  "id": "00000000-0000-4000-8000-000000000001",
  "aid": "0",
  "scy": "auto",
  "net": "ws",
  "type": "none",
  "host": "example.com",
  "path": "/demo",
  "tls": "tls",
  "sni": "example.com"
}

若解码后缺少结尾大括号、字段被截断或出现富文本引号,说明复制过程可能破坏了数据。应从原始来源重新复制完整链接,而不是随意补写认证字段。能成功解析 JSON,也只代表格式可读,并不证明服务端能够连接。

四、vless:// 与 trojan://:外形相近,认证含义不同

这两类链接常采用 URI 结构:前缀之后是认证信息,@ 之后是服务器与端口,? 后面携带传输或安全参数,# 后面为备注。外形相近不代表协议可互换,修改前缀不能把一个服务转换成另一个协议。

vless://[email protected]:443?encryption=none&security=tls&type=ws&host=example.com&path=%2Fdemo&sni=example.com#Demo-VLESS

trojan://[email protected]:443?security=tls&type=tcp&sni=example.com#Demo-Trojan
字段VLESS 示例Trojan 示例
认证信息UUID密码
传输参数type=ws,需要匹配 Host 与路径type=tcp,按给定配置使用
TLS 名称sni=example.comsni=example.com
备注Demo-VLESSDemo-Trojan

示例中的 encryption=none 描述 VLESS 协议层的设置,不能据此判断整条连接没有 TLS;应同时检查 security=tls 等参数。不同分享格式和传输组合还可能携带 flow 等字段,具体取值应以已有配置为准,不能给每条 VLESS 链接都套用同一值。

URL 编码也会影响解析:%2Fdemo 解码后是 /demo。密码或路径包含 @、#、& 等保留字符时,需要正确编码。不要把聊天软件添加的句号、换行或引号一起复制进去,也不要对整条链接反复解码,否则参数边界可能被改变。

五、在 Shadowrocket 导入单条链接与订阅

以下以 iPhone / iPad 常见的 Home 界面为操作参照;其他平台的按钮布局可能不同,仍应区分“导入单个服务器”与“添加 Subscribe 来源”。Home 管理节点及连接,Config 管理规则配置,Settings 管理应用选项。将节点链接导入 Config,并不能替代在 Home 添加服务器。

导入一条已有分享链接

  1. 从自己的配置来源复制完整链接,保留从协议前缀到备注末尾的内容。
  2. 进入 Home,使用剪贴板导入入口;若出现读取剪贴板权限提示,确认后再继续。不同平台若未显示该入口,可使用相应的导入菜单。
  3. 若使用二维码,二维码内容应是完整链接。扫描只是输入方式,不改变其中的协议参数。
  4. 导入后打开记录详情,核对协议、地址、端口、认证信息及 TLS / 传输设置,再保存并选择该记录。

添加已有远程订阅

  1. 在 Home → + 中,将 Type 设为 Subscribe。
  2. 把已有订阅地址粘贴到 URL,填写便于识别的备注并保存。这里填写的是订阅接口,不是服务商首页。
  3. 执行该订阅的更新操作,等待请求完成,再展开订阅分组检查返回的节点。界面若使用图标菜单,以其中的 Update 操作为准。
  4. 保留订阅记录,以便以后更新。不要仅复制其中一条节点后就删除来源,并期待单条副本继续同步。

六、验证导入结果:先排除参数问题,再检查规则

导入成功只说明客户端识别了数据,不能证明认证、传输和远端服务都正常。先选择刚导入的记录,完成系统要求的连接授权并开启连接,再观察连通性测试与实际访问。测试数字只反映所用测试方式,不等于持续下载速度。

Global Routing → Config

推荐

按当前 Config 的规则决定请求去向。命中规则可能选择 DIRECT、代理或其他已配置策略,并非所有请求都会使用刚选中的节点。

适合:导入验证完成后的日常规则分流

Global Routing → Proxy

让进入客户端代理处理范围的请求使用代理姿态,临时减少规则选择造成的变量。它不代表系统中每一种流量都必然被接管。

适合:排查“节点可用但目标请求未走代理”

Global Routing → Direct

采用直连姿态,不能用来证明已导入代理节点的可用性。若网页在此姿态下正常,只能说明对应的直连路径可用。

适合:与代理路径做临时对照

Global Routing 中的 Scene 用于按所配置的场景应用相应设置,不是第五种分享协议。排查时还应检查 Settings → On Demand:按需连接可能在符合条件时重新建立连接,但不会修复错误的 UUID、密码或 WebSocket 路径。

结论:每次只改变一个验证条件

先核对地址、端口与认证,再核对 TLS 和传输;参数确认后才临时切换 Global Routing。若 Proxy 可访问而 Config 不可访问,优先检查规则命中与策略选择,不要立即删除订阅重新导入。

七、分享链接与订阅导入常见问题

复制了链接,为什么 Home 没有新增记录?

确认复制的是完整的 ss://、vmess://、vless:// 或 trojan:// 字符串,而不是网页标题。去掉外侧引号与句末标点,但不要删除链接内部的查询参数;再从 Home 的导入入口执行一次。

把 https 地址加进去了,为什么更新后没有节点?

检查记录的 Type 是否为 Subscribe,以及 URL 是否为自己的订阅接口。登录页、已失效的令牌或不受支持的返回内容都可能导致无法生成节点。先核对来源与错误提示,不要通过改成某个协议前缀来“转换”订阅。

订阅更新后,手动改过的节点参数怎么恢复了?

订阅记录通常受远程内容管理,更新时可能重新生成或覆盖所属节点。需要临时验证参数时,先保留原订阅,再建立独立副本测试;长期修正应由原配置来源调整,避免每次更新重复修改。

显示 TLS 错误,可以直接关闭证书验证吗?

不要把关闭验证当作通用修复。先检查设备时间、SNI、连接地址,以及服务端证书是否与预期一致;WebSocket 还需核对 Host 和路径。保留错误信息,隐藏凭据后向自己的配置来源核实。

同一个链接可以直接改成另一种协议吗?

不可以。Shadowsocks、VMess、VLESS、Trojan 的认证与握手不同,服务端也必须提供相应协议。需要切换时,使用自己已有配置中对应协议的完整参数,而不是只替换前缀或端口。

保留完整来源,按协议核对字段,按订阅记录执行更新。分享格式解决参数传递,连接结果仍取决于配置、网络与远端服务。

下载 Shadowrocket