本文重點

VMess 與 VLESS 是代理協定,不是用戶端名稱。先看一分鐘比較,再依需求檢查設定:VMess 有自己的加密機制,驗證依賴時間;常見的 VLESS 設定則由 TLS 或 REALITY 保護連線。一般使用者應保留訂閱提供的整組參數,不要只把協定下拉選單從 VMess 改成 VLESS。下文將依序說明加密、時間、傳輸、匯入與故障排除。

一分鐘比較:協定、傳輸與連線保護

節點編輯頁面 →「協定」、「傳輸方式」、「TLS」:這三處要分開檢查。VMess、VLESS 負責代理通訊格式與身分驗證;TCP、WebSocket 等負責承載資料;TLS 或 REALITY 則是另一層連線保護設定。訂閱中看似很長的一串參數,其實是在描述這些層如何組合。

檢查項目 VMess VLESS
身分憑證 通常使用 UUID,也要留意驗證相關欄位 通常使用 UUID,部分組合還要求 flow 等欄位相符
協定層加密 可使用協定本身的資料加密;實際方式取決於 security 設定 常見設定使用 encryption=none,由外層負責保護連線
時間要求 驗證有時間範圍限制,用戶端與伺服器需要準確的系統時間 沒有 VMess 式的時間驗證,但憑證等仍可能受時間影響
常見組合 VMess + WebSocket + TLS VLESS + WebSocket + TLS,或 VLESS + TCP + REALITY
能否直接互換 不行。伺服器協定、憑證、傳輸方式與安全參數都必須相符。

判斷方式:先核對整組參數,再比較協定名稱

匯入後無法連線時,先逐項比對連接埠、傳輸方式和 TLS/REALITY 設定是否符合服務提供者的說明。協定名稱相同,只代表其中一項相同,不能證明設定完整。

加密差異:VLESS 的 none 不代表明文連線

節點編輯頁面 →「加密方式」:先確認這個欄位屬於哪一層。VMess 的 security 與 VLESS 的 encryption 都不是 TLS 開關。常見 VLESS 連結中的 encryption=none,表示 VLESS 這一層不提供資料加密,不代表外層 TLS 也已關閉。

連接埠 443 也不能單獨證明已啟用 TLS。連接埠只是服務入口編號,實際行為取決於雙方設定。反過來說,TLS 也能使用其他連接埠,因此不要把訂閱中的連接埠一律改成 443。

時間驗證:VMess 無法連線時,先同步系統時間

Windows「設定」→「時間與語言」→「日期與時間」→「立即同步」;Android「設定」→「系統」→「日期與時間」→開啟自動設定時間。Android 選單名稱因廠牌而異,可在系統設定中搜尋「日期與時間」。先讓裝置取得正確時間,再重新連線。

VMess 的驗證依賴時間範圍。裝置休眠後時鐘偏移、手動調整過日期,或伺服器時間不準,都可能導致驗證失敗。記錄不一定會明確顯示「時間錯誤」,因此節點突然全部無法使用時,同步時間是成本很低的檢查方式。

  1. 確認已開啟自動設定時間,並完成一次網路同步。只調整時區顯示,不一定能修正實際時間。
  2. 重新連線至原節點並查看記錄,不要同時修改 UUID、傳輸方式和加密方式,否則很難判斷是哪一步讓連線恢復。
  3. 如果其他裝置連接同一節點正常,優先檢查本機時間、網路與用戶端設定;如果所有裝置同時失敗,再向服務提供者確認伺服器狀態。

VLESS 沒有 VMess 這種時間驗證依賴,但不代表可以忽略系統日期。TLS 憑證有有效期限,日期錯誤仍可能出現憑證尚未生效或已過期的提示。切換協定無法取代修正系統時間。

傳輸組合:如何判讀 WebSocket、TLS 與 REALITY

節點編輯頁面 →「傳輸方式」→對應的主機名稱、路徑或服務名稱:這些欄位必須與伺服器相符。VMess 和 VLESS 都能搭配多種傳輸方式,但特定組合能否使用,取決於用戶端實際呼叫的核心、核心版本與伺服器部署,不能只看用戶端名稱判斷。

訂閱中的組合 優先核對欄位 常見錯誤修改
VMess / VLESS + WebSocket + TLS 連接埠、WebSocket path、Host、TLS serverName 以為 Host 與 serverName 一定相同,便強行改成一致
VLESS + TCP + REALITY 伺服器名稱、公鑰、短 ID,以及服務提供者要求的 flow 漏填公鑰,或複製其他節點的短 ID
使用 gRPC 的設定 serviceName、TLS 設定及核心支援狀況 把 serviceName 當成 WebSocket path 填入

例如服務提供者要求 WebSocket 路徑為 /proxy,就應原樣保留;此路徑僅為欄位示例,不代表任何伺服器都能使用。網域和路徑通常各有用途,某些欄位也區分大小寫。成功匯入只代表連結已解析,不代表這些值已通過伺服器驗證。

REALITY 與 Vision 也不是同一個開關。REALITY 屬於連線安全設定;Vision 通常會以 xtls-rprx-vision 這類 flow 值呈現,只有特定組合才需要。不要替所有 VLESS 節點都加上 Vision,也不要把 REALITY 當成 WebSocket 的路徑格式。

匯入訂閱:保留參數,再選擇執行核心

v2rayN 可從主視窗的「訂閱群組」進入群組設定,新增服務提供者給的訂閱網址並更新;單一分享連結則可從「伺服器」中的剪貼簿匯入入口加入。v2rayNG 可在主畫面點選「+」→「從剪貼簿匯入」匯入單一設定,訂閱則在側邊欄的「訂閱群組設定」中新增。不同版本的文字可能略有差異,請依入口用途操作。

匯入方式:在不同裝置上檢查同一份設定

桌面端:v2rayN
  • 匯入後開啟節點編輯頁面,確認協定與傳輸設定沒有遺漏。
  • 使用 REALITY 設定時,確認實際呼叫的是支援該設定的 Xray 核心。
  • 連線後設定系統代理,再用瀏覽器測試。
Android:v2rayNG
  • 匯入同一份訂閱,確認節點參數是否完整。
  • 首次連線時允許系統 VPN 權限,並確認服務已啟動。
  • 若啟用依應用程式設定代理,請確認測試用的瀏覽器也在接管範圍內。

同一份訂閱可用於不同裝置,但仍需在兩端分別更新;本機編輯、分流規則和系統權限不會隨訂閱自動同步。

v2rayNG 使用 Xray 核心;v2flyNG 使用 v2fly 核心。不能因為名稱相近,就認為兩者功能完全相同。尤其遇到 REALITY 或特定 flow 欄位時,應確認核心是否支援;能辨識 VLESS,不代表支援所有 VLESS 組合。

保留訂閱提供的完整組合

建議

使用服務提供者明確支援的用戶端與核心,保留協定、傳輸、安全和驗證欄位。先確認基本連線可用,再調整本機路由。

適用情境:已有訂閱,希望穩定匯入並日常連線

手動填寫伺服器設定

逐項輸入 UUID、連接埠、傳輸參數與安全設定。只有了解伺服器的實際設定,才適合修改協定或測試新的組合。

適用情境:管理自己的伺服器,或依照服務提供者的說明排除問題

常見問題:切換協定、測速與連線驗證

可以直接把 VMess 節點改成 VLESS 嗎?

不能只改用戶端的下拉選單。先向服務提供者取得獨立的 VLESS 設定,或在自行管理的伺服器上設定相應入站,再匯入配套參數。即使位址、連接埠和 UUID 看起來相同,伺服器也不會自動切換協定。

VLESS 一定比 VMess 快嗎?

不能這樣判斷。先在相同網路、相同時段、連往相同目標的情況下比較實際連線,再觀察持續下載和連線穩定度。線路壅塞、伺服器負載與傳輸組合都可能影響結果;不同伺服器測得的一次延遲,無法證明協定孰優孰劣。

節點顯示有延遲,為什麼網頁還是開不了?

先確認測試的是 TCP 連通性,還是真正的代理請求。TCP 連接埠可連通不等於驗證成功。桌面端請檢查系統代理是否啟用;Android 請檢查 VPN 服務與依應用程式設定的代理範圍,再查看記錄中的驗證、交握或 DNS 錯誤。

VMess 的 alterId 應該填多少?

現代 VMess AEAD 設定通常使用 alterId=0。如果舊連結帶有非零值,不要反覆嘗試不同數字;請向服務提供者確認目前的伺服器驗證方式,並索取相符的設定。舊教學中的數值不能直接套用到新訂閱。

最後,請分開驗證「節點能連線」和「應用程式是否走代理」。先確認核心沒有回報設定錯誤,再確認目標應用程式確實由代理接管。協定只負責連線的一部分;系統代理、VPN 權限、DNS 和路由分流則分別決定流量如何抵達這條連線。