VMess、VLESS、Trojan、Shadowsocks 協定差異與使用情境選擇指南

比較四種代理協定的設計、加密方式與資源耗用,並依桌面使用、Android 省電及多裝置共用等情境提供選擇建議。

本文重點速覽

選擇協定前,先確認伺服器提供哪些選項,再核對用戶端核心、傳輸方式與安全層。本文整理四種協定的加密範圍,提供桌面、Android 與多裝置的選擇方向,並說明如何在相同條件下測試、排除線路差異。適合已取得節點或訂閱,想確認設定是否相符的使用者。

先釐清協定、傳輸方式、安全層與用戶端

節點名稱中的「VLESS + WebSocket + TLS」並非三種協定彼此競爭。VLESS 負責代理請求與身分驗證,WebSocket 用來傳輸資料,TLS 則保護這段連線的安全。只看到「VLESS」就判斷速度或安全性,資訊並不完整。

v2rayN 是桌面用戶端,不是第五種代理協定。它負責匯入、選擇節點及管理執行設定,實際連線則由選用的核心處理。Android 上的 v2rayNG 使用 Xray 核心,v2flyNG 使用 V2Fly 核心。即使屬於同一核心系列,也不代表各版本都支援相同的新功能。

四種協定的加密方式與相容條件

比較時應檢視完整組合,而不是直接將某種協定標示為「最快」或「最安全」。下表整理常見部署方式;實際可用欄位仍須以節點提供者的說明、核心版本與設定規範為準。

協定 驗證與加密 設定重點 適合沿用的條件
VMess 通常以 UUID 驗證;新式部署採用 VMess AEAD,資料加密方式視設定而定。 UUID、加密選項、傳輸參數、裝置時間。 已有穩定入口,且用戶端與伺服器參數明確相符。
VLESS 通常以 UUID 驗證;常見設定中的協定加密欄位為 none,安全保護仰賴搭配的安全層。 TLS 或 REALITY 參數;使用 Vision 時,也要確認 flow 與傳輸方式是否相容。 伺服器提供完整設定,且用戶端核心支援相應組合。
Trojan 使用密碼驗證,常見部署會透過 TLS 保護代理資料。 密碼、伺服器名稱、憑證驗證、連接埠。 已有維護正常的 TLS 入口,且希望參數關係清楚。
Shadowsocks 使用預先共用金鑰;新式 AEAD 與 Shadowsocks 2022 加密方法的金鑰要求不同。 加密方法、金鑰格式、TCP 與 UDP 支援。 已有相符的新式加密方法,且希望採用較精簡的連線設定。

VMess:沿用既有設定時,優先確認 AEAD 與時間

VMess 不代表「舊節點一定不能用」。既有線路運作穩定時,沒必要只因協定名稱而更換。新式 VMess 設定中的 alterId 通常為 0;不要照抄舊教學,任意填入非零值。系統時間明顯有誤可能導致驗證失敗,排查時先啟用自動校時,再確認 UUID 與傳輸參數。

VLESS:協定精簡,不代表可以省略安全層

常見 VLESS 節點的 encryption=none,不能單憑此設定就認定整條連線沒有保護:還要確認外層是否設定 TLS 或 REALITY。反過來,也不能因此認為「預設就安全」。REALITY、Vision 都不是 VLESS 的同義詞,支援情況必須逐項確認;節點未提供的功能,不要自行新增設定欄位。

Trojan 與 Shadowsocks:密碼相同也不一定能互通

Trojan 密碼不能取代 TLS 憑證驗證。遇到憑證錯誤時,應檢查網域、伺服器名稱與憑證鏈,不要長期略過驗證。Shadowsocks 則必須同時符合加密方法與金鑰;例如 chacha20-ietf-poly1305 和 2022-blake3-aes-128-gcm 不能任意互換,後者還要求符合規範的金鑰格式。

桌面日常使用:優先選擇設定完整、實測穩定的入口

以下「建議」僅適用於建立主要設定、伺服器可供選擇且用戶端支援相應功能的情況,並非通用排名。既有節點能穩定完成工作時,沿用通常比反覆更換協定省事。

VLESS:完整設定安全層

推薦

建立新入口時,可優先評估伺服器提供的 VLESS + TLS 或 REALITY 方案。確認核心支援、伺服器名稱與必要參數,不要拼湊不同節點的設定。

適用情境:可自行管理伺服器,且願意維護設定的桌面主要連線。

Trojan:現成的 TLS 入口

已有網域、憑證與穩定伺服器時,可直接依照提供者的參數設定。憑證續期與密碼管理也屬於日常維護工作。

適用情境:已有可用的 TLS 部署,希望沿用現成入口。

Shadowsocks:精簡設定

選擇用戶端與伺服器都支援的新式加密方法。設定欄位較少,但連線品質仍取決於線路環境,不能因此保證在任何網路下都更快。

適用情境:已有穩定伺服器,且重視設定簡潔的日常連線。

VMess:沿用穩定節點

訂閱中已有確認可用的 VMess 節點時,先實際測試存取。保留明確相符的傳輸與安全參數,不要只因協定名稱就更換線路。

適用情境:現有訂閱與裝置已穩定運作。

在 Windows 上使用 v2rayN 測試時,可先從主畫面的「系統代理」選單選擇「自動設定系統代理」,再確認瀏覽器是否遵循系統代理。不同版本的介面標籤可能略有差異;Linux、macOS 也要確認桌面環境的代理設定。切換目前使用的節點,不代表所有應用程式都已導入代理。

如何測量資源耗用:分開檢視連接埠、延遲與吞吐量

同一協定更換線路,造成的差異可能大於同一線路更換協定。CPU 是否支援硬體加速、TLS 交握次數、傳輸封裝與網路封包遺失率都會影響結果。「VLESS 一定更省電」或「Shadowsocks 一定更快」都缺乏測試條件。

443
TLS 伺服器常見連接埠,實際設定為準
10808
本機監聽連接埠範例,請確認用戶端設定
8388
Shadowsocks 伺服器連接埠範例,並非固定要求

三種連接埠分別代表遠端入口與本機監聽的差異。遠端使用 443 不會自動具備 HTTPS 的所有特性,也不代表憑證正確;瀏覽器若需手動設定代理,應填入本機位址與相應協定的監聽連接埠,不要直接填寫遠端伺服器位址。

  1. 固定測試環境:盡量使用同一台伺服器、同一個網路與同一個測試目標;固定路由模式,避免一組直連、另一組走代理。
  2. 先確認連線可用:TCPing 只能確認連接埠層級是否連通,無法證明驗證、TLS 與代理請求都已成功。接著應進行實際連線測試並開啟網頁。
  3. 重複取樣:每組進行 5 次實際連線測試,記錄失敗次數與成功結果的中位數。不要只挑最低值。
  4. 接著測試持續負載:存取相同的測試資源並持續 60 秒,記錄吞吐量與 CPU 使用率。行動裝置還要觀察相同使用時間內的耗電量,不要用一次短時間測試替協定排名。

Android 省電與多裝置共用:先控制流量接管範圍

行動裝置耗電往往來自背景應用程式持續連線、頻繁重新連線或訊號微弱,不只是加密運算。v2rayNG 的本機 VPN 流量接管方式與遠端代理協定屬於不同層級:啟用本機 VPN 介面,不代表遠端節點改用了其他協定。

日常使用時,可從 v2rayNG 的「設定」→「分應用程式代理」查看流量接管範圍,並確認目前模式是「僅代理所選應用程式」還是「略過所選應用程式」,實際文字依版本而異。若只需讓瀏覽器使用代理,先減少不相關的背景流量,再比較協定耗電,結果會更有參考價值。

雙裝置方案:共用訂閱,各自確認設定支援情況

桌面:v2rayN
  • 選擇支援目標協定與傳輸方式的核心。
  • 匯入後檢查伺服器、連接埠與安全層欄位。
  • 依應用程式需求選擇系統代理或其他流量接管方式。
  • 訂閱更新後,重新確認目前使用的節點。
Android:v2rayNG / v2flyNG
  • v2rayNG 使用 Xray,v2flyNG 使用 V2Fly。
  • 確認實際版本支援節點使用的功能。
  • 依需求設定分應用程式代理與路由規則。
  • 分別在 Wi-Fi 與行動網路下確認連線可用。

共用訂閱有助於同步設定來源,但無法保證不同核心、不同版本解析出的可用節點完全相同。

多裝置共用時,也要確認服務提供者對裝置數量、同時連線數及流量的限制。訂閱網址通常包含存取憑證,不要當成一般網址公開傳送。若自行架設服務並需要分別撤銷裝置權限,可為每台裝置配置獨立 UUID、密碼或金鑰,但伺服器必須支援相應的多使用者設定。

連線失敗與 UDP 需求:依症狀排查

影片能播放不代表 UDP 已連通,網頁無法開啟也不一定是選錯協定。先分辨用戶端未啟動、身分驗證失敗、憑證錯誤、DNS 解析失敗或路由規則未符合,再決定是否更換節點。

節點延遲很低,為什麼網頁還是開不起來?

先確認顯示的是 TCPing 結果,還是實際連線結果。在 v2rayN 查看目前使用的節點與系統代理狀態,再開啟用戶端記錄,檢查驗證、TLS 或連接埠占用錯誤。最後確認瀏覽器本身的代理設定,避免流量繞過系統代理。

VLESS 匯入成功,為什麼連線立刻失敗?

逐項確認伺服器、連接埠、UUID、傳輸方式與安全層。REALITY 入口還要檢查公鑰、shortId、伺服器名稱等提供者要求的欄位;Vision 設定則須符合 flow。匯入成功只代表連結已解析,不表示核心支援所有欄位。

Trojan 顯示憑證錯誤,可以直接略過驗證嗎?

先校正裝置時間,再確認伺服器名稱是否屬於憑證涵蓋的網域,以及伺服器憑證是否過期、憑證鏈是否完整。不要以長期略過憑證驗證取代修復;即使透過 IP 連線,也應保留正確的伺服器名稱設定。

語音或遊戲需要 UDP,四種協定都能直接使用嗎?

協定層支援 UDP,不代表目前連線路徑就能使用。請檢查本機流量接管方式、核心支援、伺服器 UDP 轉發與防火牆。Shadowsocks 的原生 UDP 轉發通常需要開放相應的 UDP 連接埠;Trojan 的常見實作會在 TLS 連線中封裝 UDP,應在封包遺失的網路環境下實際測試使用體驗。

選擇結論:依設定相符度、穩定性與維護成本排序

已取得訂閱的使用者,最有效率的順序是先匯入,再確認支援情況與實際存取,最後比較效能。自行架設服務時,才需要將網域憑證、使用者管理、安全層設定及更新維護一併納入協定選擇。

最後應記錄「協定 + 傳輸方式 + 安全層 + 核心版本 + 線路」的完整組合。若要整理匯入與代理設定,可接著閱讀使用文件;不確定相關概念時,請參閱術語手冊,比盲目修改多個欄位更容易找出問題。

下載v2rayN