Shadowrocket 支援哪些協定?Shadowsocks、VMess、VLESS、Trojan、Hysteria2 快速入門

整理 Shadowsocks、VMess、VLESS、Trojan、HTTP/SOCKS5、WireGuard 與 Hysteria2 的用途和特點,並說明在 Add Server 中應選擇哪個 Type。

本文速覽

Shadowrocket(小火箭)支援多種伺服器協定,但 Type 必須與伺服器端設定一致,不能只改名稱就切換協定。本文以你已有服務商與訂閱為前提,說明七種協定的用途、加入時需核對的欄位,以及如何分辨協定、傳輸與規則錯誤。訂閱連結和連線參數請向你的服務商取得。

1. 支援哪些協定?Add Server 的 Type 怎麼選

先確認伺服器端使用的協定,再前往 Home → 右上角「+」→ Add Server → Type 選擇相應項目。本文涵蓋 Shadowsocks、VMess、VLESS、Trojan、Hysteria2、WireGuard,以及 HTTP 和 SOCKS5;實際可選項目與欄位請以裝置上的應用程式介面為準。

協定決定用戶端與伺服器如何交握、驗證和傳輸資料。伺服器位址與連接埠只是連線入口,無法據此推斷協定。例如連接埠 443 可承載不同服務;看到 443 不代表應選 Trojan,也不代表已啟用 TLS。

伺服器端協定對應的 Type主要核對項目
ShadowsocksShadowsocks位址、連接埠、加密方式、密碼
VMessVMessUUID、加密設定、傳輸方式、TLS
VLESSVLESSUUID、傳輸方式、TLS 或相應安全參數
TrojanTrojan密碼、連接埠、TLS、伺服器名稱
HTTP / HTTPSHTTP / HTTPS 對應項目代理入口、驗證方式、是否使用 TLS
SOCKS5Socks5 對應項目位址、連接埠、使用者名稱與密碼、UDP 支援條件
WireGuardWireGuard本機私鑰、對端公鑰、端點、隧道位址
Hysteria2Hysteria2驗證資訊、UDP 連接埠、TLS、可選的混淆參數

結論:依伺服器端參數選擇 Type

先匯入既有訂閱並查看產生的伺服器類型;只有手動加入時才需要逐項填寫。支援某種協定,不代表各種傳輸組合或擴充參數都能直接互換。

2. Shadowsocks、VMess 與 VLESS 有何不同

Shadowsocks:確認密碼與加密方式相符

Shadowsocks 使用預先約定的密碼與加密方式建立代理連線。在 Add Server 選擇 Shadowsocks 後,除了位址和連接埠,也要確認加密方式與伺服器端一致。即使密碼正確,方式不符仍可能導致連線失敗;不要只因名稱相近就替換加密方式。

若伺服器端設定還包含額外外掛或混淆參數,請確認應用程式支援相應設定,並完整保留。只複製位址、連接埠和密碼,不一定等同於匯入完整設定。匯入訂閱後,請以伺服器編輯頁面中的實際欄位為準進行核對。

VMess:除了 UUID,也要核對傳輸層

VMess 使用 UUID 等身分資訊進行驗證,也有自身的資料安全設定。若伺服器端指定 WebSocket 或其他傳輸方式,用戶端必須設為相同方式;若啟用 TLS,還要核對伺服器名稱等參數。UUID 正確只是必要條件之一,不能取代傳輸設定。

VLESS:分開理解身分驗證與連線安全

VLESS 本身不負責資料加密,連線安全取決於使用的安全層與完整設定。不能只把 VMess 的 Type 改成 VLESS,卻沿用所有欄位。涉及 TLS、REALITY 或特定傳輸參數時,請依伺服器端提供的設定核對,並確認目前的應用程式有相應選項。

3. Trojan 與 Hysteria2:TLS 相似,傳輸基礎不同

Trojan 的常見設定會以 TLS 保護連線,並使用密碼驗證。選擇 Trojan 後,請核對伺服器端連接埠、密碼與 TLS 伺服器名稱。伺服器位址可以是 IP,但憑證通常對應網域名稱,因此位址與憑證名稱應分開理解。不要長期關閉憑證驗證來掩蓋憑證錯誤。

Hysteria2 以 QUIC 為基礎,使用 UDP 傳輸,並結合 TLS 與驗證機制。選擇 Hysteria2 後,除了位址與驗證資訊,也要核對 UDP 連接埠、伺服器名稱,以及伺服器端是否啟用混淆。Hysteria 與 Hysteria2 是不同的協定版本,不能只看名稱前半段就判定相容。

檢查項目Trojan 常見設定Hysteria2
基礎傳輸通常透過 TCP 建立 TLS 連線透過 UDP 建立 QUIC 連線
驗證核對密碼核對驗證資訊及伺服器端要求
連接埠示例若伺服器端指定 TCP 443,就填入 443若伺服器端指定 UDP 443,就填入 443
網路限制的影響檢查 TCP 連接埠和 TLS 交握著重檢查目前網路能否連上目標 UDP 連接埠

表中的 443 只是用來說明相同的連接埠數字可對應不同傳輸方式,並非通用設定值。Hysteria2 的實際表現會同時受到 UDP 可達性、封包遺失、頻寬與伺服器端設定影響,不能只憑協定名稱就保證速度更快。若同一設定在 Wi-Fi 可用、在行動網路卻逾時,請先保留設定不變,再比較網路條件。

4. HTTP、SOCKS5 與 WireGuard 的用途

HTTP 和 SOCKS5 是通用代理協定。HTTP 代理可透過 CONNECT 建立目標連線;HTTPS 代理則是在用戶端與代理伺服器之間加入 TLS,這與「透過 HTTP 代理瀏覽 HTTPS 網站」是不同概念。應根據代理入口本身是否使用 TLS 選擇 Type,而非依據要造訪的網站。

SOCKS5 可協商使用者名稱與密碼驗證,但協定本身不提供流量加密。其 UDP 能力也取決於伺服器端支援、應用程式設定和中間網路;選擇 Socks5 不代表所有 UDP 要求都會成功。常見的 1080 連接埠只是慣例示例,實際仍須使用伺服器端提供的連接埠。

WireGuard 是以金鑰為基礎的隧道協定,不同於只填寫代理密碼的方式。設定通常需要本機私鑰、對端公鑰、隧道位址、遠端端點等資訊;若啟用預共享金鑰,雙方也必須一致。其端點使用 UDP;51820 是常見的示例連接埠,並非固定要求。

5. 從匯入訂閱到首次驗證的操作順序

訂閱是提供伺服器設定的方式,不是流量傳輸協定。一份訂閱可以包含不同 Type 的伺服器;更新訂閱也不等於升級協定。建議優先使用向服務商取得的完整訂閱,避免手動複製時遺漏 TLS、傳輸路徑或驗證參數。

  1. 確認來源

    準備既有訂閱或完整連線參數。若尚未取得應用程式,請先前往正版核驗頁確認 App Store 入口;服務連線參數則需另外向你的服務商取得。

  2. 匯入訂閱

    前往 Home → 右上角「+」→ Add Server → Type → Subscribe,填入訂閱連結並儲存;返回 Home,使用訂閱的更新功能取得伺服器清單。

  3. 核對類型

    開啟已匯入伺服器的編輯頁,查看 Type、位址、連接埠和 TLS 等欄位。手動新增時,前往 Add Server → Type 選擇相應協定,再依原始參數填寫。

  4. 選取並連線

    返回 Home,點選要使用的伺服器,確認選取標記後開啟頂端的連線開關;首次連線時,依系統提示允許加入 VPN 設定。

  5. 驗證連線

    在 Home 使用 Connectivity Test 進行檢查,再造訪實際目標。若測試通過但目標仍無法連線,請繼續核對 Global Routing、目前設定與 DNS,不要立即更換 Type。

更新訂閱後,手動修改過的伺服器欄位可能會被新內容覆蓋。若更新前後的連線狀況不同,先比對 Type、連接埠、傳輸方式與 TLS 欄位;若需請服務商確認,只提供已移除憑證的錯誤狀況與網路條件。

6. Type 與 Global Routing 是不同設定

Type 決定如何連線至伺服器;Global Routing 則決定要求採用哪種處理路徑。即使協定設定正確,也可能因路由模式或規則命中而未使用預期的伺服器。以下建議適用於已有可靠規則設定的日常使用,並非推薦任何協定或線路。

Config

建議

依據目前選取的設定檔處理要求。規則會依序比對,最後結果取決於命中的策略;不能將 Config 簡化為讓某一類網站固定直連。

適合:已有正確的規則設定,並需要依目標分流。

Proxy

將代理設為全域路由模式,用來對照 Config 下規則的影響。這不會變更伺服器 Type,也無法修復密碼、憑證或傳輸錯誤。

適合:暫時確認連線失敗是否與規則分流有關。

Direct

採用直連模式,不透過選取的代理伺服器驗證協定是否可用。此時網頁能開啟,並不能證明剛匯入的伺服器有效。

適合:對照目前網路的直接連線狀況。

Scene

依照已設定的場景條件套用相應路由行為。排查時也要查看目前場景及其設定,不能只記錄介面顯示的 Scene。

適合:已明確設定不同網路環境下的路由行為。

Config 中的 DOMAIN-SUFFIX 用來比對網域後綴,GEOIP 依據目標 IP 的地理資料庫資訊進行比對,IP-CIDR 用來比對 IP 位址範圍,FINAL 則作為最後的兜底規則。這些都是規則關鍵字,不是 Add Server 的協定選項。Settings → On Demand 用來檢查隨選連線條件,也不是選擇協定的入口。

7. 協定選擇與連線失敗常見問題

可以把 VMess 改成 VLESS,讓連線更快嗎?

不能只改 Type。返回 Home 的伺服器編輯頁,將類型改回伺服器端提供的協定;若伺服器端另有 VLESS 設定,請將它作為獨立伺服器完整匯入。驗證方式、傳輸和安全參數必須成套相符。

Hysteria2 一直逾時,但其他連線可以使用?

先確認 Type 確實設為 Hysteria2,再檢查驗證資訊、UDP 連接埠與 TLS 伺服器名稱。保持伺服器參數不變,分別以 Wi-Fi 和行動網路測試。若只有某個網路無法連線,記錄網路條件並確認目標 UDP 連接埠是否可連通。

有延遲數字,為什麼網頁還是打不開?

先在 Home 確認選取的伺服器,再執行 Connectivity Test;接著檢查 Global Routing 是否符合預期。在 Config 下也要確認目前設定與規則命中狀況。延遲結果只反映該測試方式,不能取代完整的目標連線驗證。

出現憑證錯誤,可以直接關閉驗證嗎?

先檢查系統日期與時間,再核對伺服器編輯頁中的 TLS 伺服器名稱及伺服器端憑證要求。憑證過期、名稱不符或信任鏈異常需要分別處理;請保留錯誤資訊並向你的服務商確認,不要將關閉驗證當成一般解決方式。

更新訂閱後協定變了,需要自行改回去嗎?

先查看更新後伺服器的 Type 和連線欄位,再核對服務商提供的變更說明。不要依據舊名稱覆蓋新參數;若設定可能不完整,請保留已移除憑證的錯誤描述,向服務商確認後再重新更新訂閱並驗證。

最後依序確認:協定是否一致、連線參數是否完整、目前網路是否允許所需傳輸方式,以及路由是否符合預期。每次只變更一項條件並記錄前後狀況,比在多個 Type 之間反覆切換更容易找出問題。

從 App Store 正版取得核對開發者與應用程式 ID