---
title: "VLESS"
description: "iPhone 版 Potatso 支持的 VLESS 传输方式、流控、加密、TLS 选项和链接，含 Vision、REALITY、XHTTP。"
---

> Documentation Index
> Fetch the complete documentation index at: https://potatso.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# VLESS

VLESS 服务器由**用户 ID**（一个 UUID）、**安全**方式（无、TLS 或 REALITY）和用来承载连接的**传输方式**（如 WebSocket 或 gRPC）描述。它还可以使用 **Vision 流控**（用于隐藏代理 HTTPS 流量中“TLS 套 TLS”的特征），以及 **VLESS Encryption**（Xray 的后量子加密层）。只有这些设置全部受支持，Potatso 才会连接服务器。你可以对照下面的表格，检查服务商提供的服务器设置，或其 `vless://` 链接中的设置。

你可以手动添加 VLESS 服务器、通过 [`vless://` 链接](#links)添加，或通过导入添加：

- Clash 或 Mihomo 订阅，
- Xray 或 V2Ray 配置。

Potatso 暂不从 sing-box 配置中导入 VLESS 服务器。请改用服务器的 `vless://` 链接。

下面每一项受支持的设置，都用真实的 [Xray](https://github.com/XTLS/Xray-core) 和 [sing-box](https://sing-box.sagernet.org/) 服务器测试过。

## 用户 ID {#user-id}

用户 ID 通常是 UUID，如 `3971e1b2-18a3-4f83-8fa6-bf9b142ee258`。Xray 服务器也接受最长 30 个字符的其他任意文本作为 ID，并按所有客户端相同的方式把它转换成 UUID。Potatso 也是如此，所以请原样使用服务商给出的 ID。

## 传输方式 {#transports}

| 传输方式 | 链接 `type` | 支持情况 | 测试环境 |
| --- | --- | --- | --- |
| 无传输方式（原始 TCP） | `tcp`、`raw`，或不填 | ✅ | Xray、sing-box |
| WebSocket | `ws` | ✅ 支持或不支持 early data 均可 | Xray、sing-box |
| gRPC | `grpc` | ✅ | Xray、sing-box |
| HTTP Upgrade | `httpupgrade` | ✅ | Xray、sing-box |
| [XHTTP](#xhttp) | `xhttp`, `splithttp` | ✅ 限 `stream-one` 和 `auto` 模式 | Xray |
| HTTP/2 | `http` 或 `h2` | ✅ | sing-box |
| mKCP | `kcp` | ❌ | |
| QUIC | `quic` | ❌ | |
| 带 HTTP 头部混淆的 TCP | `tcp` 加 `headerType=http` | ❌ | |

所有传输方式都支持搭配或不搭配 TLS，也都支持 UDP。如果服务器使用的传输方式 Potatso 不支持，Potatso 不会导入它。

Xray 已不再提供 HTTP/2 或 QUIC：原本使用它们的 Xray 服务器现在改用 XHTTP。

### XHTTP {#xhttp}

XHTTP（原 SplitHTTP）有多种模式。Potatso 把整条连接作为一个 HTTP 请求发送（`stream-one`）。Xray 服务器在默认的 `auto` 模式以及 `stream-one` 和 `stream-up` 模式下都接受这种方式，所以带有 `mode=auto` 或不带模式的链接都能使用。

Potatso 不支持 `packet-up` 和 `stream-up` 客户端模式，也不会导入要求这两种模式的链接。XHTTP 链接的 `extra` 参数不受支持，Potatso 会忽略它。Potatso 可以编辑使用 TLS 或 REALITY 的 XHTTP 服务器；导入的不带 TLS 的 XHTTP 服务器仍可使用。

## 安全 {#security}

| 安全方式 | 链接 `security` | 支持情况 |
| --- | --- | --- |
| 无 | `none`，或不填 | ✅ 除非服务器使用 [VLESS Encryption](#encryption)，否则你的流量不会被加密。 |
| TLS | `tls` | ✅ |
| [REALITY](#reality) | `reality` | ✅ 限无传输方式、gRPC 或 XHTTP |

### TLS 设置 {#tls}

| 设置 | Clash 键 | 链接参数 | 支持情况 |
| --- | --- | --- | --- |
| 服务器名称（SNI） | `servername` | `sni` | ✅ 未设置时，Potatso 使用服务器地址。 |
| ALPN | `alpn` | `alpn` | ✅ 未设置时，WebSocket 发送 `http/1.1`，gRPC、HTTP/2 和 XHTTP 发送 `h2`，其他不发送。 |
| 跳过证书验证 | `skip-cert-verify` | `allowInsecure`, `insecure` | ✅ |
| 证书固定（SHA-256） | `fingerprint` | `pcs` | ✅ 一个证书 |
| 按另一个名称验证证书 | | `vcn` | ❌ Potatso 按服务器名称检查证书。 |
| 浏览器指纹 | `client-fingerprint` | `fp` | ✅ `chrome`、`firefox`、`safari`、`ios`、`android`、`edge` 和 `random`。其他名称使用默认握手连接。 |
| Encrypted Client Hello（ECH） | `ech-opts` | `ech` | ✅ 需要链接或订阅中带有 ECH 配置 |
| 自定义 CA 证书 | | | ❌ |
| TLS 客户端证书 | `certificate`, `private-key` | | ❌ |

关闭证书验证，会让你与服务器之间的任何人都能读取你的流量。如果服务器使用自签名证书，请改为固定该证书：把证书的 SHA-256 设为证书固定值。Potatso 只固定一个证书；如果链接的 `pcs` 中列出了多个，Potatso 不会导入它。

浏览器指纹会让连接的 TLS 握手看起来像该浏览器的握手，但不会改变服务器必须支持的内容。

### REALITY {#reality}

REALITY 服务器借用另一个网站的 TLS 证书，所以不需要自己的证书。请按服务商提供的内容设置服务器的 **Reality 公钥**和 **Reality Short ID**，并把服务器名称设为服务器所借用的网站。链接中的 `spx`（spider path）并不是连接所必需的，Potatso 会忽略它。

REALITY 需要浏览器指纹：当你的链接或设置中没有指纹时，Potatso 使用 `chrome`。使用 REALITY 时，`android` 以及 Potatso 不认识的名称也会按 `chrome` 连接。

REALITY 适用于无传输方式、gRPC 和 XHTTP。

## Vision 流控 {#vision}

| 流控 | 链接 `flow` | 支持情况 |
| --- | --- | --- |
| 无 | 不填 | ✅ |
| Vision | `xtls-rprx-vision` | ✅ |
| Vision，允许 UDP 443 | `xtls-rprx-vision-udp443` | ✅ |
| `xtls-rprx-direct`、`xtls-rprx-splice` 及其他旧的 XTLS 流控 | | ❌ Xray 已将其移除 |

Vision 只能用于无传输方式并搭配 TLS 或 REALITY 的情况：对于使用其他传输方式或不带 TLS 的 Vision 服务器，Potatso 既不保存也不导入。它也可以与 TLS 之上的 VLESS Encryption 一起使用。

使用 Vision 时，UDP 按 Xray 的方式通过 Mux.Cool 承载，Xray 和 sing-box 服务器都接受这种方式。Xray 自带的客户端在使用 `xtls-rprx-vision` 时会拒绝发往 443 端口（QUIC）的 UDP，以便浏览器回退到 TCP；Potatso 对两种流控都会承载。

## VLESS Encryption {#encryption}

VLESS Encryption（`mlkem768x25519plus`）是 Xray 的后量子加密层：在 VLESS 连接之下进行 ML-KEM-768 与 X25519 密钥交换。服务器的 `decryption` 设置有一个与之对应、供客户端使用的 `encryption` 值，形如：

```text
mlkem768x25519plus.native.0rtt.<key>
```

| 设置 | 支持情况 |
| --- | --- |
| 模式 `native`、`xorpub` 和 `random` | ✅ |
| `1rtt` 和 `0rtt`（恢复连接） | ✅ |
| 使用 X25519 或 ML-KEM-768 密钥验证服务器 | ✅ |
| 无传输方式且不带 TLS | ✅ |
| 位于 TLS 之上 | ✅ 也可与 Vision 一起使用 |
| 不带 TLS 的 Vision | ❌ |

Potatso 会保留链接、Clash 订阅或 Xray 配置中的 `encryption` 值。目前还不能在服务器设置中手动输入。

## 多路复用 {#mux}

Potatso 可以让多条连接共用一条 VLESS 连接；在 Clash 订阅中用 `smux` 设置：

| 协议 | Clash `smux.protocol` | 服务器 | 支持情况 |
| --- | --- | --- | --- |
| Mux.Cool（Xray） | `muxcool` | Xray、sing-box | ✅ TCP 和 UDP |
| sing-box 多路复用 | `smux`, `yamux`, `h2mux` | 开启了多路复用的 sing-box | ✅ TCP 和 UDP，带或不带填充均可 |

使用 Vision 时，Mux.Cool 只承载 UDP，每条 TCP 连接仍各自独立，与 Xray 一致。sing-box 多路复用不能与 Vision 一起使用，Potatso 也不会导入要求这样做的 Vision 服务器。

Xray 配置中的 `mux` 设置不会被导入。

## UDP {#udp}

VLESS 通过与 TCP 相同的连接承载 UDP。与 Clash 一样，UDP 默认关闭。如果你的服务器转发 UDP，请在服务器设置中开启 UDP 转发：Xray 和 sing-box 都支持。Clash 订阅用 `udp: true` 开启它。

每个 UDP 流有自己到服务器的连接，每个目标有自己的流。Potatso 不支持 XUDP 或 packetaddr（链接中的 `packetEncoding`，订阅中的 `packet-encoding` 或 `xudp`）：服务器接受不带它们的 Potatso UDP，Potatso 会忽略该设置。

## 功能支持 {#features}

| 功能 | 支持情况 |
| --- | --- |
| [VLESS 协议](https://xtls.github.io/en/development/protocols/vless.html)版本 0：TCP 和 UDP 命令 | ✅ |
| UUID 和文本形式的用户 ID | ✅ |
| 一台服务器多个用户 | ✅ 各自使用自己的 ID |
| Vision 流控（`xtls-rprx-vision`、`-udp443`） | ✅ 见 [Vision](#vision) |
| VLESS Encryption（`mlkem768x25519plus`） | ✅ 见 [VLESS Encryption](#encryption) |
| TLS、REALITY、ECH、证书固定、浏览器指纹 | ✅ 见[安全](#security) |
| WebSocket、gRPC、HTTP Upgrade、HTTP/2 传输 | ✅ 见[传输方式](#transports) |
| XHTTP | `stream-one` 和 `auto` 模式 |
| mKCP、QUIC、TCP HTTP 头部混淆 | ❌ |
| Mux.Cool | ✅ |
| XUDP、packetaddr | ❌ UDP 使用普通的 UDP 命令 |
| sing-box 多路复用（smux、yamux、h2mux） | ✅ |
| 反向代理（VLESS `reverse`） | ❌ 这是服务器端的功能 |
| `vless://` 链接（[Xray 分享链接标准](https://github.com/XTLS/Xray-core/discussions/716)） | ✅ |

## `vless://` 链接 {#links}

`vless://` 链接用一行文字包含完整的服务器信息：

```text
vless://id@host:port?type=…&security=…&…#name
```

| 部分 | 说明 |
| --- | --- |
| `id` | 用户 ID。 |
| `host` | 服务器地址。IPv6 地址要放在方括号里，如 `[2001:db8::1]`。 |
| `port` | 服务器端口。 |
| `encryption` | `none`，或 [VLESS Encryption](#encryption) 的值。 |
| `flow` | 可选。`xtls-rprx-vision` 或 `xtls-rprx-vision-udp443`。 |
| `type` | [传输方式](#transports)。 |
| `security` | `none`、`tls` 或 `reality`。 |
| `sni`, `alpn`, `fp`, `pcs`, `ech`, `allowInsecure` | [TLS 设置](#tls)。 |
| `pbk`, `sid` | REALITY 的公钥和短 ID。 |
| `host`, `path` | WebSocket、HTTP Upgrade、HTTP/2 和 XHTTP 的 `Host` 请求头和路径。WebSocket 路径可以用 `?ed=2048` 携带 early data。 |
| `serviceName` | gRPC 服务名称。 |
| `mode` | XHTTP 模式。 |
| `name` | 可选。服务器在 Potatso 中的名称。 |

分享 VLESS 服务器时，Potatso 会写出这种形式的链接。

### 示例 {#link-examples}

每个示例都是要导入的链接。用户 ID 是 `3971e1b2-18a3-4f83-8fa6-bf9b142ee258`。

无传输方式的 TLS：

```text
vless://3971e1b2-18a3-4f83-8fa6-bf9b142ee258@vless.example.com:443?security=tls&sni=vless.example.com&type=tcp#TLS
```

借用 `www.example.com`、使用 Vision 的 REALITY：

```text
vless://3971e1b2-18a3-4f83-8fa6-bf9b142ee258@vless.example.com:443?security=reality&sni=www.example.com&fp=chrome&pbk=Z84J2IelR9ch3k8VtlVhhs5ycBUlXA7wHBWcBrjqnAw&sid=0123abcd&type=tcp&flow=xtls-rprx-vision#REALITY-Vision
```

通过 CDN 的 TLS WebSocket，带 2048 字节的 early data：

```text
vless://3971e1b2-18a3-4f83-8fa6-bf9b142ee258@vless.example.com:443?security=tls&type=ws&host=cdn.example.com&path=%2Fws%3Fed%3D2048#WebSocket
```

TLS 上的 gRPC：

```text
vless://3971e1b2-18a3-4f83-8fa6-bf9b142ee258@vless.example.com:443?security=tls&type=grpc&serviceName=gun#gRPC
```

TLS 上的 HTTP Upgrade：

```text
vless://3971e1b2-18a3-4f83-8fa6-bf9b142ee258@vless.example.com:443?security=tls&type=httpupgrade&host=cdn.example.com&path=%2Fup#HTTPUpgrade
```

TLS 上的 XHTTP：

```text
vless://3971e1b2-18a3-4f83-8fa6-bf9b142ee258@vless.example.com:443?security=tls&type=xhttp&host=cdn.example.com&path=%2Fxh&mode=auto#XHTTP
```

TLS 上的 HTTP/2：

```text
vless://3971e1b2-18a3-4f83-8fa6-bf9b142ee258@vless.example.com:443?security=tls&type=http&host=cdn.example.com&path=%2Fh2#HTTP2
```

不带 TLS 的 VLESS Encryption：

```text
vless://3971e1b2-18a3-4f83-8fa6-bf9b142ee258@vless.example.com:8443?security=none&encryption=mlkem768x25519plus.native.0rtt.u7dtLE6KgE4mjeBK3oYdNMw6MJB47Ijr_9AG2avwSmY&type=tcp#Encryption
```

Source: https://potatso.com/docs/zh/protocols/vless/index.mdx
