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

拆解四种常见分享链接各自包含哪些字段,说明单条链接与订阅链接在导入方式、更新机制上的差别,示例全部使用 example.com 假值。

本文速览

本文适合已经持有自己的服务商配置与订阅、需要辨认链接格式的用户。先区分单条服务器参数与远程订阅地址,再核对四种分享格式中的认证、传输和 TLS 字段,最后按导入、更新、连接三个阶段排查问题。所有示例均为不能用于实际连接的演示数据,不提供任何服务资源。

一、前缀决定如何解析,不代表连接质量

Shadowrocket(小火箭)收到一段链接后,需要先判断它是服务器参数,还是用于获取配置的远程地址。ss://、vmess://、vless://、trojan://通常携带一条服务器记录;以 https:// 开头的订阅地址则指向远程内容,客户端需要发起请求,取得响应后才能解析其中的记录。

链接形式主要内容后续变化来源
ss://Shadowsocks 加密方法、密码、地址、端口等重新导入或手动编辑
vmess://常见为 Base64 编码的 VMess JSON 参数重新导入或手动编辑
vless://VLESS UUID、地址、传输与安全参数重新导入或手动编辑
trojan://Trojan 密码、地址、TLS 与传输参数重新导入或手动编辑
HTTPS 订阅地址远程配置入口及可能携带的访问 token更新订阅后读取远程内容

HTTPS 地址也可能返回网页、登录页或其他文件,因此“能在浏览器打开”不等于“可以作为订阅导入”。反过来,分享链接里的端口写成 443,也不能单凭端口判断它一定启用了 TLS。协议、端口和传输安全是不同字段,必须一起核对。

二、ss://:先解出加密方法与密码

Shadowsocks 分享链接常见写法遵循 SIP002 的基本结构:认证信息位于 @ 前面,服务器地址和端口位于后面,# 后面可携带名称。认证信息通常是 method:password 的 URL-safe Base64 编码。历史上也存在把更大一段内容整体编码的格式,不能只按字符串外观判断是否合法。

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

Base64 是编码方式,不是对凭据的保密措施。持有完整链接的人通常能够恢复其中的密码。不要把原始链接粘贴到公共解码网页;需要核对时,优先查看 Shadowrocket 导入后的编辑字段,并与自己已有的配置逐项比较。

三、vmess://:外层编码与内层 JSON 分开看

常见 VMess 分享格式是在 vmess:// 后放入一段 Base64 编码的 JSON。下面展示的是解码后的演示内容,不是可以直接粘贴到 URL 栏的完整分享链接。不同导出端可能使用不同字段组合,解析时应以实际导入结果为准。

{
  "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"
}

示例中的 v 是分享格式字段,不是 Shadowrocket 的版本。导入后即使名称和服务器地址正确,也应继续核对传输类型、TLS、Host 与 Path。少一个斜杠、错误的路径大小写或不匹配的 SNI,都可能出现“条目已添加,但握手失败”的现象。

四、vless:// 与 trojan://:查询参数不能只复制一半

VLESS 和 Trojan 常见分享格式更接近普通 URI:先写身份凭据,再写地址与端口,问号之后写附加参数。下面两个示例都使用 TLS,但它们的认证方式不同,不能只替换前缀就当作另一种协议使用。

vless://[email protected]:443?encryption=none&security=tls&type=tcp&sni=example.com#Demo-VLESS

trojan://[email protected]:443?security=tls&type=tcp&sni=example.com#Demo-Trojan
字段含义核对要点
@ 前的内容VLESS 使用 UUID;Trojan 使用密码不要把显示名称误当作认证凭据
encryption=noneVLESS 协议层不额外提供该层加密不等于外层 TLS 被关闭
security=tls指定 TLS 安全层同时核对 SNI、证书与服务器配置
type=tcp指定此处使用 TCP 传输若实际配置是 WebSocket,不能照抄这个值
sni=example.comTLS 握手使用的服务器名称地址是 IP 时也不能当然省略

URL 中的 & 分隔不同参数,# 引出备注。如果密码、路径或备注里含有保留字符,应按它所在的 URI 部分进行百分号编码。例如查询参数中的路径 /demo?mode=1 可表示为 %2Fdemo%3Fmode%3D1。不要对整条链接连续编码,也不要把正文中的换行、中文标点和引号一起复制进去。

五、单条导入与订阅更新是两条流程

单条分享链接相当于某一时刻的服务器参数副本;订阅地址则是可以再次请求的入口。例如下面的地址只用于说明结构,token=xxxx 是明显的演示假值,不对应真实服务。订阅实际返回的内容可能是编码后的链接列表,也可能是其他受支持的格式,不能仅凭 URL 后缀推断。

https://example.com/sub?token=xxxx

按已有资料选择导入流程

已有单条分享链接
  • 完整复制协议前缀、认证信息、查询参数与备注。
  • 打开 Shadowrocket,按剪贴板导入提示确认;系统询问粘贴权限时,按实际操作授权。
  • 在 Home 检查新增记录,进入编辑页核对地址、端口、认证与传输字段。
  • 上游参数变更后重新导入或手动修改;这条记录不会凭空获得订阅更新关系。
已有自己的订阅地址
  • 在 Home 点击右上角 +,将 Type 选择为 Subscribe。
  • 在 URL 填入完整订阅地址,设置便于辨认的名称并保存。
  • 对该订阅执行更新,再核对订阅分组内的服务器记录。
  • 远端内容发生变化后,再次更新才会反映到本地;更新后的可用性仍需测试。

单条导入保存参数,订阅导入保存远程入口及其更新关系;两者都不能替代服务端的有效授权。

订阅更新可能新增、替换或移除其管理的记录。不要把订阅分组内的手工修改当作永久备份:后续更新可能重新写入远端参数。调整前先记录差异;需要保留独立配置时,应使用明确独立于订阅管理的记录,并自行维护其变化。

订阅 token 往往具有访问凭据的作用。排查失败时只记录响应状态、错误文字和发生阶段,不要公开完整 URL。若已泄露,应在自己的服务管理页面重置或撤销相应 token,再把新地址保存到 Shadowrocket。

六、导入成功后,用 Global Routing 区分故障阶段

分享链接主要描述服务器连接方式,不自动等于完整分流规则。Home 用于选择服务器与控制连接;Config 用于管理规则配置。检查 Global Routing 时,要区分“没有把请求送到所选服务器”和“请求送到了服务器但连接失败”,否则容易反复修改一条本来正确的链接。

Config:核对现有规则下的实际去向

推荐

在已有且有效的规则配置下,按规则决定流量去向。检查 DOMAIN-SUFFIX、IP-CIDR、GEOIP 等匹配项及 FINAL 的处理目标,而不是假定所有请求都会使用刚导入的服务器。

适合:已有分流配置,确认日常请求是否命中预期策略

Proxy:临时隔离规则影响

让受客户端接管的流量按代理模式处理,用于对比测试。它不能修复错误的密码、UUID、TLS 参数,也不能保证系统中所有流量都经过代理。

适合:怀疑 Config 中的规则将测试请求分到了其他去向

Direct:检查本地网络基线

让受接管流量直接连接。用于确认本地网络是否正常,但在此模式下网页能够打开,并不能证明刚导入的服务器可用。

适合:对照本地网络状态,排除基础连接故障

结论:按“解析 → 更新 → 握手 → 分流”定位

条目未生成,先查链接完整性;订阅列表未取得,先查 URL 与响应;条目存在但连接失败,再查认证和 TLS;连接建立但指定请求异常,最后查 Global Routing 与规则。每次只改变一个变量,并在测试后恢复原有模式。

七、常见问题与具体处理

复制了链接,为什么没有导入提示?

先检查剪贴板内容是否从 ss:// 等完整前缀开始,删除外层引号、聊天软件追加的说明文字和中间换行。再确认系统没有拒绝此次粘贴访问。HTTPS 订阅可以在 Home → + → Type → Subscribe 中手动填写;不要把一条服务器分享链接误填为订阅地址。

订阅提示更新成功,为什么服务器还是连不上?

更新成功只证明获取并解析了订阅内容,不证明其中每条服务器都通过连接测试。在 Home 选择对应记录并核对端口、认证、传输与 TLS;同时检查记录是否已被远端停用。订阅下载成功与代理握手成功是两个不同结果。

订阅更新返回 401、403 或网页内容怎么办?

401 通常表示需要认证,403 通常表示请求被拒绝;具体原因仍以自己的服务端说明为准。核对 token 是否完整、是否过期,以及是否误复制了管理网页地址。如果响应实际是 HTML 登录页,应回到自己已有的管理页面重新取得订阅地址,而不是反复修改服务器端口。

把 vless:// 改成 trojan:// 能直接用吗?

不能。VLESS 的 UUID 与 Trojan 的密码不是可互换的认证字段,服务端监听的协议也不同。恢复完整原链接,按服务端实际协议重新导入;不要仅凭两者都使用 443 或 TLS 就替换前缀。

能导入但提示证书错误,要关闭验证吗?

先检查设备日期与时间,再对照原始资料核对 SNI、服务器名称及证书是否有效。地址使用 IP 时尤其要检查 TLS 服务器名称。不要把关闭证书验证作为通用修复方法;这会降低身份验证保障,也无法解决错误的 UUID、密码或 WebSocket Path。

获取 Shadowrocket 与导入教程

iPhone / iPad 版在 App Store 获取,$2.99 一次性付费;Mac(Apple 芯片 / Intel)、Windows、安卓、Linux 版免费。iPhone / iPad 系统要求以 App Store 页面标注为准。前往下载页按设备选择获取方式,再按教程导入自己已有的配置。

本站不提供、不销售、不推荐节点、订阅或连接服务。

下载 Shadowrocket