跳到正文

ss://、vmess://、vless://、trojan:// 分享链接格式解析:与订阅链接有何不同

拆解四种分享链接的结构与编码方式,说明单节点链接和订阅链接在用途、更新方式上的区别,以及在 Shadowrocket 中分别从哪里导入。

本文速览

单节点分享链接通常直接携带连接参数;订阅链接通常指向需要联网获取的内容。本文适合已经持有自己服务商配置的用户:先按前缀判断输入类型,再核对地址、认证、传输与 TLS,最后在 Shadowrocket 中选择相应导入入口。示例均为格式演示,不能用于连接。

一、先区分单节点链接、订阅地址与配置文件

ss://、vmess://、vless://、trojan:// 是分享格式的 scheme,即冒号前的类型标记。它们告诉客户端如何解释后续字符,并不等于网页地址,也不直接规定所有传输细节。Shadowrocket(小火箭)导入时会把这些字符还原为可编辑的连接字段。

常见的订阅地址则以 https:// 开头,例如 https://example.com/sub?token=xxxx。它本身通常不是节点参数,而是内容获取地址。服务端返回的内容可能包含多条分享链接,也可能经过整体 Base64 编码;单凭地址后缀不能确定返回格式。

输入类型主要内容更新方式
单节点分享链接一组地址、认证与连接参数重新导入新链接,或手动修改对应字段
订阅地址获取服务端维护列表的 URL通过原地址重新请求,刷新订阅列表
配置文件可能包含 General、Rule、DNS 与策略相关设置重新载入本地文件或更新远程配置

一个 HTTPS 地址也可能指向网页或远程配置,而不是订阅。应先核对已有服务商对该地址的用途说明。节点订阅更新不会自动替你设计分流规则,导入远程配置也不是单纯添加一条连接。

4 种
本文解析的分享 scheme:ss / vmess / vless / trojan
1 组
单节点链接通常描述一组连接参数
2 类
需分别检查:连接参数与分流配置

判断方法:先确认内容用途,再选导入入口

拿到 HTTPS 地址时,先确认它返回节点列表还是完整配置;拿到四种分享 scheme 时,先按单节点解析。不要仅因为地址能在浏览器中打开,就认定它可以作为订阅使用。

二、ss://:Shadowsocks 的认证信息与地址

常见的 SIP002 风格链接把认证部分与服务器位置分开。认证部分通常是 method:password 的 Base64 或 URL-safe Base64 表示,后面接 @host:port。例如以下字符串中,编码部分解码后为 aes-128-gcm:test;这里的密码只是演示值。

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

还可能遇到把 method:password@host:port 整体编码的旧式分享形式。两者的 @ 是否直接可见不同,但不能因此判定其中一个必然无效。部分链接还带有 plugin 查询参数;只有实际支持并正确配置对应扩展时,这些参数才有意义。

三、vmess://:先解码 JSON,再检查字段类型

常见的 VMess 分享形式为 vmess:// 后接 Base64 编码的 JSON。地址、端口、UUID、传输和 TLS 信息都在这个对象里,不能像普通 URL 那样只找 @ 分隔。下面展示的是解码后的结构,不是可以直接粘贴导入的完整分享链接。

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

不同生成端可能省略可选字段,或把端口保存为字符串。解码后若不是完整 JSON,应先确认是否复制到了整条链接,尤其检查末尾是否被聊天软件截断。不要把整个 JSON 再当作服务器地址填写。

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

这两种分享链接常采用“认证信息、地址、查询参数、备注”的 URL 结构。它们看起来接近,但 @ 前面的内容不能互换:VLESS 通常放 UUID,Trojan 通常放密码。以下地址、认证与路径都是演示值。

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

trojan://[email protected]:443?security=tls&type=tcp&sni=example.com#Demo
字段VLESS 示例含义Trojan 示例含义
@ 前内容UUID,用于用户认证Password,用于用户认证
security=tls指定 TLS 安全层描述此示例使用的 TLS 设置
type示例为 ws示例为 tcp
sniTLS 握手使用的服务器名称TLS 握手使用的服务器名称
host / path此例用于 WebSocket此 TCP 示例不需要这些参数

VLESS 中的 encryption=none 指协议层的这一设置,不代表 URL 中的 TLS 自动失效;是否启用 TLS 要看安全层参数及实际导入结果。Trojan 常使用 TLS,排错时应同时核对 Password、SNI 与证书对应域名,不能只确认端口可达。

查询参数使用百分号编码,例如 %2Fdemo 解码为 /demo。如果密码含有 @、# 或 ?,生成链接时必须按相应位置的规则编码,否则解析器可能提前结束认证段。IPv6 地址在 URL 的主机位置通常需要方括号,例如 [2001:db8::1]:443。

五、在 Shadowrocket 中分别导入与更新

以下操作以已经持有自己的服务商参数或订阅为前提。Shadowrocket 是闭源商业应用,通过 App Store 一次性买断获取;客户端买断 ≠ 线路套餐。本站不提供、不销售、不推荐节点或订阅。

识别输入类型 选择导入入口 核对解析字段 保存连接记录 验证连接结果

单节点分享链接

  1. 复制完整链接,不要连同解释文字、引号或代码围栏一起复制。二维码只是字符串的另一种载体,也要先判断其中内容是什么。
  2. 打开 Home,使用可用的剪贴板导入提示或扫码入口。若没有出现提示,可进入右上角 + 的 Add Server,选择正确 Type 后按已有参数手动填写。
  3. 保存前核对 Address、Port、认证字段以及 TLS、SNI 和传输设置。单节点链接中的备注不应被填入 Password 或 Address。
  4. 返回 Home 确认新增记录,并选择该记录测试。保存成功仅说明客户端接受了字段,不代表服务端认证已经通过。

订阅地址与远程配置

  1. 节点订阅通常从 Home → + → Add Server 进入,将 Type 设为 Subscribe,再把完整地址填入 URL 并保存。界面选项以当前应用显示为准。
  2. 导入后检查对应订阅分组是否出现预期记录。要获取列表变化,应更新原订阅分组,而不是重复创建相同 URL 的订阅。
  3. 如果拿到的是带规则的远程配置地址,应到 Config 中按配置用途添加和载入;不要把完整配置地址当作单节点 Address。

订阅会重新从服务端获取列表,手动改过的订阅内记录可能在更新后被替换。需要保留差异时,先记录必要字段,再决定是否建立独立记录;不要假设本地修改会反向同步给服务端。订阅 URL 中的 token 也应按凭据保管。

六、导入异常时,按解析、连接与规则分层排查

排错应从“是否解析出记录”开始,再检查“是否能建立连接”,最后检查“请求实际走哪条策略”。这样可以避免把 Base64 字符问题误判成网络故障,也能避免在规则没有选中代理时反复修改密码。

复制了 vmess://,为什么没有新增记录?

先检查前缀与末尾是否完整,去掉复制时附带的换行和标点。若要核对内容,应在可信的本地环境检查 Base64 解码结果是否为完整 JSON,重点看 add、port 与 id;不要把真实链接提交给公共解码网站。

vless:// 导入了,但 Path 显示不对怎么办?

打开新增记录的编辑页,核对传输是否为 ws,再检查 Path 与 Host。URL 中的 %2F 应在解析后成为斜杠;如果字段仍显示错误或缺失,按已有服务商参数修正,并确认 TLS 与 SNI 没有遗漏。

订阅更新后,手动改的名称和参数为什么变了?

订阅更新会重新载入服务端列表,本地修改不一定保留。先确认更新的是原订阅分组,再对照服务端当前参数;需要固定保留的本地差异,应另行保存独立记录,而不是持续修改会被更新的条目。

节点已经选中,为什么网站仍没有经过它?

到 Home 检查 Global Routing。Direct 不按选中的代理转发;Config 依赖当前配置规则;Proxy 用于代理路由姿态;Scene 按场景设置决定行为。先确认当前姿态,再检查连接开关和对应规则。

在 Global Routing 使用 Config 时,规则顺序也会影响结果。例如 DOMAIN-SUFFIX,example.com,DIRECT 会让匹配域名采用 DIRECT;后面的 FINAL,PROXY 只处理前序未命中的请求。导入一个新的分享链接,不会自动覆盖已有的 DOMAIN-SUFFIX、GEOIP 或 IP-CIDR 规则。

App Store 正版核对