VLESS 是什么?VLESS + Reality 原理与优缺点
VLESS 是 V2Ray/Xray 生态中的一种轻量代理协议,可以看作 VMess 的“减负版”:它去掉了协议自身的加密,只保留用户身份验证,把加密交给外层的 TLS 或 Reality 完成。近几年机场里常见的“VLESS + Reality”节点就是基于它。
VLESS 的原理简述
VLESS 的设计思路是“不重复加密”:
- 客户端连接服务端时,用一个 UUID 作为身份凭证;
- VLESS 协议本身不对数据加密,因为外层通常已经有 TLS 或 Reality 加密,再加一层会浪费性能;
- 传输层可以是 TCP、WebSocket、gRPC 等,取决于服务端部署方式。
因为协议头部很简单、没有额外加解密,VLESS 的性能开销比 VMess 更低。也正因为它自己不加密,VLESS 几乎不会单独使用,一般都和 TLS 或 Reality 搭配出现。
XTLS Vision 是什么
XTLS 是 Xray 项目提出的一类技术,目前常用的是 Vision 流控(配置里写作 xtls-rprx-vision)。
简单理解:用户访问的网站大多本身就是 HTTPS,代理时就会出现“TLS 里面再套 TLS”的情况。Vision 会对内层 TLS 的握手阶段做填充处理,减少“TLS 套 TLS”带来的特征,同时在合适的时候减少重复加密,降低 CPU 占用。它通常与 VLESS + TLS 或 VLESS + Reality 一起使用。
Reality 是什么
Reality 也是 Xray 项目提出的一种传输安全方案,可以替代传统 TLS:
- 传统 TLS 需要服务端有自己的域名和证书;
- Reality 则不需要自己的证书,服务端在握手时借用一个真实存在的外部网站(称为“目标网站”)的 TLS 特征,非授权访问者看到的就像在连接那个网站;
- 只有持有正确公钥和短 ID 的客户端,才能完成代理握手。
对机场来说,Reality 省去了域名和证书管理;对用户来说,它通常意味着连接表现更像普通 HTTPS 访问。导入订阅时,Reality 节点会多出 public-key、short-id、sni 等参数,这些都由机场生成,用户不需要改动。
VLESS 的优缺点
优点:
- 协议轻量,性能开销低
- 搭配 Reality 不依赖自有域名和证书
- 搭配 Vision 能减少 TLS 嵌套带来的冗余与特征
- 是 Xray 项目目前主推的组合之一,更新活跃
缺点:
- 参数较多,旧客户端可能不支持 Reality 或 Vision
- 由于 Reality 依赖 TCP + TLS 握手,不能直接搭配 CDN 中转使用
- 不同内核对新特性的支持进度不一致,偶尔会出现某个客户端导入后不可用的情况
与其他协议的对比
| 协议 | 自身加密 | 外层安全 | 需要自有证书 | 性能开销 |
|---|---|---|---|---|
| VLESS + Reality | 无 | Reality | 否 | 低 |
| VLESS + TLS | 无 | TLS | 是 | 低 |
| VMess | 有 | 可选 TLS | 视部署而定 | 中 |
| Trojan | 无 | TLS | 是 | 低 |
| Shadowsocks | 有 | 无 | 否 | 低 |
支持 VLESS 的常见客户端
- Clash Meta / Mihomo:支持 VLESS、Reality 和 Vision(原版 Clash 不支持 VLESS)
- sing-box:支持 VLESS、Reality 和 Vision
- v2rayN(Windows):通过 Xray 内核支持
- Shadowrocket(iOS):支持 VLESS,较新版本一般也支持 Reality
如果导入订阅后 VLESS 节点不显示或连不上,最常见的原因是客户端内核太旧,先更新到最新版本。
选购建议
- 看到机场提供“VLESS + Reality”节点,说明运维跟进了较新的方案,但协议不等于线路质量,晚高峰速度仍取决于线路(专线、中转或直连)。
- 确认自己的设备上有支持 Reality 的客户端,尤其是路由器、电视盒子等平台。
- 如果主要用 Clash 系客户端,记得选择基于 Mihomo 内核的版本。
常见问题:VLESS + Reality 一定比 Trojan 好吗?
不一定。Reality 解决的是“不需要自有证书、握手更像普通网站”的问题,但用户最终感受到的速度、延迟和晚高峰稳定性,主要取决于线路和服务器负载。在同一条线路上,不同协议的速度差别通常不大,稳定性则与所在地区的网络环境有关。最好的办法仍然是在自己的网络下多测几种协议。
常见问题:Reality 节点为什么填写的 SNI 是别的网站?
这是 Reality 的设计本身:服务端借用目标网站的 TLS 特征完成握手,所以客户端填写的 SNI 是那个目标网站的域名,而不是机场自己的域名。这个参数由机场在订阅中给出,用户不要随意修改,否则会导致握手失败。
常见问题:VLESS 能不能不加 TLS 使用?
技术上可以,但 VLESS 本身不加密,不搭配 TLS 或 Reality 时数据会以明文形式传输,非常不安全。正规机场提供的 VLESS 节点都会搭配外层加密,用户导入订阅时不需要额外处理。
常见问题:订阅里同时有 VLESS 和 VMess,该优先用哪个?
如果客户端都支持,可以优先试 VLESS 节点,因为它少了一层重复加密,理论上更省资源,在手机等设备上续航和发热表现可能略好。但实际差距通常不大,最终还是以同一地区、同一时段的实测速度和稳定性为准,哪个表现好就用哪个。
延伸阅读:VMess 是什么、Trojan 协议是什么、机场教程。