簡單說:VLESS 不試圖把「VPN」藏在自己的加密裡,而是讓整個連線看起來就是一次普通的 HTTPS 訪問。對做深度包檢測的網路來說,這是本質區別:WireGuard 和 OpenVPN 從頭幾個包就能被認出來,而 VLESS + Reality 從外面看和開啟一個網站沒有任何差別。
| VLESS+Reality | WireGuard | |
|---|---|---|
| 看起來像普通 HTTPS | ✓ | ✗ |
| 抗深度檢測 | ✓ | ✗ |
| 原始速度 | 好 | 更快 |
| 配置簡單 | 一般 | 簡單 |
VLESS 是怎麼工作的
VLESS 是 Xray / V2Ray 家族的協議,名字裡的「less」不是隨便起的:它是 VMess 的精簡版,去掉了自帶的加密和多餘的頭部。VLESS 本身不加密資料,它依賴傳輸層(也就是 TLS)來加密。這正是核心思路:既然連線已經包在 TLS 裡,再套一層加密只會增加開銷和「指紋」。
實際連線長這樣:裝置 → 到伺服器 443 埠的 TLS 連線 → 在 TLS 裡,VLESS 把你的請求轉發到網際網路。電信業者看到的是 443 埠上的 TLS,和你開啟任何網站時一模一樣。
伺服器靠 UUID 識別使用者,UUID 在 TLS 建立之後才傳輸,外部看不到。
| VLESS 由什麼組成 | 各管什麼 |
|---|---|
| 傳輸 | 資料包怎麼走 |
| 偽裝 | 從外面看像什麼 |
| 定址 | 誰對應哪把金鑰 |
加密借用 TLS,VLESS 自己不發明密碼學,這是優點不是缺點。
Reality 解決了什麼
普通 TLS 需要證書,證書對應一個域名。如果電信業者統計發現成千上萬的人連向 vpn-server.example,而這個域名上並沒有任何網站,這就很可疑。
Reality 換了個思路:伺服器根本不出示自己的證書,而是在握手階段「借用」一個真實大站的證書,比如某個微軟或蘋果的服務域名,這類域名沒人敢封。在觀察者看來,這次連線就是訪問那個大站:一樣的 SNI、一樣的證書、一樣的包序列。如果有人沒帶正確的金鑰來「探測」這臺伺服器,伺服器會老老實實把他轉發到真實網站,探測者看到的就是真實網站。
這就是 VLESS 連結裡 security=reality、sni= 和 pbk=(公鑰,伺服器用它區分自己人和路人)這幾個引數的含義。
XTLS-Vision 解決了什麼
還有一個問題:如果在 TLS 隧道里再傳一層 TLS(而現代流量幾乎都是 TLS),就形成「TLS 套 TLS」。這種巢狀可以透過資料包的大小和節奏被檢測出來。
XTLS-Vision(連結裡的 flow=xtls-rprx-vision)在內層 TLS 握手完成後,讓內層資料直接透過,不再二次封裝。流量的形態迴歸正常,CPU 開銷也更低。
| 模式 | 外面看到的 |
|---|---|
| 普通 TLS | 你的證書、你的域名,域名可被列表收錄 |
| Reality | 某個真實網站的握手,像你在訪問它 |
VLESS 和 WireGuard 比
WireGuard 是很好的協議:程式碼少、密碼學現代、速度接近裸連。但它有個在某些網路裡變成缺點的特性:走 UDP,握手包大小固定且可辨認。檢測系統不需要解密,看頭幾個位元組和包長就知道是 WireGuard。
- 速度: 在沒有干擾的網路裡 WireGuard 略快,開銷更小。
- 隱蔽性: VLESS + Reality 看起來是 HTTPS;WireGuard 看起來就是 WireGuard。
- 行動網路: 部分電信業者限制或降速 UDP;443 埠的 TLS 在任何有網的地方都能走。
- 耗電: WireGuard 在長連線上更省,VLESS 走 TCP/TLS 在實際使用中相差不大。
VLESS 和 OpenVPN 比
OpenVPN 比 VLESS 老二十年。它可靠,但流量特徵同樣明顯,而且因為執行在使用者態、協議開銷大,速度明顯落後於前兩者。今天用 OpenVPN 的理由主要是「已經部署了」或者「要相容企業裝置」。個人使用,2026 年幾乎沒有理由選它。
VLESS 和 Trojan、Hysteria2 比
Trojan 的思路和 VLESS + TLS 接近(偽裝成 HTTPS),但需要自己的域名和證書,沒有 Reality 那種「借證書」的能力。Hysteria2 基於 QUIC(UDP),在丟包嚴重的線路上速度優勢明顯,但和 WireGuard 一樣受限於 UDP 在部分網路裡的待遇。實際使用中,很多機場同時提供 VLESS 和 Hysteria2 節點,讓客戶端按網路情況選。
| 對比 | VLESS + Reality | WireGuard | OpenVPN |
|---|---|---|---|
| 速度 | 快 | 最快 | 慢 |
| 不易被識別 | 最好 | 差 | 差 |
| 配置難度 | 中 | 最簡單 | 中 |
| 程式碼成熟度 | 較新 | 較新 | 最久 |
一條 VLESS 連結長什麼樣
vless://UUID@host:443?security=reality&sni=example.com&fp=chrome&pbk=公鑰&flow=xtls-rprx-vision&type=tcp#名稱
UUID:你的身份標識;host:443:伺服器地址和埠,443 是標準 HTTPS 埠;security=reality和sni=:偽裝成哪個網站;fp=chrome:模擬瀏覽器的 TLS 指紋;flow=xtls-rprx-vision:不做二次加密的模式。
服務商通常不給單條連結,而是給訂閱連結:客戶端從這個地址自動拉取節點列表並保持更新。什麼是訂閱、怎麼匯入,見機場是什麼和iPhone 匯入教程。
| VLESS 做不到的事 | 說明 |
|---|---|
| 讓你匿名 | 做不到 |
| 隱藏你登入過哪些帳號 | 做不到 |
| 保證任何網路都能通 | 做不到 |
| 代替更新和強密碼 | 做不到 |
VLESS 做不到的事
VLESS 偽裝的是連線,不是你。網站照樣能透過 Cookie、登入狀態和瀏覽器指紋認出你。電信業者照樣知道你和某個 IP 建立了 TLS 連線,只是看不到裡面,也分不出它和普通網站有什麼區別。和任何隧道一樣,如果客戶端 DNS 或 IPv6 配置不當,照樣會洩漏。
連結在手但引數看不懂時,把識別符號刪掉再問。
解釋我這條 VLESS 連結的引數。
識別符號和地址我已經刪掉,形如:
vless://XXX@XXX:443?security=(你的值)
&type=(你的值)&sni=(你的值)
&fp=(你的值)&flow=(你的值)
告訴我每個引數的含義、我處在哪種模式,
以及這種配置一般在什麼網路能通、什麼網路不能。
不要編造我連結裡沒有的引數。
小結
- VLESS 自己不加密,依賴 TLS,因此看起來就是 HTTPS。
- Reality 借用真實大站的證書,伺服器沒有「自己的可疑域名」。
- XTLS-Vision 消除了會暴露隧道的雙層加密。
- WireGuard 在乾淨網路裡更快但容易被識別;OpenVPN 已經過時。
- 404 VPN 使用 VLESS + TLS,並正在所有節點上增加 Reality 作為第二種連線方式。