VMess 和 VLESS 有什麼差別?一般使用者一分鐘看懂兩種協定

用白話說明 VMess 與 VLESS 在加密職責、效能開銷及傳輸層搭配上的差異,幫助一般使用者匯入節點時掌握該注意與不必糾結的事項。

本文速覽

VMess 在協定層內建加密與身分驗證,VLESS 則將內容加密交給 TLS、REALITY 等外層機制;一般使用者選擇節點時,應優先確認客戶端相容性、傳輸方式及伺服器參數是否完整,而不是只看協定名稱判斷速度。

一分鐘看懂:差別在於誰負責加密

VMess 和 VLESS 都用於在客戶端與伺服器之間傳遞代理流量,也都使用 UUID 識別使用者。兩者最核心的差別不是「能不能瀏覽網頁」,而是協定本身承擔了多少工作。VMess 在協定內完成身分驗證與資料加密;客戶端取得參數正確的 VMess 節點後,可由協定層直接處理這些安全職責。

VLESS 的設計更精簡,負責驗證身分與轉發資料,但不會在 VLESS 協定層重複加密應用程式資料,通常需要搭配 TLS 或 REALITY。可以把它理解成分工模式:VLESS 管理身分與資料轉交,TLS 或 REALITY 負責外層安全連線。這裡的「輕量」代表職責較少,不表示在任何網路環境下都會明顯更快。

VMess

協定層包含驗證與加密,現有節點及早期部署的涵蓋範圍較廣,常見組合包括 VMess over TCP、WebSocket 或 HTTP/2。

適合:繼續使用參數完整、運作穩定的現有 VMess 節點

VLESS

推薦

協定本身更精簡,通常搭配 TLS 或 REALITY,方便採用目前常見的 Xray 部署方式。

適合:建立新設定、使用 Xray 核心與現代傳輸安全組合

驗證、傳輸與安全層各自負責什麼

代理設定通常不只一層。最內層是 VMess 或 VLESS 這類代理協定;外層可能套用 TCP、WebSocket、gRPC 等傳輸方式;再外層可能使用 TLS 或 REALITY。節點能否連線,取決於各層參數是否逐項與伺服器相符。地址和連接埠相同,不代表兩個節點就能互換協定。

VMess 常見的分享連結以 vmess:// 開頭,內容通常編碼了伺服器地址、連接埠、UUID、傳輸類型、Host、路徑及 TLS 狀態。VLESS 連結以 vless:// 開頭,參數會直接顯示在 URI 中;使用 REALITY 時,還可能包含公鑰、短 ID、伺服器名稱及客戶端指紋等欄位。

比較項目 VMess VLESS
使用者身分 通常使用 36 個字元的標準 UUID 通常使用 36 個字元的標準 UUID
協定層加密 包含驗證與加密機制 不負責應用程式資料加密
常見安全組合 可單獨使用,也常搭配 TLS 通常搭配 TLS 或 REALITY
常見傳輸方式 TCP、WebSocket、HTTP/2 TCP、WebSocket、gRPC
匯入後重點檢查 UUID、傳輸方式、路徑、TLS 流控、傳輸、安全類型、公鑰與伺服器名稱

結論:協定名稱只是設定的一部分

看到 VLESS 不應直接理解為 REALITY,也不能看到 VMess 就認定沒有 TLS。應在客戶端編輯節點,逐項核對「傳輸協定」與「傳輸層安全性」欄位。

VLESS 一定比 VMess 快嗎?

在伺服器、線路及外層傳輸完全相同的前提下,VLESS 少了一層協定內加密,理論上的開銷較低。不過,對一般網頁、即時通訊及影片瀏覽而言,線路延遲、封包遺失、伺服器負載、TLS 交握及傳輸方式往往影響更大。協定層減少的些微處理,不一定會轉化為肉眼可見的頁面載入差異。

例如,同一條線路的延遲從 40 毫秒升至 180 毫秒,互動體驗會明顯改變;但本機處理協定資料時相差幾毫秒,通常很難單獨察覺。WebSocket 路徑設定錯誤、伺服器名稱不相符或 REALITY 缺少公鑰,更可能直接導致連線失敗,這些問題遠比理論上的效能差異重要。

36 個字元
標準 UUID 的常見長度
443
TLS 節點常見連接埠
10808
v2rayN 常見本機混合代理連接埠
TLS 1.3
常見的現代傳輸安全版本

比較速度時至少固定以下條件

匯入節點時需要檢查哪些欄位

在 v2rayN 中,可以先複製完整分享連結,再使用「伺服器」→「從剪貼簿匯入批次 URL」。匯入後不要急著連線,雙擊伺服器項目開啟編輯視窗,核對地址、連接埠、使用者 ID、傳輸協定及傳輸層安全性。需要調整本機代理參數時,入口通常位於「設定」→「參數設定」;不同介面版本的欄位分組可能略有差異,但參數意義不變。

在 v2rayNG 中,點選右上角的加號後選擇「從剪貼簿匯入」即可讀取分享連結,也可以掃描服務提供者提供的 QR Code。Android 端使用 Xray 核心時,可以處理常見的 VMess、VLESS、TLS 與 REALITY 設定。匯入完成後,應進入節點詳細資料確認連接埠及安全類型,而不是只看節點名稱。

VMess 常見識別形式
vmess://編碼後的設定內容

VLESS 常見識別形式
vless://使用者ID@伺服器地址:443?type=tcp&security=tls#節點名稱

VMess 節點重點核對

  1. UUID:必須與伺服器設定完全一致,複製時不能多出空格。
  2. 傳輸方式:TCP、WebSocket 與 HTTP/2 不能互相替代。
  3. 路徑與 Host:WebSocket 節點通常依賴路徑與主機欄位,少一個字元也可能導致連線失敗。
  4. TLS 狀態:伺服器端啟用 TLS 時,客戶端也必須啟用,並填寫正確的伺服器名稱。
  5. 額外 ID:現代 VMess AEAD 設定通常使用 alterId=0,不要照搬過時教學中的非零數值。

VLESS 節點重點核對

  1. UUID:用途是識別使用者,不是登入網頁所用的帳號密碼。
  2. 安全類型:確認使用 none、TLS 還是 REALITY;不能憑經驗自行切換此欄位。
  3. 流控:只有伺服器明確要求時才填寫,例如部分 TCP 與 REALITY 組合使用的 Vision 流控。
  4. 伺服器名稱:TLS 與 REALITY 設定通常需要正確的 SNI 或 serverName。
  5. REALITY 參數:公鑰、短 ID 及指紋應由節點提供者提供,缺少時不能由客戶端自行推導。

結論:匯入成功不等於參數可用

客戶端能識別分享連結,只代表格式可以解析。連線前花半分鐘核對連接埠、安全類型及傳輸方式,通常比反覆切換系統代理更快找到問題。

一般使用者該選 VMess 還是 VLESS?

如果手上已經有一個穩定的 VMess 節點,沒必要只因為 VLESS 設計較新就立即更換。客戶端持續支援 VMess,正常的 VMess AEAD 設定依然可以用於日常瀏覽。遷移協定通常需要同步修改伺服器端,單方面修改客戶端只會造成驗證或交握失敗。

如果正在新增一套設定,而且伺服器明確提供 VLESS 與 TLS 或 REALITY 參數,可以優先使用 VLESS。它與目前常見的 Xray 部署組合更直接,也減少協定層重複承擔加密工作的情況。這裡的「優先」仍以服務端提供的正式設定為準,不應自行猜測公鑰、流控或伺服器名稱。

依使用情境判斷
  • 現有 VMess 穩定運作:繼續使用,定期更新訂閱即可。
  • 訂閱同時提供兩種協定:分別測試穩定性,優先保留參數完整、日誌正常的節點。
  • 建立新的 Xray 設定:可優先考慮 VLESS 搭配 TLS 或 REALITY。
  • 低規格裝置:VLESS 的精簡設計有助於減少協定處理,但實際改善仍受線路與傳輸方式影響。
  • 需要多裝置同步:使用同一個訂閱地址維護節點,不要逐台手動改寫協定參數。

常見問題與排查方法

協定問題經常與系統代理、DNS 或訂閱更新混在一起。判斷故障時,應先確認節點參數是否完整,再查看核心日誌中的第一則錯誤。只盯著「測試逾時」結果,很難分辨是伺服器無法連線、TLS 名稱錯誤,還是本機代理沒有啟用。

VLESS 匯入後提示缺少公鑰,該怎麼辦?

開啟節點編輯頁面,確認安全類型是否為 REALITY。如果是,應從原始訂閱重新匯入 publicKey,而不是自行填寫;訂閱仍缺少欄位時,需要取得完整設定。

VMess 可以連線,但測速一直逾時,該怎麼辦?

先檢查 v2rayN 的系統代理狀態,再開啟核心日誌查看地址解析、TLS 交握或連接埠占用資訊。如果本機混合連接埠設為 10808,還要確認其他程式沒有占用同一連接埠。

同一個 UUID 可以同時用於兩種協定嗎?

UUID 字串可以相同,但伺服器必須分別設定對應的 VMess 或 VLESS 入站。只有相同 UUID,不能讓兩種協定自動相容。

VLESS 節點沒有 TLS 仍然可以使用嗎?

技術上取決於服務端部署方式,但 VLESS 本身不會加密應用程式資料。應嚴格按照服務端提供的安全類型使用,不要在公網設定中擅自關閉原有的 TLS 或 REALITY。

更新訂閱後協定變了,需要重新設定路由嗎?

通常不需要。路由分流主要依網域、IP、連接埠或程序比對,與出站節點採用 VMess 還是 VLESS 沒有直接關係;但要確認規則最後指向的新節點或群組仍然存在。

如果日誌出現「connection refused」,優先確認伺服器地址與連接埠;出現憑證名稱相關錯誤時,檢查 TLS 的 serverName;REALITY 交握失敗則重點檢查公鑰、短 ID、指紋與伺服器名稱。排查時一次只修改一個欄位,每次修改後重新套用設定,避免同時改動多項而無法判斷原因。

下載 V2Ray 客戶端 依平台選擇 v2rayN 或 Android 客戶端