Shadowrocket 支援哪些協定?Shadowsocks、VMess、VLESS、Trojan、WireGuard 快速一覽

快速比較 Shadowrocket 支援新增的協定:Shadowsocks、VMess、VLESS、Trojan、HTTP/SOCKS5、WireGuard 與 Hysteria2。

本文速覽

Shadowrocket(小火箭)支援多種連線協定,新增時應依照既有服務提供的參數選擇,而非任意挑選 Type。本文先比較協定、傳輸方式與驗證資訊,再說明匯入後的檢查步驟、Global Routing 的作用,以及連線失敗時的排查順序,適合需要辨識既有設定類型的使用者。

協定速覽:Type 必須與伺服器端相符

Shadowsocks、VMess、VLESS、Trojan、HTTP、SOCKS5、WireGuard 與 Hysteria2 是不同的連線類型,並非同一條連線的速度檔位。伺服器端使用哪種協定,Shadowrocket 就必須採用相符的設定。只修改 Type,無法將既有服務轉換成另一種協定;即使位址、連接埠與驗證資料相同,也不代表兩者能互通。

協定 主要特性 優先確認的資訊
Shadowsocks 使用指定的加密方式與共用密碼;是否支援 TCP、UDP,取決於連線兩端的設定。 伺服器位址、連接埠、加密方式、密碼及額外外掛需求。
VMess 使用 UUID 等驗證資訊,可搭配不同傳輸方式與 TLS。 UUID、傳輸方式、TLS 狀態、Host 與路徑等相關參數。
VLESS 使用 UUID 驗證,協定本身不提供負載加密;防護方式取決於外層傳輸設定。 UUID、傳輸方式、TLS 或其他指定的安全參數,不能只填寫位址。
Trojan 常見部署方式以 TLS 為基礎,並使用密碼驗證。 密碼、連接埠、TLS 伺服器名稱與憑證是否相符。
HTTP / SOCKS5 通用代理類型;驗證需求、UDP 支援與連線防護方式各有不同。 類型、位址、連接埠、使用者名稱與密碼;HTTP 另須確認是否要求 TLS。
WireGuard 以 UDP 為基礎的加密通道,透過金鑰配對識別對端。 本機私鑰、對端公鑰、通道位址、端點與路由相關參數。
Hysteria2 以 QUIC 為基礎,底層使用 UDP,並包含 TLS 與驗證相關設定。 伺服器 UDP 連接埠、驗證資訊、伺服器名稱及可選的混淆參數。

結論:依照原始參數選擇 Type

先查看既有服務提供的協定名稱,再前往 Home →「+」→ Type 選擇相符項目;若遇到同系列協定或可選傳輸參數,請逐項確認,不要只憑名稱相似就直接替換。

協定、傳輸方式與 TLS:分別確認三層設定

連線資料中常會同時出現 VLESS、WebSocket、TLS 等名稱,但它們描述的並非同一層。協定決定雙方如何組織要求與驗證;傳輸方式決定資料如何傳送;TLS 則關乎傳輸加密與伺服器身分驗證。將三者混為一個「協定名稱」,是匯入後手動修改設定時常見的錯誤來源。

第一層:連線協定
例如 VMess 與 VLESS。即使兩者都使用 UUID,也不能互換 Type。Shadowsocks 的密碼同樣不能直接當作 Trojan 的有效憑證。
第二層:傳輸方式
例如 TCP 與 WebSocket。若既有資料指定 WebSocket,還須確認路徑與 Host;改成一般 TCP 並不能避開伺服器端的傳輸要求。
第三層:安全參數
TLS 伺服器名稱用於身分驗證,也可能影響伺服器端的連線處理。連線位址、HTTP Host 與 TLS 伺服器名稱可能各不相同,應保留原始設定中的個別值。

連接埠只是目標服務的入口,並非協定識別碼。例如 443 可用於 TCP 服務,也可用於以 UDP 為基礎的 QUIC 服務;51820 常見於 WireGuard,但不是必用連接埠。不能看到 443 就認定是 Trojan,也不能把任何 WireGuard 設定的連接埠都改成 51820。

新增與訂閱匯入:儲存後逐項確認

以下步驟以使用者已有自己的服務商與訂閱,且有權使用相關連線資料為前提。訂閱是一種設定發佈與更新方式,並非連線協定;一次匯入後出現多個 Type 屬正常情況。本網站不提供、販售或推薦節點或訂閱服務。

  1. 查看原始資料

    先記下協定名稱、伺服器位址、連接埠與驗證方式。手動新增還需要完整的傳輸與 TLS 參數;只有伺服器位址不足以還原連線。

  2. 選擇新增方式

    手動新增時,前往 Home →「+」→ Type,依照原始資料選擇協定。已有訂閱時,請在 Type 選擇 Subscribe,填入自己的訂閱網址並儲存;範例 https://example.com/sub?token=xxxx 僅表示網址格式,無法用來連線。

  3. 檢查連線詳細資料

    返回 Home,在 SERVER 清單中開啟對應項目的編輯頁面,確認 Type、位址與連接埠,再檢查密碼或 UUID、TLS、傳輸路徑等。WireGuard 應依完整設定檢查金鑰與通道參數,不要套用密碼式表單的理解方式。

  4. 確認路由模式

    前往 Home → Global Routing 查看目前選項。若要依規則使用,請選擇 Config,並在 Config 中確認目前啟用的設定;新增成功不代表所有要求都會經過該連線。

  5. 連線並再次確認

    返回 Home,選取目標項目並開啟連線開關;首次使用時,請依系統提示允許新增 VPN 設定。執行 Connectivity Test 後,再造訪自己的目標服務,分別確認連線狀態與實際要求結果。

訂閱更新後,應再次查看項目詳細資料,確認位址、連接埠與 Type 是否變更。更新成功只代表已取得並處理訂閱內容,無法證明每條連線都可使用;反之,訂閱網址暫時無法存取,也不代表已儲存的連線參數會立即失效。排查時,請分別記錄「取得設定」與「使用設定連線」的結果。

Global Routing 比較:協定不決定要求的路由

同一條 Trojan 或 WireGuard 連線,在不同 Global Routing 模式下,可能不會處理相同的要求。此處比較的是 Shadowrocket 的路由設定,而非協定效能。下方 Config 的「建議」僅適用於已備妥並確認規則的依規則使用情境;排查問題時,應依測試目的切換,而非固定使用某個選項。

Config

建議

依目前設定中的規則決定要求的處理方式。符合 DIRECT 的要求會直接連線;符合代理策略的要求才會交由相應連線處理;FINAL 採用的策略也由設定決定。

適用情境:已有明確規則,需要區分直連與代理要求。

Proxy

以代理模式處理接管範圍內的要求,可用於暫時對照測試,確認 Config 下的比對結果是否影響存取。不要將此選項理解為所有系統流量必定都會經過代理。

適用情境:已有可用連線,暫時排查規則與連線本身的差異。

Direct

以直連模式處理要求。此時即使 Home 中選取了某個伺服器,也不能據此判斷存取正在使用該伺服器。

適用情境:對照直連結果,確認問題是否只出現在代理路徑。

Global Routing 中的 Scene 用於依已設定的情境條件選擇路由行為,並非額外的連線協定。Settings → On Demand 管理的是按需連線相關設定,也不會改變伺服器的 Type。自動建立 VPN 連線、要求符合哪條規則,以及最後採用哪種協定傳輸,是三個需要分別確認的問題。

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

以上是用於理解順序的規則片段,並非完整連線設定。第一條讓 api.example.com 優先符合 PROXY,後續的 DOMAIN-SUFFIX 再涵蓋 example.com 及其他子網域;IP-CIDR 的 192.0.2.0/24 是文件示範網段,no-resolve 表示不主動為該規則解析網域。GEOIP 依據 IP 地理資料比對,FINAL 則處理此前未符合的要求。此處的 PROXY 是策略詞,不是協定名稱。

連線失敗排查:先判斷失敗發生在哪一層

「測得延遲數值」、「VPN 已連線」與「目標網頁可存取」並非同一項結果。Connectivity Test 的結果須配合測試方式解讀,不能直接推論目標服務一定可用。以下依可觀察到的現象列出確認順序;這些是排查條件,並非本網站杜撰的實測數據。

觀察到的現象 優先確認事項 下一步操作
儲存後立即出現驗證相關錯誤 Type、密碼、UUID 或金鑰是否與原始資料相符。 開啟項目編輯頁逐項比對,並留意複製時是否多了空格或內容遭截斷。
出現 TLS 或憑證錯誤 伺服器名稱、憑證有效性、裝置時間與傳輸設定。 保留驗證要求,修正錯誤參數後重新連線。
Hysteria2 或 WireGuard 持續逾時 目標 UDP 連接埠是否正確,目前網路是否允許所需的 UDP 通訊。 保留原有設定,改用另一個有權使用的網路進行對照測試,避免直接改成 TCP。
部分網域連線失敗,其他要求正常 Global Routing、目前的 Config、規則順序與網域解析結果。 比較 Proxy 與 Config 下對同一目標的結果,再檢查實際符合的規則。
訂閱更新後項目異常 更新後的位址、連接埠、驗證資訊與 Type 是否有所變更。 比對既有服務的最新資料,區分訂閱讀取錯誤與連線錯誤。

結論:一次只修改一個條件

固定目標位址與設定,先比較網路,再比較路由模式,最後檢查協定參數;不要同時變更 Type、連接埠與 TLS 設定,否則無法判斷是哪個步驟改變了結果。

常見問題:支援清單不代表任何設定都能使用

已有 Shadowsocks,改成 VLESS 會更快嗎?

不能只修改 Type。兩種協定需要相符的伺服器端與驗證資料。先保留原始設定,在 Home 執行 Connectivity Test 並造訪相同目標;只有既有服務明確提供另一套完整設定時,才分別新增並比較結果。協定名稱本身無法保證速度。

HTTP 和 SOCKS5 都是代理,可以互換嗎?

不可以。前往 Home 的項目編輯頁,依照既有資料確認 Type、連接埠與驗證方式。一般 HTTP 代理連線與 SOCKS5 不會因為都稱為代理就自動加密;HTTP CONNECT 中目標網站的 HTTPS,也不等於用戶端到代理伺服器這一段已啟用 TLS。

Hysteria2 在目前網路逾時,該更換連接埠嗎?

先確認原始資料中的 UDP 連接埠與驗證資訊,再使用同一份設定改用另一個可用網路複查。連接埠必須是伺服器端實際監聽的連接埠,不能在用戶端任意填寫。Hysteria2 以 QUIC 為基礎,不會因為將數字改成 443 就變成一般 TCP 連線。

訂閱中有協定名稱,為什麼匯入仍不完整?

支援某個協定系列,不代表所有分享格式、擴充參數與組合都能直接解析。匯入後請開啟項目編輯頁,檢查 TLS、傳輸路徑與驗證欄位;若缺少必要欄位,應向既有服務確認符合目前應用程式可用選項的完整資料,而非自行猜測填寫。

WireGuard 只要填寫公鑰就可以嗎?

不只需要公鑰。請確認本機私鑰、對端公鑰、端點位址與連接埠、通道位址及相關路由參數;伺服器端也必須設定相應的用戶端。私鑰與訂閱中的驗證權杖應妥善保密,排查時不要將完整內容貼到公開頁面。

從 App Store 下載