在 Shadowrocket(小火箭)手動新增既有伺服器時,Type 應以自己的設定資料為準。VMess 與 VLESS 都可能使用 UUID,但兩者的協定處理方式不同;連線也取決於 Address、Port、傳輸層及 TLS 等欄位是否逐一吻合。下文提供核對順序與排查方式,不要憑名稱猜測連線設定。
先看結論:UUID 相同不代表 Type 相同
VMess 與 VLESS 是兩種不同的協定。VMess 的協定處理包含加密設定;VLESS 本身不提供相同的協定層加密機制,使用時須依照既有設定核對 TLS 等安全層設定。這裡談的是協定層差異,不是看到 VLESS 就該自行開啟 TLS,也不是 VMess 可以忽略伺服器指定的 TLS 參數。連線兩端的設定必須彼此吻合。
UUID 通常用來識別身分,無法單獨判斷一筆設定屬於 VMess 還是 VLESS。即使兩筆資料使用相同 UUID,只要 Type 或傳輸參數不同,也不能視為可互換的伺服器紀錄。先確認資料明確標示的協定,再填寫其他欄位,比逐一嘗試 Type 更容易找出問題。
依既有資料指定的 Type 填寫
建議先確認資料標示的是 VMess 還是 VLESS,再逐項核對該協定對應的欄位;不要因為兩者都使用 UUID 就更改 Type。
適用情況:手邊有完整的伺服器參數或設定說明
只憑 UUID 選擇 Type
UUID 無法說明傳輸層、TLS 或協定類型;填入後即使成功儲存,也不能據此判定連線參數正確。
適用情況:辨認資料缺漏,或需要回頭核對
判斷順序:先確認協定,再檢查連線細節
如果資料沒有註明 VMess 或 VLESS,請先向提供設定資料的一方確認 Type;不要只憑 UUID、Port 或是否啟用 TLS 反推協定。
在 Add Server 手動填寫時,先核對哪些欄位
已有自己的伺服器資料時,可在 Shadowrocket 的 Add Server 選擇相應的 Type 後填寫。可填欄位會依 Type 與傳輸設定而異;請保留原始資料並逐項對照,不要把一筆設定的 Address 和另一筆設定的 UUID 拼在一起。如果拿到的是完整訂閱連結,通常可先用 Subscribe 匯入,再檢查匯入的紀錄,避免手動抄寫時遺漏欄位。
- 核對 Type:資料寫 VMess 就選擇 VMess,寫 VLESS 就選擇 VLESS。如果資料只提供一組 UUID,應先確認協定類型。
- 核對 Address 與 Port:Address 填入伺服器提供的網域或位址,Port 填入相應的連接埠號碼。VMess 或 VLESS 並沒有統一固定的 Port;即使看到常見的 443,也不能因此省略核對。
- 核對 UUID:依原值完整填寫,留意複製時是否混入空格、換行或相似字元。UUID 必須與這筆伺服器紀錄相符,不能只因格式相同就挪用其他資料的值。
- 核對其他選項:若資料還列出 Encryption、傳輸類型、TLS、SNI、Host 或 Path,請分別找到對應設定;未明確提供的值不要自行編造。
兩種資料的填寫順序
已有完整伺服器參數
- 在 Add Server 先選擇資料指定的 Type。
- 填寫 Address、Port、UUID,再核對傳輸層與 TLS。
- 儲存後重新檢查欄位,確認沒有遺漏其他參數。
已有完整訂閱連結
- 透過 Subscribe 匯入自己的連結。
- 等候更新完成,再查看匯入紀錄的 Type 與欄位。
- 如果清單是空的,先檢查連結及訂閱回傳內容。
無論使用哪種方式,都應以同一份既有設定資料為準;匯入方式不會替伺服器補上缺漏的參數。
Encryption、傳輸層與 TLS:分開檢查,不要混為一個開關
VMess 的 Encryption 是協定相關設定,應依照既有設定填寫。VLESS 與 VMess 的協定層處理方式不同,因此不能把 VMess 的 Encryption 值直接套用到 VLESS。TLS 則是另一層設定:是否使用 TLS、需要哪個伺服器名稱,以及憑證相關驗證,都要依這筆設定的伺服器要求核對。單看某個欄位空白,不能推斷其他層也該關閉。
傳輸層描述如何承載協定資料,常見設定可能標示 TCP、WebSocket 或 gRPC。WebSocket 的 Host 與 Path 是傳輸參數;TLS 的 SNI 用於伺服器名稱指示,不能因為兩個欄位都可能填入網域名稱,就認定它們可以互相替代。實際介面會顯示哪些選項,依所選 Type 與目前 App 內的設定而定。
| 資料欄位 | 核對項目 | 容易混淆之處 |
|---|---|---|
| Encryption | VMess 紀錄指定的協定相關值 | 不要把它當成 TLS 開關,也不要直接套用到 VLESS。 |
| Transport | 伺服器指定的 TCP、WebSocket 或其他傳輸方式 | Type 相同,不代表傳輸方式也相同。 |
| TLS 與 SNI | 是否啟用 TLS,以及資料指定的伺服器名稱 | SNI 不一定等於 Address,請逐項核對。 |
| Host 與 Path | 使用 WebSocket 時,資料指定的請求參數 | Path 中的斜線與字元須依原值填寫;Host 不能取代 SNI。 |
例如,資料若同時列出 Port: 443、TLS: on 和以 / 開頭的 WebSocket Path,手動填寫時就要分別核對 Port、TLS 與 Path。443 只是此處的示意連接埠,並非 VMess 或 VLESS 的必要 Port;Path 也不能靠網域名稱猜出來。若資料缺少傳輸方式或 TLS 要求,應先補齊資訊再排查連線問題。
儲存後仍無法連線:依現象縮小檢查範圍
成功儲存只表示紀錄已加入清單,不代表伺服器已接受連線。排查時先確認選取的紀錄就是剛才填寫的那筆,再查看連線測試或實際瀏覽的結果。每次只修改一個可疑欄位,並保留原始資料,方便比較修改前後的狀況;若同時反覆更換 Type、Port 與 TLS,就很難追查原因。
VMess 與 VLESS 都能選,應該先試哪一個?
先查看原始資料標示的協定。即使兩者使用相同 UUID,也必須分別符合伺服器設定;若沒有標示 Type,應確認資料來源,不要根據連線結果猜測協定。
填入 UUID 後仍顯示連線失敗,該先檢查什麼?
先核對 Address 與 Port 是否屬於同一筆紀錄,再檢查 UUID 是否因複製而帶入空格。接著依資料核對傳輸方式與 TLS,不要只是不斷修改 UUID。
WebSocket 的 Host、Path 與 TLS 的 SNI 如何區分?
依照資料中的欄位名稱分別填寫:Host、Path 屬於 WebSocket 參數,SNI 屬於 TLS 參數。若資料提供不同的網域名稱,就分別填入,不要用 Address 一次取代所有欄位。
匯入訂閱後,Type 與手邊的文字說明不同?
先確認訂閱已更新完成,而且目前查看的是同一筆紀錄,再向設定資料提供方確認實際回傳內容。除非手邊有完整對應參數,否則不要只修改 Type,卻保留其他匯入欄位。
如果測試顯示逾時,優先核對 Address、Port、目前網路是否能連到伺服器,以及伺服器是否仍使用這組參數;如果已建立連線,但瀏覽結果不如預期,再檢查所選紀錄與路由設定。不同狀況不能直接歸結為「VMess 比 VLESS 快」或相反:連線結果同時受到伺服器設定、網路路徑、傳輸層與路由模式影響。
確認 Type 正確後,再區分協定問題與路由問題
Shadowrocket 的 Type 決定伺服器紀錄使用哪種協定;Global Routing 則決定流量如何經過已選取的連線。Global Routing 中的 Proxy、Direct、Config 是路由模式,不是 VMess 或 VLESS 的別名。若目前是 Direct 模式,流量會依直連方式處理;不能只憑網頁能開啟,就判定剛填寫的伺服器紀錄已生效。
- Proxy:用來檢查流量經過目前選取的連線時的狀況;切換前先確認選取的是要測試的紀錄。
- Direct:用來對照直連狀況;在此模式下看到的瀏覽結果,不應作為協定參數已通過測試的依據。
- Config:依目前設定中的規則處理流量。若符合
DOMAIN-SUFFIX、GEOIP、IP-CIDR或FINAL等規則,實際結果還取決於規則指定的處理方式。
因此,排查可分成兩步:先確認選取的紀錄與路由模式,再核對連線;接著回到日常使用的 Config 檢查規則。若問題只出現在特定網域,查看該請求符合的規則,比反覆切換 VMess 與 VLESS 更有方向。Settings → On Demand 管理的是依條件觸發連線的行為,不能取代 Type 或伺服器欄位的核對。
送出前核對清單
手動填寫或更新完成後,請將 App 內的紀錄與原始資料並排核對。最重要的是所有值都來自同一筆設定:協定名稱、位址、連接埠、身分識別碼、傳輸方式與安全層設定,任何一項缺漏都可能讓連線結果不如預期。若資料本身不完整,App 介面無法替使用者判斷伺服器實際採用哪組參數。
- Type 明確標示為 VMess 或 VLESS,且與既有資料一致。
- Address、Port、UUID 都對應同一筆紀錄;複製的內容沒有多餘空格或換行。
- VMess 的 Encryption、所選傳輸方式及其附加欄位均依資料填寫;不要把 VMess 的設定直接套用到 VLESS。
- 已分別核對 TLS、SNI,以及使用 WebSocket 時的 Host、Path,沒有把網域欄位混為一談。
- 測試時確認所選伺服器與 Global Routing 模式;使用 Config 時,再查看規則如何處理目標請求。
如果目前透過 Subscribe 管理既有資料,參數變更後應先更新訂閱並檢查匯入紀錄,再決定是否需要手動編輯。Shadowrocket 可從 App Store 取得,開發者為 Shadow Launch Technology Limited;iPhone、iPad 等裝置的系統需求以 App Store 頁面標示為準。取得 App 與取得自己的伺服器設定是兩回事,App 一次性買斷不等於線路方案。