核心结论
VLESS 是一种不自带加密、只负责身份验证与转发的轻量协议;Reality 是它常用的传输安全层,客户端借用一个真实大型网站的 TLS 握手与服务器建立连接,无需自有域名和证书,未通过验证的探测会被转交给那个真实网站。它的优势是抗探测能力强、性能开销低,但不会改变出口 IP,也不会让线路变快。
一句话回答
VLESS + Reality 是目前直连节点中最常见的组合之一:VLESS 负责“认人”和转发,Reality 负责让这条连接在外观上和访问一个真实大型网站毫无区别。它不需要机场准备自己的域名和证书,抗主动探测能力强,同时性能开销很低。
但它不能让线路变快,也不会改变出口 IP。晚高峰卡不卡取决于线路,AI 能不能用取决于落地 IP,这两件事都不归协议管。
VLESS 是什么
VLESS 是 Xray 与 V2Ray 生态中的一种代理协议,可以理解为 VMess 的“瘦身版”。可以在术语表中查看简要定义,它的特点是:
- 用 UUID 做身份验证:客户端每次连接时携带 UUID,服务端核对通过才转发;
- 本身不加密:配置中的
encryption固定为none,安全性完全交给外层的 TLS 或 Reality; - 不校验时间:不像 VMess 那样要求客户端与服务器时间误差在约 90 秒以内,因时间不准导致的连接失败更少;
- 开销低:没有重复加密,CPU 占用和延迟都更友好。
正因为 VLESS 本身不加密,它必须和 TLS 或 Reality 搭配使用。
Reality 解决了什么问题
传统的 VLESS + TLS 或 Trojan 方案,需要机场准备一个域名并申请证书。这带来两个问题:一是域名本身可能被识别或封锁,二是握手中的证书、SNI 等特征可能暴露“这不是一个普通网站”。
Reality 的思路是:不用自己的证书,而是借用一个真实网站的 TLS 握手。服务端配置一个目标网站(通常是支持 TLS 1.3 的大型境外网站),客户端握手时用这个网站的域名作为 SNI,看起来就像普通用户在访问它。
握手过程分步理解
- 客户端模拟主流浏览器的 TLS 指纹(由
fp参数指定,如 chrome),向节点发起 TLS 1.3 握手,SNI 填写被借用的网站域名; - 客户端在握手信息中嵌入一段只有持有正确公钥与 short-id 才能生成的认证数据;
- 服务端收到握手后检查这段认证数据:通过,就进入代理流程;不通过,就把整个连接原样转交给真实目标网站;
- 因此,主动探测者连过来时,看到的是真实网站的证书和页面,很难判断这台服务器在做代理;
- 客户端不依赖证书颁发机构,而是用订阅里的公钥(
pbk)验证自己连上的是真正的节点服务器。
XTLS Vision 的作用
在代理里再跑 HTTPS 时,会出现“TLS 里面套 TLS”的现象,数据包的长度和时序有一定规律,可能被识别。xtls-rprx-vision 流控会识别内层 TLS 流量并减少这种二次封装特征,同时降低加解密开销。它通常与 Reality 一起用于 TCP 传输。
与其他常见方案的对比
| 对比项 | VLESS + Reality | VLESS + TLS(含 WS / CDN) | VMess + TLS | Trojan |
|---|---|---|---|---|
| 是否需要自有域名证书 | 不需要 | 需要 | 需要 | 需要 |
| 抗主动探测 | 强,探测被转交真实网站 | 中,依赖伪装站点 | 中 | 中,可回落到网页 |
| 性能开销 | 低 | 低到中(CDN 会增加延迟) | 中,存在二次加密 | 低 |
| 时间校验 | 无 | 无 | 有,约 90 秒 | 无 |
| 能否套 CDN | 不能 | 能 | 能 | 通常不套 |
| 常见用途 | 直连节点、落地节点 | 需要隐藏服务器 IP 的场景 | 老订阅兼容 | 通用 |
三种主流协议的更完整对比见 Trojan、VLESS、Shadowsocks 怎么选。
客户端支持情况
| 客户端 | 内核 | Reality | Vision 流控 | 说明 |
|---|---|---|---|---|
| Clash Verge Rev | Mihomo | 支持 | 支持 | 原版 Clash 内核不支持,需使用 Mihomo |
| sing-box 官方客户端 | sing-box | 支持 | 支持 | 需要较新版本 |
| v2rayN | Xray(默认) | 支持 | 支持 | Reality 由 Xray 项目推出,兼容性最好 |
| Shadowrocket | 自研 | 支持 | 支持 | iOS 端常用,建议保持 App 更新 |
以上为主流客户端的公开支持情况,具体以客户端实际版本与官方说明为准。旧版客户端遇到新参数时可能直接跳过节点或提示解析失败。
订阅里的参数怎么看
一条 VLESS + Reality 分享链接的结构大致如下(尖括号为占位内容):
vless://<UUID>@entry.example.com:443?encryption=none&flow=xtls-rprx-vision&security=reality&sni=<借用的网站域名>&fp=chrome&pbk=<服务端公钥>&sid=<short-id>&type=tcp#节点名称
在 Mihomo(Clash Verge Rev)配置中,对应字段是这样写的:
- name: 节点名称
type: vless
server: entry.example.com
port: 443
uuid: <UUID>
network: tcp
tls: true
flow: xtls-rprx-vision
servername: <借用的网站域名>
client-fingerprint: chrome
reality-opts:
public-key: <服务端公钥>
short-id: <short-id>
各参数含义:sni / servername 是借用的网站;pbk / public-key 用于验证服务器身份;sid / short-id 是认证用的短标识;fp / client-fingerprint 决定模拟哪种浏览器的握手指纹。这些都由机场生成,不要手动改动,改错任何一个都会导致连接失败。
验证节点是否正常工作
- 在客户端中选中 Reality 节点,做一次延迟测试;
- 在终端通过代理端口访问测试地址,确认能返回结果;
- 查看返回内容中的
loc=字段,确认出口地区与节点名称一致。
Windows PowerShell:
curl.exe -x http://127.0.0.1:7897 -s https://www.cloudflare.com/cdn-cgi/trace
macOS / Linux:
curl -x http://127.0.0.1:7897 -s https://www.cloudflare.com/cdn-cgi/trace | grep -E "^(ip|loc)="
端口 7897 是 Clash Verge Rev 常见的默认混合端口,以你客户端中的实际设置为准。如果返回握手错误,可参考 TLS 握手失败的排查方法。
本站收录品牌的协议情况
根据品牌资料,宇宙云(全 IEPL 专线)、光速云(IPLC + 原生 IP)、飞猫云、星岛梦、无忧链接都使用 VLESS 协议;二猫云使用 Shadowsocks 与 VMess;暮光网络和微风网络未公开协议。品牌资料只标注了 VLESS,没有注明是否搭配 Reality,这取决于各家对不同节点的配置,导入订阅后查看节点的 security 参数即可确认。
需要注意的是,这几家都以专线为主,专线节点的入口在国内,跨境段不走公网,是否使用 Reality 对体验影响不大;Reality 的价值在直连节点上体现得更明显。
什么情况下优先选 Reality 节点
- 订阅里同时有直连与中转节点:直连节点直接暴露在公网上,Reality 的抗探测优势最有意义;
- 所在网络对 UDP 不友好:Reality 基于 TCP,校园网、公司网络中通常比 Hysteria2 这类 UDP 协议更容易连通;
- 长期挂着的 AI 编程终端:VLESS 不校验时间,电脑休眠唤醒后因时间漂移断线的情况更少,但稳定性仍主要取决于线路与丢包。
如果你的订阅全部是专线节点,就不必为了 Reality 刻意更换机场,把精力放在晚高峰实测上更划算。
常见误区
- “换成 Reality 就不卡了”:Reality 只改变握手外观,晚高峰拥堵是线路问题,应看线路怎么选。
- “借用了某网站,出口 IP 就是那个网站”:出口 IP 始终是节点服务器自己的 IP,AI 服务看到的仍是落地 IP。
- “SNI 可以随便改”:SNI 必须与服务端配置的目标网站一致,随意修改会直接握手失败。
- “所有客户端都支持”:原版 Clash 内核和长期不更新的客户端并不支持,遇到节点缺失先升级内核。
- “Reality 比 Hysteria2 更快”:两者设计目标不同,Hysteria2 在高丢包网络下有速度优势,详见 Hysteria2 与 AnyTLS。
使用任何网络服务时,请遵守当地法律法规与服务条款。
常见问题
VLESS 本身有加密吗?
VLESS 协议本身不做加密(配置中 encryption 为 none),数据安全依赖外层的 TLS 或 Reality。单独使用 VLESS 而不搭配 TLS / Reality 是不安全的,正规机场也不会这样配置。
Reality 里填的那个网站域名是做什么的?
它是被“借用”的目标网站,客户端在握手时以这个域名作为 SNI,看起来就像在访问该网站。这个网站只用于伪装握手,你的流量最终仍从节点服务器出去,出口 IP 不会变成那个网站的 IP。
导入订阅后 Reality 节点全部连不上怎么办?
先确认客户端和内核是较新版本,旧版可能不认识 public-key、short-id 等参数;再检查系统时间是否准确,并换一个非 Reality 节点对比。仍不行可参考 TLS 握手失败的排查步骤。
专线节点也需要 Reality 吗?
不一定。专线节点的跨境段走专用通道,入口在国内,抗探测需求比直连节点低,很多机场会直接使用 VLESS 或 Shadowsocks。是否使用 Reality 取决于机场配置,以订阅中的 security 参数为准。
xtls-rprx-vision 必须开启吗?
这取决于服务端配置。服务端启用了 Vision 流控时,客户端的 flow 必须填写 xtls-rprx-vision,否则无法连接;机场订阅一般会自动带上这个参数,不需要手动修改。
本文最后更新于 。网络服务与 AI 平台政策变化较快,如发现信息过时,欢迎通过联系我们反馈。