如何解读 vmess://、vless://、ss:// 或 trojan:// 链接

V2Ray 配置链接各部分的含义,附 VLESS、VMess、Shadowsocks 和 Trojan 的占位示例,以及为什么链接就是一种凭据。

最后审阅:

一条配置链接把客户端需要的一切装进一行:服务器、密钥和传输设置。会读它,你就知道自己拿到了什么,也知道配置为什么会失败。下面所有示例都使用占位内容,而不是真实服务器。

VLESS

vless://[email protected]:443?encryption=none&security=reality&sni=site.example&fp=chrome&pbk=PUBLIC_KEY&sid=SHORT_ID&type=tcp&flow=xtls-rprx-vision#my-config
部分含义
00000000-…用户 ID(UUID)。它就是密钥:谁有它,谁就能使用这台服务器。
server.example:443服务器地址和端口。
encryption=noneVLESS 自己不做加密;由安全层保护流量。
securitynone、tls 或 reality。
sniTLS 握手中出示的服务器名称。使用 REALITY 时,它是被模仿的那个真实网站。
fp客户端模仿的 TLS 指纹,例如 chrome。
pbk、sidREALITY 公钥和 Short ID。两者都必须与服务器完全一致。
type传输:tcp、ws(WebSocket)、grpc 等。
flowxtls-rprx-vision 是 Vision flow,与 REALITY 或 TCP 上的 TLS 搭配使用。
path、host、serviceName使用 WebSocket 或 gRPC 传输时的相关设置。
#my-config显示在你列表中的标签。

VMess

vmess:// 链接是前缀加上一小段 JSON 文档的 Base64 编码。解码后是这样的:

{"v":"2","ps":"my-config","add":"server.example","port":"443","id":"00000000-0000-0000-0000-000000000000","aid":"0","scy":"auto","net":"ws","type":"none","host":"server.example","path":"/path","tls":"tls","sni":"server.example"}

add 和 port 是服务器,id 是 UUID,aid 是旧版的 alter ID(应为 0),net 是传输,host 和 path 属于 WebSocket,tls 用于启用 TLS,ps 是标签。要手动解码,取 vmess:// 之后的文本,用 base64 -d 处理即可。

Shadowsocks

ss://BASE64(method:password)@server.example:8388#my-config

@ 之前的部分是加密方式和密码,经过 Base64 编码。请使用 AEAD 加密方式。rc4-md5 或 aes-256-cfb 等较旧的流加密方式很弱。一些较旧的链接则是把整个 method:password@host:port 做 Base64 编码。

Trojan

trojan://[email protected]:443?security=tls&sni=server.example&type=tcp#my-config

@ 之前的部分是密码。Trojan 需要 TLS 来保护流量,所以应当带有 security=tls。

订阅

订阅地址返回一个链接列表,通常经过 Base64 编码,每行一个。应用会获取它、解码,并添加其中每一条链接。当服务商替换掉被封锁的服务器时,刷新订阅就能拿到新的服务器。

会让链接失效的错误

链接解析器会检查常见的错误:

  • UUID 或端口无效;
  • REALITY 缺少公钥或服务器名称;
  • VLESS 或 Trojan 未使用 TLS;
  • 开启了 allowInsecure,这会关闭证书校验;
  • 过时的 Shadowsocks 加密方式;
  • 非零的 VMess alter ID。

pbk 或 sid 中错一个字符,REALITY 配置就会在没有任何提示的情况下失败。见为什么连接可以成功却什么都加载不出来。

链接就是凭据

链接里的 UUID 或密码就是服务器的钥匙。任何拿到链接的人都能使用它,在共享服务器上,这还可能消耗你的流量配额。不要在公开聊天中发布链接;公开的链接也会更快被封。

本站的解析器在页面内解析,不会向任何地方发送内容:解析链接时,页面不会发出任何网络请求。即便如此,向任何在线工具粘贴链接时仍要谨慎。你随时可以像上面那样用 base64 -d 离线解码。

来源

带上你的配置,省去瞎猜。

App Store 免费下载,支持 iPhone、iPad 和 Mac。