本文適合需要在 VMess、VLESS、Trojan 與 Shadowsocks 之間做選擇的 v2rayN、v2rayNG 和 v2flyNG 使用者。重點比較加密職責、傳輸組合、握手成本、時間同步、裝置負載與遷移難度,並提供行動網路、家用寬頻和舊裝置的實際設定順序。
先統一比較維度:協議不等於完整連線方案
VMess、VLESS、Trojan 和 Shadowsocks 首先描述的是代理協議。實際連線還包含傳輸層、加密層、網域解析、路由規則與用戶端核心。看到節點名稱寫著「VLESS」並不能直接判斷效能,還要檢查 TCP、WebSocket、gRPC、TLS、Reality 等參數是否相符。
同一協議套用在不同傳輸組合中,連線特徵與開銷可能有明顯差異。例如 VLESS over TCP with Reality 與 VLESS over WebSocket with TLS 是兩種不同方案;VMess over TCP 與 VMess over WebSocket 也不能只因為「都是 VMess」就一概而論。選擇時應先確認伺服器提供哪些組合,再判斷用戶端是否完整支援。
| 比較項目 | VMess | VLESS | Trojan | Shadowsocks |
|---|---|---|---|---|
| 協議本身加密 | 具備驗證與加密機制 | 不負責內容加密 | 依賴標準 TLS | 使用 AEAD 加密 |
| 常見憑證 | UUID | UUID | 密碼 | 密碼與加密方式 |
| 時間敏感度 | 較高,建議自動校時 | 通常較低 | 取決於 TLS 與憑證狀態 | 通常較低 |
| 常見優勢 | 舊訂閱相容範圍廣 | 參數精簡,適合現代傳輸 | TLS 部署邏輯清楚 | 實作成熟,裝置負擔較低 |
四種協議的核心差異與適用範圍
VMess 是 V2Ray 體系中較早普及的協議,節點通常使用 UUID 驗證。它對系統時間較敏感,裝置時間偏差過大時可能發生驗證失敗。現有訂閱中仍有大量 VMess 節點,因此更適合作為相容舊伺服器與舊設定的保留選項,而不是只憑名稱認定為預設首選。
VLESS 將內容加密交由 TLS、Reality 等外層安全機制處理,協議欄位更精簡。使用 Xray 核心時,VLESS 常與 TCP、gRPC、WebSocket、TLS 或 Reality 組合。它的優勢來自完整組合,而不是「取消加密」本身;若在不可信網路上傳輸時沒有適當的外層保護,就不能算是完整的安全方案。
Trojan 通常運作在 TLS 之上,透過密碼完成驗證。設定時必須準確填寫伺服器位址、連接埠、密碼、SNI 或伺服器名稱,並正確處理憑證驗證。若訂閱要求填寫網域名稱,卻手動改成伺服器 IP,TLS 名稱比對可能失敗。遇到憑證錯誤時,應先核對系統時間、網域與 SNI,不應直接將略過驗證設為長期選項。
Shadowsocks 使用預先共用的密碼與 AEAD 加密方式,設定欄位較少,適合效能有限的裝置或結構簡單的伺服器。它不會自動提供複雜的偽裝能力,實際網路表現取決於伺服器實作、所選加密方式與承載方式。匯入舊節點時,也要確認用戶端核心是否支援對應的加密方式。
VLESS
推薦適合搭配 TLS、Reality 等現代連線方式,欄位清楚,方便在 Xray 核心用戶端中統一管理。
適合:新部署、行動網路主力、長期維護
VMess
涵蓋許多舊訂閱與既有伺服器,但需要留意裝置時間、傳輸參數與安全欄位。
適合:舊節點相容、既有設定遷移
Trojan
以 TLS 為基礎,部署結構直觀,對網域、憑證與伺服器名稱的準確性要求較高。
適合:固定網域、標準 TLS 部署
Shadowsocks
欄位少、實作成熟,在舊硬體與簡單轉發情境中仍能降低設定負擔。
適合:低負載裝置、輕量相容方案
選擇協議前的三項條件
- 優先確認伺服器支援:用戶端不能自行將 VMess 節點改成 VLESS。協議、連接埠與傳輸參數必須由伺服器端共同提供。
- 優先確認核心支援:v2rayNG 使用 Xray 核心時,可處理常見的 VLESS、VMess、Trojan 與 Shadowsocks 設定;v2flyNG 使用 v2fly 核心時,應依實際核心能力核對較新的擴充參數。
- 優先考量穩定性:在相同線路下,連續連線成功率、首包延遲與切換網路後的恢復速度,通常比單次測速峰值更具參考價值。
行動網路、家用寬頻與舊裝置如何選擇
行動網路的主要變因包括基地台切換、網路位址變更、短暫丟包與背景限制。協議名稱無法消除這些問題。優先選擇伺服器明確提供、用戶端核心完整支援的 VLESS 組合,再觀察從無線網路切換到行動數據後的恢復時間。若切換網路後長時間沒有流量,可在 v2rayNG 中停止連線後重新啟動,並檢查裝置廠商的電池策略是否限制背景網路。
家用寬頻較適合用來比較穩定性。測試時固定相同裝置、相同接入方式與相同目標網站,分別記錄晚間尖峰時段的連線耗時、持續下載與影片拖曳表現。若 VLESS 與 Trojan 位於不同伺服器,測試結果主要可能反映線路差異,不能直接歸因於協議。
舊裝置應減少不必要的並行連線、複雜路由與高頻測速。Shadowsocks 的設定欄位相對精簡,在伺服器已提供時可作為輕量選項;既有穩定的 VMess 節點也不必只為了更換名稱而遷移。效能應以 CPU 使用率、發熱、重新連線次數與實際吞吐量為準。
推薦方案:桌面與 Android 使用同一訂閱驗證
桌面端(v2rayN)
- 在「訂閱群組」→「訂閱群組設定」新增訂閱
- 優先使用伺服器推薦的 Xray 核心組合
- 在「設定」→「參數設定」核對本機連接埠
- 使用核心記錄檔查看握手與連線錯誤
Android 端(v2rayNG)
- 更新相同訂閱後選擇同名節點
- 在「設定」→「路由設定」核對分流模式
- 行動數據與無線網路各測試三次
- 需要時啟用分應用程式代理,減少背景流量
同一節點在兩端參數一致時,更容易區分協議設定、裝置網路與用戶端設定這三類問題。
依情境提供直接結論
- 行動網路主力:伺服器提供 VLESS 與相符的安全傳輸時,優先測試 VLESS,重點觀察切換網路後的恢復與背景保活。
- 家用寬頻常駐:VLESS 與 Trojan 都可作為穩定方案,使用相同線路與相同時段進行至少三輪比較。
- 舊 Android 裝置:優先保留已驗證穩定的 Shadowsocks 或 VMess,不要啟用沒有實際需求的並行連線與複雜規則。
- 舊訂閱遷移:先完整匯入,不要批次手動修改協議欄位;確認新舊節點都能連線後,再逐項淘汰失效設定。
在 v2rayN、v2rayNG 與 v2flyNG 中核對參數
匯入訂閱後,先不要立即修改節點。訂閱內容可能包含協議、位址、連接埠、使用者 ID、密碼、傳輸、路徑、Host、SNI、指紋與流量控制等參數。將節點名稱中的欄位當成實際設定並手動修改,容易造成「看起來一樣,實際卻連不上」的情況。
v2rayN 桌面端可先開啟「訂閱群組」→「更新全部訂閱」,再選擇節點並查看設定詳情。接著進入「設定」→「參數設定」,確認本機 SOCKS 與 HTTP 監聽連接埠沒有被其他程式占用。若使用範例連接埠 10808 和 10809,系統中的其他代理工具不能同時監聽相同位址與連接埠。
v2rayNG 可透過右上角的新增入口,從剪貼簿匯入單一連結,也可在訂閱群組中新增訂閱位址。連線前檢查目前活動設定,連線後開啟即時記錄。v2flyNG 使用 v2fly 核心,匯入較新的 VLESS 擴充設定時,應先確認訂閱提供者標示的核心要求,不能假設不同核心對所有擴充欄位的支援完全一致。
核對順序
1. protocol:vmess / vless / trojan / shadowsocks
2. address:伺服器網域名稱或位址
3. port:伺服器監聽連接埠,例如 443
4. credential:UUID、密碼或 Shadowsocks 金鑰
5. transport:tcp / ws / grpc
6. security:tls / reality / 伺服器指定值
7. serverName:TLS 或 Reality 使用的伺服器名稱
8. path 或 serviceName:僅在對應傳輸需要時填寫
發生連線錯誤時依記錄分類
- 連線逾時:先檢查位址、連接埠、目前網路與伺服器狀態。逾時通常發生在建立協議工作階段之前。
- 驗證失敗:核對 UUID、密碼、加密方式與裝置時間。VMess 設定尤其應先啟用系統自動校時。
- TLS 握手失敗:檢查網域、SNI、系統時間與憑證鏈。Trojan 以及使用 TLS 的 VLESS、VMess 都可能出現這類錯誤。
- 連線成功但沒有流量:檢查系統代理、VPN 權限、DNS、路由規則與分應用程式代理範圍,不要立刻更換協議。
- 更新訂閱後節點消失:先確認目前的訂閱群組與篩選條件,再檢查訂閱來源是否回傳了新的節點清單。
用可重複的測試取代單次峰值判斷
協議測試應盡量排除線路與伺服器負載差異。最可靠的方法是在同一台伺服器、相同出口頻寬與相近設定下比較;如果條件不允許,就將結論限定為「這幾個具體節點的表現」,不要擴大成協議的普遍結論。
首包延遲比單純的網路往返時間更接近日常瀏覽體驗。可以連續開啟三個未快取頁面,記錄從發出請求到正文出現的時間。影片與大型檔案則應觀察持續吞吐量及一分鐘內的速度波動。行動網路還應增加一次無線網路與行動數據互切測試。
測試時關閉其他下載工作,固定 DNS 與路由模式,並在每輪開始前確認活動節點。至少執行三輪,取中位數而非最高值。若三輪結果差異超過 30%,優先判斷線路壅塞、訊號波動或伺服器負載,不要急著歸因於協議。
- 更新訂閱並記錄節點的協議、位址、連接埠、傳輸與安全層。
- 固定用戶端、網路與路由模式,連續連線三次,記錄成功次數。
- 分別記錄 DNS 解析、首包、持續下載與切換網路後的恢復表現。
- 查看記錄中是否出現重試、握手失敗、連線重設或 DNS 逾時。
- 保留表現穩定的兩個節點,一個作為主要使用,另一個作為故障切換。
| 指標 | 測試方式 | 重點判斷 |
|---|---|---|
| 連線成功率 | 每個節點連續連線 5 次 | 是否出現逾時或握手失敗 |
| 首包時間 | 開啟 3 個未快取頁面並取中位數 | 日常瀏覽等待是否穩定 |
| 持續吞吐量 | 固定目標連續傳輸 60 秒 | 速度是否頻繁歸零或大幅波動 |
| 切換網路後的恢復 | 無線網路與行動數據互切 3 次 | 是否需要手動重新啟動連線 |
| 裝置負載 | 持續執行 15 分鐘後觀察 | 發熱、耗電與背景存活情況 |
協議選擇常見問題
多數協議問題最終都可歸入參數不一致、核心能力不相符、時間錯誤、TLS 名稱錯誤或本機路由異常。先依錯誤類型定位,再決定是否切換協議,比反覆隨機更換節點有效。
VLESS 一定比 VMess 快嗎?
不一定。先確認兩個節點是否位於同一台伺服器與同一條線路,再固定傳輸、路由與測試時間。連續測試 3 至 5 次並比較中位數;若伺服器不同,結果不能用來證明協議本身較快。
VMess 節點突然全部驗證失敗,該怎麼辦?
先在系統日期與時間設定中啟用自動校時,將誤差控制在 30 秒以內。接著更新訂閱並重新啟動核心;若仍然失敗,再核對 UUID、連接埠及伺服器是否已更換設定。
Trojan 顯示憑證或 TLS 握手錯誤,該如何檢查?
依序核對系統時間、伺服器網域、連接埠與 SNI。訂閱要求使用網域名稱時,不要改填 IP。若多個用戶端在同一網路中同時失敗,應檢查伺服器憑證狀態與網域解析結果。
Shadowsocks 匯入後顯示不支援加密方式,該怎麼辦?
查看節點中的加密方式名稱,並確認目前用戶端核心支援該方式。不要自行替換成其他方式,因為伺服器與用戶端必須完全一致。正確做法是更新核心,或請伺服器提供相容設定。
同一訂閱在 v2rayN 可以使用,v2rayNG 卻不能使用,該如何定位?
先比較兩端節點詳情中的協議、連接埠、傳輸、SNI、路徑與流量控制欄位,再檢查 Android 端的 VPN 權限、私人 DNS、分應用程式代理與電池限制。若參數一致,匯出兩端同一時間的核心錯誤類型繼續比對。