本文重點

本文適合已備妥服務商提供的連線參數或訂閱,想在 Shadowrocket(小火箭)中確認協定的人。先對照協定表確認 Type,再逐項檢查 Address、Port、驗證資訊與傳輸設定,最後釐清連線故障或規則分流問題。協定類型必須與伺服器設定一致,不能只修改 Type 就把現有伺服器轉換成另一種協定。

協定支援與 Add Server 欄位對照

Shadowrocket 支援下表列出的協定。Home 用於管理伺服器與連線,Config 用於管理設定檔與規則,Settings 用於管理 App 設定;協定參數主要在 Home 的 Add Server 中檢查。選取不同的 Type 後,表單會顯示相應欄位,附加傳輸選項也可能因類型而異。下表列出需要確認的資訊,並不代表每種協定都使用相同表單。

協定特性與手動設定檢查項目
協定 傳輸與驗證特性 Add Server 檢查項目 常見遺漏
Shadowsocks 透過加密方式與密碼保護代理資料,可承載 TCP 與 UDP;UDP 是否可用,還取決於伺服器與設定。 Type、Address、Port、Method、Password;使用外掛程式時,也要確認外掛程式參數。 Method 與伺服器設定不一致,或將外掛程式設定誤當成一般備註。
VMess 使用 UUID 作為身分資訊;可搭配不同傳輸方式,TLS 則是需要另外確認的傳輸安全設定。 Address、Port、UUID、加密選項;依現有參數確認 Transport、TLS 與附加欄位。 UUID 正確,但 WebSocket 的 Host 或 Path 不一致。
VLESS 使用 UUID 作為身分資訊,協定本身不提供資料加密;安全性取決於實際設定的安全層。 Address、Port、UUID;依伺服器要求確認 Transport、TLS、Flow 或相關安全參數。 只複製 UUID,漏掉伺服器要求的安全參數。
Trojan 使用 Password 驗證,通常透過 TLS 建立連線;憑證名稱可能與連線位址不同。 Address、Port、Password、TLS 與 Server Name;若有其他傳輸設定,也要一併確認。 填入 IP 位址後,沒有保留原本的 Server Name。
HTTP / SOCKS5 屬於代理協定,基本形式不會自動提供連線加密;HTTP 代理可使用 CONNECT,SOCKS5 則可支援 UDP 轉送。 Type、Address、Port;若有驗證需求,填寫 Username、Password,安全連線選項則依實際服務設定。 把 HTTP 代理位址當成網頁 URL,或認為所有 SOCKS5 服務都支援 UDP。
WireGuard 透過 UDP 建立加密通道,使用金鑰驗證,不使用 UUID 或一般登入密碼。 Endpoint、Private Key、Peer Public Key、本機通道位址;依設定確認 Allowed IPs、MTU 等資訊。 把本機的 Private Key 與 Peer Public Key 填反,或漏掉通道位址。
Hysteria2 以 QUIC 為基礎,底層使用 UDP;需要驗證與 TLS 參數,也可依伺服器設定使用混淆。 Address、Port、驗證資訊、Server Name;若啟用 Obfs,也要填入相符的類型與密碼。 目前網路限制 UDP,或漏填 Obfs 參數。

結論:依原始參數選擇 Type

先確認服務商提供的協定名稱,再檢查驗證與傳輸層。現有的 VMess 伺服器不能只改選 VLESS 就直接使用;遇到連線失敗時,應優先還原原始參數,而非輪流嘗試不同的 Type。

如何填寫 Address、Port 與驗證資訊

Address 是伺服器網域名稱或 IP,不是訂閱連結。手動輸入時通常只填主機名稱,例如 server.example.com;不要把 https://、訂閱路徑或查詢參數一併填入 Address。Port 必須使用現有服務的實際連接埠:443 只是常見範例,不代表所有 Trojan、VLESS 或 Hysteria2 服務都使用這個連接埠。

驗證欄位也不能互相替代。Shadowsocks 的 Password 必須搭配正確的 Method;VMess、VLESS 的 UUID 必須完整保留;Trojan 使用伺服器設定的 Password;WireGuard 則需要一組清楚區分本機與對端角色的金鑰。複製時請檢查前後空格;分享截圖時,請遮住密碼、UUID、金鑰與訂閱 token。

  1. 開啟表單

    前往 Home → 點選右上角「+」,開啟 Add Server。若要修改現有記錄,可在 Home 開啟編輯頁面;修改前先保留原始參數,以便還原。

  2. 確認類型

    進入 Type,選擇原始資料指定的協定。WireGuard 的金鑰與位址欄位和一般代理記錄不同,請勿套用 VMess 的填寫方式。

  3. 填寫位址

    填入 Address 和 Port;原始資料若提供網域名稱,請保留網域名稱。只有在明確提供 IP 位址時,才依該位址填寫;不要自行將連接埠改成 443。

  4. 確認驗證資訊

    依 Type 填入 Password、UUID 或金鑰,再展開適用的 TLS、Transport 等選項。Host、Path、Server Name 應分別確認,不要因為名稱相似就填成相同內容。

  5. 儲存並測試

    儲存後返回 Home,選取該伺服器,再開啟連線開關。首次連線時,請依系統提示允許加入 VPN 設定,接著執行 Connectivity Test,並確認目標網頁是否能正常載入。

分別檢查 TLS、Transport 與 UDP

協定名稱只說明設定的一部分。VMess 或 VLESS 記錄也可能指定 WebSocket 等 Transport;TLS 用於保護相應連線;Host 和 Path 則可能用於伺服器端路由。即使 Address、Port 和 UUID 都正確,附加欄位不一致仍可能導致交握失敗。請逐項對照原始記錄,不要把「支援該協定」理解成「任何傳輸組合都能自動辨識」。

Server Name
這是 TLS 連線中的伺服器名稱設定。Address 可以是 IP,而 Server Name 仍可能是憑證對應的網域;兩者用途不同,不應直接複製成相同值。
Host / Path
使用 WebSocket 時,Host 是要求標頭中的主機資訊,Path 則是要求路徑。路徑範例 /ws 僅用來說明格式;實際值必須取自現有設定,並保留開頭的斜線與大小寫。
UDP
Hysteria2 的 QUIC 與 WireGuard 通道都仰賴 UDP。其他代理協定則須分別確認用戶端選項、伺服器支援情況,以及目前網路是否允許所需的 UDP 流量。
MTU
這是 WireGuard 通道參數之一,會影響封包大小。只有在設定資料或排查結果顯示可能是封包大小問題時才調整,不要把任意固定數值當成通用最佳化方案。

要判斷是否有網路限制,可使用同一筆現有設定,分別透過 Wi-Fi 與行動網路測試,記錄哪種網路能完成連線、哪種會逾時。若 Hysteria2 只在其中一種網路上失敗,可據此檢查 UDP 是否可連通,但不能只憑這個現象就斷定協定有問題。本文不提供通用速度排名,實際傳輸量還會受到伺服器負載、線路、封包遺失與設定影響。

匯入訂閱後,為什麼仍要檢查參數?

訂閱是批次取得伺服器記錄的方式,並不是獨立的連線協定。同一份訂閱可以包含多種 Type;匯入後,每筆記錄仍依自身協定建立連線。已有訂閱的使用者可前往 Home →「+」→ Type → Subscribe,填入自己的訂閱 URL 並儲存,再更新訂閱。Config 中的設定檔主要負責規則與策略,不要混淆兩者用途。

若更新後某筆記錄突然無法連線,先比較更新前後的 Type、連接埠與傳輸參數,再確認服務商是否變更了驗證資訊。不要立刻修改所有記錄;先挑一筆測試,保留其他設定可減少排查變數。訂閱 URL 含有存取憑證,不應完整貼在公開的問題描述中。

協定設定正確後,再檢查 Global Routing

協定決定如何連線至伺服器,Global Routing 則決定要求採用哪種路由方式,兩者屬於不同層面。在 Home 選取伺服器後,若 Global Routing 仍設為 Direct,一般代理要求就不會如預期交由選取的伺服器處理;若使用 Config,還要確認目前規則命中了哪項策略。

Config

建議使用

依目前設定中的規則選擇策略。命中 DIRECT 的要求會直接連線;命中 PROXY 的要求則依代理策略處理。未明確列出的要求不一定都會自動直連。

適用情境:已確認規則,日常需要依網域或網段分流。

Proxy

將通常會交由代理處理的要求送往代理,減少規則選擇對測試的影響。系統流量、略過設定等仍可能影響實際路徑,不能將此模式視為所有封包都絕對遵循的保證。

適用情境:暫時測試伺服器連線,判斷問題來自協定或規則。

Direct

採用直連方式,一般代理要求不會交由選取的伺服器處理。切換至 Direct 後網頁能開啟,並不能證明伺服器的驗證與傳輸參數正確。

適用情境:建立直連基準,確認問題是否來自本機網路。

Global Routing 中的 Scene 用於依情境設定路由處理方式,不是第四種伺服器協定。測試新記錄時,先採用明確的路由方式以減少變數,再切回日常設定。以下規則僅示範比對順序,應放在 Config 中檢視,不要填入 Add Server。

[Rule]
DOMAIN-SUFFIX,example.com,PROXY
IP-CIDR,192.168.0.0/16,DIRECT,no-resolve
GEOIP,CN,DIRECT
FINAL,PROXY

規則會由上而下比對,第一條符合的規則決定採用的策略。DOMAIN-SUFFIX 比對網域及其子網域,IP-CIDR 比對網段,GEOIP 依 IP 所屬地區判斷,FINAL 則處理前面都未符合的要求。此處的 FINAL,PROXY 會明確將其餘要求交由代理處理;實際使用前,請確認策略可用,並依自身網路需求調整。

協定連線常見問題

UUID 相同,為什麼把 VMess 改成 VLESS 後就連不上?

UUID 只是驗證資訊的一部分,兩種協定的通訊方式不同。返回 Home 中該筆記錄的編輯頁面,將 Type 還原為服務商指定的值,並重新確認 Transport 與安全參數。只有在伺服器明確提供 VLESS 設定時,才使用對應資料建立新記錄。

Trojan 使用 IP 位址時出現 TLS 錯誤,該怎麼辦?

開啟該筆記錄,分別檢查 Address 和 Server Name。若伺服器要求以 IP 連線,但使用網域憑證,請將提供的憑證網域保留為 Server Name;同時確認裝置時間正確。若仍然失敗,記下完整錯誤類型,再確認伺服器憑證狀態,不要先略過憑證檢查。

Hysteria2 一直逾時,密碼也確認過了,接下來呢?

接著確認 Port、Server Name 和 Obfs 設定,再換用另一種目前可用的網路測試同一筆記錄。Hysteria2 仰賴 UDP,只確認密碼不足以排除網路限制。每次只修改一個參數並記錄連線結果,避免同時調整連接埠和混淆設定,導致無法判斷原因。

Connectivity Test 顯示成功,網頁還是打不開?

先查看 Home → Global Routing,暫時切換至 Proxy 後重試同一個網頁;若恢復正常,返回 Config 檢查該網域的規則與策略。若仍無法開啟,請檢查 DNS、TLS 與目標服務。Connectivity Test 成功只表示該項測試通過,不代表所有目標或流量類型都正常。