本文重點

VMess 與 VLESS 是不同的協定,不是同一個節點的兩種速度設定。兩者通常都以 UUID 識別使用者,但加密機制與伺服器端設定不同。本文適合已取得服務商提供的參數,準備在 Shadowrocket 的 Add Server 手動輸入或核對匯入結果的使用者:先釐清協定、傳輸與 TLS 三個層面,再逐欄檢查,最後在固定條件下測試,避免把參數錯誤誤判為協定效能問題。

一、VMess 與 VLESS 的主要差異

先說結論:協定類型必須與伺服器端設定一致。VMess 伺服器無法只靠把用戶端的 Type 改成 VLESS 來連線,反之亦然。即使位址、連接埠和 UUID 完全相同,握手格式不同仍會造成連線失敗。既有訂閱請向服務商取得;手動輸入時也應以同一份完整參數為準。

檢查項目VMessVLESS
使用者識別碼通常使用 UUID,並須與伺服器端的使用者設定相符通常使用 UUID,並須與伺服器端的使用者設定相符
協定本身的加密具備協定層的驗證與資料加密機制,實際方式視所選加密選項而定基礎協定不內建資料加密,安全性須搭配外層安全傳輸判斷
傳輸方式搭配依伺服器端設定使用 TCP、WebSocket 等傳輸方式依伺服器端設定使用 TCP、WebSocket 等傳輸方式
TLS與協定內的加密設定是不同項目通常用於提供外層傳輸保護,不能因為使用 UUID 就省略
變更協定類型伺服器端也必須支援相應協定,不能只修改用戶端的 Type

「VLESS 較輕量」指的是協定設計上的取捨,不代表在任何網路環境下都比較快。實際使用體驗也會受到伺服器負載、線路壅塞、傳輸方式及本地網路影響。比較不同位址的兩個節點,不能只憑測速結果推論 VMess 與 VLESS 的普遍優劣。

二、UUID、加密方式與 TLS 各自的作用

UUID 用來識別使用者,不是伺服器位址,也不是 TLS 憑證。通常會寫成以連字號分隔的十六進位字串。複製時請保留完整內容,不要混入空格或換行;同一個 UUID 能否用於不同協定,取決於伺服器端是否設定了相應使用者,不能只從字串格式判斷。

VMess 的加密選項與 TLS 開關屬於不同層級。VMess 協定內可使用 AES-128-GCM、ChaCha20-Poly1305 等方式;實際設定應依服務商提供的參數及 App 內的選項核對。啟用 TLS 不代表可以任意更改 VMess 的加密設定。

32
標準 UUID 的十六進位字元數(不含連字號)
443
常見 TLS 連接埠範例,並非節點固定連接埠
3 個層面
分別核對:協定、傳輸方式、TLS

判斷順序:先確認安全傳輸,再判斷是否可用

若參數使用 VLESS 且未啟用 TLS,請先向服務商確認是否有明確的外層安全傳輸設計;不要把「已填入 UUID」或「連接埠是 443」當成連線已加密的證明。

TLS 也涉及伺服器身分驗證。連線位址可以是 IP,而用於憑證驗證的 Server Name 可以是網域名稱,兩者不必相同。不要為了排除錯誤而直接略過憑證驗證;請先核對 Server Name、憑證網域及裝置日期與時間。VMess 驗證也要求時間同步;若裝置時間明顯不準,請先恢復系統自動設定時間再重試。

三、在 Home → Add Server 逐項填寫

從 Home 開啟 Add Server,先選擇 Type,再填寫位址與驗證資訊。不同協定或傳輸方式會顯示不同欄位;未顯示的項目不應硬套到其他欄位。介面配置可能隨 App 更新而調整,核對重點是欄位意義符合伺服器端要求,而非照抄舊截圖上的位置。

  1. Type:選擇服務商明確提供的 VMess 或 VLESS。匯入後也要確認協定類型,不要只看備註名稱。
  2. Address 與 Port:Address 只填連線用的主機名稱或 IP,不要填入整條分享連結。Port 請使用服務商提供的數值;例如參數指定 8443,就不能因為啟用了 TLS 而改成 443。
  3. UUID:完整複製使用者識別碼。VMess 若另有 Alter ID 參數,請依實際資料填寫;現代 VMess AEAD 設定通常使用 0,VLESS 則不使用 VMess 的 Alter ID 機制。
  4. VMess 加密設定:依服務商指定的方式核對。不要將協定加密選項與 TLS、WebSocket 混為同一個開關。
  5. 傳輸設定:依提供的資訊選擇 TCP 或 WebSocket 等方式。若使用 WebSocket,還要檢查 Host 與 Path;Path 開頭的斜線也是參數的一部分。
  6. TLS 與 Server Name:確認是否啟用、驗證用的網域名稱,以及是否有其他要求。若提供 Flow 等擴充參數,也必須確認目前選用的設定支援該參數,並且欄位對應正確。

四、TCP 與 WebSocket:分開核對傳輸參數

VMess、VLESS 是代理協定;TCP、WebSocket 是承載方式;TLS 則是安全傳輸的一部分。例如「VLESS + WebSocket + TLS」代表三者的組合關係,不是三種可以任意互換的協定選項。若伺服器端使用 WebSocket,只填對 UUID 和 TLS 仍不足以建立連線。

兩種常見傳輸組合的檢查重點

TCP + TLS
  • 核對 Address、Port 與 UUID。
  • 確認所選傳輸方式與伺服器端一致。
  • 核對 TLS 的 Server Name 與憑證驗證。
  • 若服務商另有擴充參數,請逐項確認是否支援。
WebSocket + TLS
  • 先確認位址、連接埠、UUID 與 TLS。
  • 接著逐字核對 WebSocket 的 Host。
  • 保留 Path 的大小寫、斜線及必要的查詢參數。
  • 釐清連線位址、Host 與 Server Name 各自的用途。

不要預設 Address、Host 與 Server Name 三者相同;它們分別用於指定連線目標、WebSocket 請求及 TLS 身分驗證。

例如連線位址是 edge.example.com,WebSocket Host 是 ws.example.com,Server Name 是 tls.example.com;在特定部署中,這三個欄位可以各不相同。實際設定仍須依據伺服器端配置。若將它們全部替換為連線 IP,可能導致 TLS 驗證失敗,或請求未轉送至正確服務。

五、連線測試:先排除 Global Routing 的影響

儲存節點後,在 Home 選取該節點,再核對 Global Routing。此設定用於控制流量分流,不會將 VMess 轉換成 VLESS。Config 會依設定的規則處理流量;Proxy 會將納入代理處理範圍的流量交由代理;Direct 則用於直接連線。Scene 會依已設定的情境處理流量,不能只看名稱就判斷目前實際使用的出口。

Config:恢復日常規則

建議

節點個別確認可用後,再透過 Config 檢查實際命中的規則。規則可以指定 PROXY、DIRECT 或 REJECT,不要假設所有請求都會經過目前選取的節點。

適用情境:已有設定下的日常使用與分流核對

Proxy:暫時排除規則因素

測試時暫時選擇 Proxy,並固定使用同一個節點與測試目標,減少規則導致直連的干擾。測試完成後,請恢復原有的 Global Routing 設定。

適用情境:確認問題來自節點連線或分流規則

Direct:檢查本地網路基準

用來確認本地網路能否直接連線至原本可直連的目標。此時網頁能開啟,並不能證明 VMess 或 VLESS 節點正常。

適用情境:排除 Wi-Fi、行動網路及本地連線故障

測試時一次只變更一個條件。先固定網路、節點與目標,記錄是否逾時、是否出現 TLS 錯誤,以及是否只有特定網站無法連線,再更換本地網路複測。連接埠可連通或測得延遲數值,只代表該項測試收到回應,不等於代理驗證、傳輸路徑及完整請求都成功。

六、匯入、更新與常見設定問題

若已有訂閱,請優先依服務商提供的方式匯入,再檢查匯入後的 Type、傳輸方式及 TLS 資訊。更新訂閱可能會覆蓋節點參數,因此手動修改前請保留原始資料。更新後若出現異常,先比較位址、連接埠與傳輸參數是否變更;不要一次修改多個項目,再試著回想原本的值。

有 UUID,為什麼還是連不上?

UUID 只處理使用者識別的一部分。請回到 Home → Add Server 對應的節點編輯頁,依序核對 Type、Address、Port、UUID、傳輸方式及 TLS。尤其不要漏掉 WebSocket 的 Host、Path 或 TLS 的 Server Name。

把 VMess 改成 VLESS 會比較快嗎?

不能直接更改。請先向服務商取得完整的 VLESS 參數,另存為一筆獨立設定。只有在伺服器端、線路與測試條件可比較時,測試結果才有參考價值;不同線路造成的差異不能歸因於協定名稱。

訂閱更新後,先前修改的 Path 不見了,怎麼辦?

先確認訂閱是否重新下發了參數,並向服務商核實最新值。若確實需要暫時測試,可將參數另存為手動設定再測試,避免把由訂閱管理的項目當成長期手動設定。請勿反覆填回未經確認的舊 Path。

開啟 On Demand 能修正協定錯誤嗎?

不能。Settings → On Demand 用來管理隨選連線條件,不會修正 UUID、TLS 或傳輸欄位。請先確認手動連線可用,再核對 On Demand;測試期間維持觸發條件不變,避免自動連線狀態變化干擾判斷。

最後可將檢查重點歸納為一句話:先確認協定類型與伺服器端設定一致,再逐項核對傳輸與 TLS 參數,最後確認請求確實依預期策略處理。若仍無法找出原因,向服務商提供已遮蔽憑證的欄位資訊、網路類型與錯誤現象,比只說「VMess 很慢」或「VLESS 連不上」更有助於排查。更多操作資訊請參閱節點管理與Global Routing 使用說明。