ss://、vmess://、vless://、trojan:// 链接格式说明:单节点分享链接与订阅链接的区别

单节点分享链接由哪些字段拼成,订阅链接为什么能批量更新,两者导入 Shadowrocket 的入口有什么不同。全部示例使用 example.com 假值。

本文速览

本文适合已经从你的服务商处获取订阅或连接参数、准备导入 Shadowrocket(小火箭)的用户。先根据链接前缀识别内容,再核对认证、传输与 TLS 字段,最后区分单条导入和订阅更新。文中的域名、密码与 UUID 均用于解释格式,不能作为实际连接参数。

一、单节点分享链接与订阅链接的核心区别

单节点分享链接把一条连接所需的参数写进 URI。ss://、vmess://、vless://、trojan:// 的前缀告诉导入器采用哪一种格式解析;导入后得到的是服务器记录,而不是持续获取新内容的地址。

订阅链接通常是一个 HTTPS 地址。Shadowrocket 请求这个地址,读取返回内容,再解析其中的服务器记录。订阅更新是重新请求并处理远端内容,不是让已经导入的单节点链接自行变化。订阅从你的服务商处获取;仅凭地址以 https:// 开头,不能确认它返回的是节点订阅、配置文件还是普通网页。

4 种
本文拆解的 URI 前缀:ss / vmess / vless / trojan
1 条
单节点分享链接通常描述一条服务器记录
443
HTTPS 默认端口,不代表所有代理服务的端口

二、ss://:认证字段、服务器地址与备注

Shadowsocks 常见的 SIP002 写法包含 Base64URL 编码的认证信息、服务器地址、端口以及可选备注。下面的演示中,认证部分解码为 aes-256-gcm:password,地址为 example.com,端口为 8388。这些演示参数不能用于连接。

ss://[email protected]:8388#Example-SS
片段含义核对动作
ss://Shadowsocks 分享格式标识确认 Add Server 中 Type 对应 Shadowsocks。
YWVzLTI1Ni1nY206cGFzc3dvcmQ编码后的方法与密码核对方法和密码是否与服务端一致。
example.com:8388服务器地址与端口端口须按服务商参数填写,不能统一改为 443。
#Example-SS可选备注用于识别记录,不参与服务端认证。

另外一种历史写法会把“方法、密码、地址、端口”整体编码,外观上可能看不到 @。遇到不能导入的链接,应先确认它采用哪一种格式,而不是直接拼接分隔符。部分链接还包含插件参数;遗漏这些参数,即使地址与密码正确,也可能无法连接。

三、vmess://:Base64 内的 JSON 参数

常见 VMess 分享格式是 vmess:// 后接一段 Base64 文本。解码结果通常为 JSON,不是普通的“用户名@服务器”。下面展示的是编码之前的演示 JSON,不是可直接粘贴导入的完整链接。

{
  "v": "2",
  "ps": "Example-VMess",
  "add": "example.com",
  "port": "443",
  "id": "11111111-2222-4333-8444-555555555555",
  "aid": "0",
  "scy": "auto",
  "net": "ws",
  "type": "none",
  "host": "example.com",
  "path": "/connect",
  "tls": "tls",
  "sni": "example.com"
}

如果链接来自排版后的消息,换行、智能引号或被截断的 Base64 都可能使解析失败。先重新复制原始完整文本,再核对导入结果。不要把 VMess JSON 当作配置文件正文粘贴进 Config,也不要把 JSON 里的 port 误认成订阅 URL 的端口。

四、vless:// 与 trojan://:可读参数也需要逐项核对

VLESS 和 Trojan 常见分享链接采用较直观的 URI 结构:认证信息位于 @ 前,后面是地址、端口与查询参数。示例中的 & 在页面上表示链接参数之间的分隔符;实际复制时应保留完整原始链接。

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

trojan://[email protected]:443?security=tls&type=tcp&sni=example.com#Example-Trojan
核对项VLESS 示例Trojan 示例
认证信息UUID密码 demo-password
目标地址example.com:443example.com:443
传输参数type=ws,需要 Host 与 Pathtype=tcp
TLS 参数security=tls 与 snisecurity=tls 与 sni

path=%2Fconnect 中的 %2F 是斜杠的百分号编码。密码如果包含 @、# 等 URI 保留字符,也需要正确编码,否则解析器可能把密码的一部分识别成地址或备注。不要在不了解字段边界时手动解码整条链接后再导入。

结论:导入成功后,再核对传输与 TLS

记录出现在 Home 只说明链接已被解析。连接失败时,打开记录编辑页,依次核对地址、端口、认证信息、传输类型、Host、Path 与 SNI;不要先通过关闭证书校验来掩盖参数错误。

VLESS 示例中的 encryption=none 描述协议对应的参数,并不等于这条示例没有 TLS。不同分享格式对参数名称的约定也可能不同,不能仅替换前缀就把 VLESS 链接转换为 Trojan 链接。

五、Shadowrocket 导入入口:节点订阅与 Config 不同

Home 管理服务器记录与连接选择,Config 管理规则配置,Settings 管理应用设置。节点订阅的目标是批量维护服务器记录;远程配置还可能包含 [General]、[Rule] 等段落。两种内容都可能通过 HTTPS 获取,但不应因为地址长得相似就放到同一个入口。

Add Server → Type → Subscribe

推荐

针对已经持有节点订阅 URL 的情况,在 Home 点击添加按钮,进入 Add Server,选择 Type 为 Subscribe 后填写 URL 并保存。后续更新围绕该订阅记录进行。

适合:已有节点订阅,需要保留批量更新入口

Add Server → 对应协议 Type

根据已有参数选择 Shadowsocks、VMess、VLESS 或 Trojan,填写地址、端口与认证信息。单条分享链接也可通过剪贴板导入提示或扫码解析,导入后检查对应字段。

适合:已有单条分享链接,或需要手工核对一条服务器记录

Config → 远程配置

用于导入规则配置文件。先确认远端返回的是配置内容,再在 Config 中添加并选择使用;不要把普通节点订阅 URL 当成规则配置文件地址。

适合:明确获得了包含配置分段的远程配置地址

剪贴板与相机权限由系统管理。复制完整链接后返回 Home,按出现的导入提示操作;扫码则使用 Home 的扫码入口读取原始文本。若没有识别提示,先检查前缀、空格及换行,不要把订阅 URL 填进单个服务器的 Address 字段。

两种已有资料的处理方案

已有单节点分享链接
  • 确认前缀与完整性,再通过剪贴板或扫码导入。
  • 在 Home 打开记录,核对地址、端口及传输字段。
  • 服务端参数变动后,获取新链接并重新核对记录。
已有节点订阅 URL
  • 订阅从你的服务商处获取,保留完整查询参数。
  • 使用 Type 为 Subscribe 的入口保存 URL。
  • 执行该订阅的更新操作后,检查记录是否发生预期变化。

需要持续更新时保留订阅记录;只有单节点分享链接时,不应期待它自动变成可更新订阅。

六、订阅更新原理、敏感参数与排查顺序

下面是明显的演示地址。token=xxxx 代表认证参数所在的位置,不是真实凭据。服务器收到请求后,可能返回编码后的节点列表或客户端能够识别的其他订阅内容;HTTPS URL 本身不说明返回格式。

https://example.com/sub?token=xxxx
  1. 先确认资源类型。从你的服务商处确认该地址是节点订阅还是远程配置。返回登录页、错误提示或空内容时,不能当作有效节点列表处理。
  2. 再确认请求是否成功。超时应先检查当前网络能否访问订阅域名;HTTP 401 或 403 通常需要核对授权与链接状态。不要仅因浏览器能显示网页就认定订阅有效。
  3. 接着检查解析结果。请求成功但没有记录,可能是返回内容不受当前入口支持,也可能确实没有可用记录。应核对格式说明,而不是反复添加重复订阅。
  4. 最后检查连接与规则。更新成功不代表每条记录都能连接。先在 Home 检查选中记录,再检查 Global Routing;Config 使用配置规则,Proxy 将可代理流量交给代理策略,Direct 使用直连,Scene 按所选场景设置处理。节点分享链接本身不会替你建立完整分流规则。

七、链接导入与订阅更新常见问答

把 ss:// 粘贴到 Subscribe 的 URL,为什么更新不了?

ss:// 描述单条记录,不是供 HTTP 请求读取的订阅地址。取消这条错误的订阅输入,回到 Home,通过剪贴板或扫码导入原始分享链接,再核对 Shadowsocks 的方法、密码与端口。

订阅更新后,手动改过的名称或参数还会保留吗?

订阅记录由远端返回内容维护,更新时本地修改可能被替换,具体取决于更新与保留设置。需要测试参数时,先记录原值,使用独立记录测试;不要把订阅内的临时修改当作长期配置来源。

二维码能扫出来,但连接失败,要重新扫码吗?

先查看导入记录是否完整,尤其是 WebSocket Path、Host 与 TLS SNI。若文本没有截断,重复扫码不会改变服务端参数。再核对服务状态与当前选择的记录;仍有问题可查看问题诊断。

有节点链接以后,还需要设置 DOMAIN-SUFFIX 或 FINAL 吗?

节点定义连接目标,规则定义请求去向,二者分工不同。使用 Global Routing → Config 时,需要检查当前配置的规则顺序与策略目标。DOMAIN-SUFFIX 匹配域名后缀,FINAL 处理此前未匹配的请求;导入节点不等于已经配置这些规则。

前往 App Store