VLESS 出站字段
本页说明 Clash 生态客户端 proxies 数组中的 VLESS 出站字段。VLESS 的用户认证、流控、协议加密、传输层和 TLS 安全层是不同层级,不能用一个字段推断其他层级。
最小配置只包含通用必填字段与 uuid。flow、encryption、TLS、Reality、UDP 和非 TCP 传输层都应按服务端实际配置添加。
name必填- 节点名称,在同一份配置中不可重复。
type必填- 固定填写
vless,需要使用支持 VLESS 的现代内核。 server必填- VLESS 服务端的域名或 IP 地址。
port必填- 服务端监听端口,必须与服务端一致。
uuid必填- VLESS 用户 ID,必须使用服务端分配的值。
Flow 与 XTLS Vision
flow 选择 VLESS 子协议。当前字段参考只列出 xtls-rprx-vision,不填写时表示不使用该流控。
flow可选- 当前可用值为
xtls-rprx-vision,必须与服务端用户配置一致。 xtls-rprx-vision流控- Vision 不会自动开启 TLS 或 Reality,也不会替代
uuid或encryption。
VLESS Encryption
encryption 是 VLESS 协议层的可选加密配置,不是 VMess 的 cipher,也不会自动启用 TLS 或 Reality。当前官方基础示例使用空字符串,表示不启用新的 VLESS Encryption 参数。
启用时应直接使用服务端生成并下发的完整字符串。该字符串包含算法、工作模式、握手模式、可选填充和密钥材料,客户端与服务端必须成对配置。
encryption按服务端- 未启用新方案时使用官方示例中的空字符串;服务端启用后必须填写完整匹配值。
mlkem768x25519plus算法- 当前文档给出的混合密钥交换方案标识,不应手工改成未记录的算法名。
native / xorpub / random三选一- 工作模式只能选择一个,其中
native和xorpub配合 Vision 时可以使用 Splice。 1rtt / 0rtt二选一- 握手模式只能选择一个;0-RTT 复用还取决于服务端 ticket 设置。
vless-x25519生成命令- 使用
mihomo generate vless-x25519生成 X25519 相关材料,不要自行编造。 vless-mlkem768生成命令- 使用
mihomo generate vless-mlkem768生成 ML-KEM-768 相关材料。 padding仅 1-RTT- 填充参数只作用于 1-RTT,可省略;首段填充必须为 100% 概率且至少 35 字节。
UDP 与数据包编码
udp 控制是否允许 UDP 通过节点,packet-encoding 控制 VLESS 的 UDP 封装方式。它们属于不同字段。
udp可选- 通用字段,默认
false。需要代理 UDP 时设为true,同时确认服务端支持。 packet-encoding可选- 当前 VLESS 实现留空时默认使用
xudp;也可显式填写packetaddr或xudp,必须与服务端实现相容。
TLS、Reality 与证书字段
TLS 与 Reality 位于传输安全层。reality-opts 非空时启用 Reality,并且 tls 必须同时设为 true,否则当前内核会拒绝创建节点。
tlsReality 时必填- 设为
true后启用 TLS;只要填写reality-opts就必须同时启用。 servername可选- VLESS 的 SNI 字段。通常留空时使用
server;WebSocket 配置存在 Host 请求头时,当前实现会优先把该 Host 用作 SNI。 alpn可选- TLS 应用层协议列表,必须与选定传输层和服务端一致。
client-fingerprint可选- uTLS 客户端指纹,例如
chrome,不是证书指纹。 fingerprint可选- 服务端证书的 SHA-256 指纹,与
client-fingerprint含义不同。 reality-opts.public-keyReality- 服务端 Reality 私钥对应的公钥。
reality-opts.short-idReality- 填写服务端允许的 short ID 之一。
reality-opts.support-x25519mlkem768可选- 用于声明支持 X25519-MLKEM768 密钥交换,需服务端同时支持。
skip-cert-verify谨慎- 跳过证书验证会降低身份验证能力,不应作为长期排障方案。
选择 VLESS 传输层
未填写 network 或填写不支持的值时,当前内核按 TCP 处理。对应的 *-opts 只在选中该 network 时生效。
| network | 配套字段 | 适用说明 |
|---|---|---|
| tcp | 无专用 opts | 默认传输层,可配合 Vision |
| ws | ws-opts | WebSocket 路径、Host 和 Early Data |
| http | http-opts | HTTP 方法、路径和请求头 |
| h2 | h2-opts | HTTP/2 Host 和路径 |
| grpc | grpc-opts | gRPC 服务名和连接参数 |
| xhttp | xhttp-opts | 仅 VLESS 支持的 XHTTP 传输 |
xhttp-opts.path按服务端- XHTTP 请求路径,必须与服务端或反向代理路由一致。
xhttp-opts.host按服务端- XHTTP Host,与
servername作用不同,按服务端部署填写。 xhttp-opts.mode可选- 可用
auto、stream-one、stream-up或packet-up。
Reality 与 Vision 配置示例
示例展示 VLESS、Reality 与 Vision 的字段层级。这里保留 encryption 空字符串,表示未启用新的 VLESS Encryption 参数。
- 不要把 VMess 的
alterId或cipher写进 VLESS 节点。 - 服务端启用 VLESS Encryption 时,客户端仍使用空字符串会导致配置不匹配。
flow: xtls-rprx-vision、TLS 和 Reality 是三个独立配置点,必须分别核对。- XHTTP 的路径、Host、模式或 ALPN 与服务端不一致时,连接可能建立失败。
proxies:
- name: vless-reality-vision
type: vless
server: 203.0.113.10
port: 443
uuid: 00000000-0000-0000-0000-000000000001
udp: true
packet-encoding: xudp
flow: xtls-rprx-vision
encryption: ""
tls: true
servername: cover.example.com
client-fingerprint: chrome
reality-opts:
public-key: your-public-key
short-id: your-short-id
network: tcp