本文適合已從自己的服務商取得伺服器參數或訂閱連結,但不確定應在 Add Server 選擇哪種 Type 的使用者。閱讀後可以辨認 Shadowsocks、VMess、VLESS、Trojan、Hysteria2 與 WireGuard 的核心欄位,並依照位址、連接埠、憑證、傳輸層與 TLS 資訊逐項核對。
先判斷要匯入訂閱還是手動新增
Shadowrocket(小火箭)中的協定類型不是網路線路名稱。服務商提供的設定若標示 Shadowsocks、VMess、VLESS、Trojan、Hysteria2 或 WireGuard,請在 Home 右上角點選「+」進入 Add Server,再讓 Type 與協定名稱一致。不要根據連接埠號猜測協定:443 可供多種設定使用,無法單獨判斷類型。
如果已有自己的訂閱連結,通常建議先透過 Subscribe 匯入。訂閱內容會將協定類型、伺服器位址與傳輸參數寫入對應項目,比逐欄抄錄更不容易遺漏大小寫、路徑或憑證名稱。手動新增適合只有一組完整參數、需要核對特定欄位,或服務商明確要求自行填寫的情況。
Subscribe 匯入
推薦從現有訂閱建立伺服器項目,之後可從同一來源更新設定。協定與傳輸欄位通常會一併寫入。
適合:已有完整訂閱連結、需要管理多個伺服器
Add Server 手動填寫
逐項輸入 Address、Port、Password 或 UUID,並繼續核對 Transport、TLS、SNI 等附加設定。
適合:已有單一完整參數、需要確認欄位對應關係
Config 檔案
Config 主要用於規則、DNS 與分流設定,不能以規則設定取代伺服器協定所需的連線參數。
適合:管理規則分流,而不是補齊缺少的伺服器憑證
確認來源欄位
先在服務商提供的說明中找出明確的協定名稱、Address、Port 與驗證資訊。缺少協定名稱時,應向原始設定來源確認,不要只憑連接埠推測。
進入新增頁面
開啟 Home,點選右上角「+」進入 Add Server。若要匯入訂閱,請將 Type 設為 Subscribe。
貼上現有訂閱
在 URL 中填入自己的連結。格式可類似
https://example.com/sub?token=xxxx,此網址僅為示意值,不能用於連線。選擇對應協定
手動新增時,在 Type 中選擇參數單明確標示的協定,再填寫該類型顯示的欄位。
儲存並測試
儲存後返回 Home,選取建立的伺服器項目,再使用 Connectivity Test 檢查是否可連線。
六類協定先看哪些共通欄位
不同協定的驗證方式各異,但核對順序可以一致:先確認伺服器位址與連接埠,再核對密碼或金鑰,最後檢查傳輸與 TLS。Address 只應填入主機名稱或 IP 位址,不要將 https://、路徑與連接埠一併貼入位址欄。Port 必須是設定來源提供的整數;常見的 443、8443 或其他數值都只是範例,沒有適用於所有伺服器的固定連接埠。
| 欄位層級 | 常見介面值 | 核對方式 |
|---|---|---|
| 連線目標 | Address、Port | 逐字核對主機名稱與連接埠,注意不要附帶空格、協定前綴或網頁路徑。 |
| 驗證資訊 | Password、UUID、Private Key | 依協定填寫。三者用途不同,不能互相替代,也不要自行更改大小寫。 |
| 傳輸設定 | TCP、WebSocket、gRPC、QUIC | 只選擇參數單明確指定的 Transport,並繼續填寫 Host、Path 或 Service Name。 |
| 安全設定 | TLS、SNI、Public Key | 網域名稱、憑證名稱與金鑰必須來自同一組設定,不能從另一台伺服器複製。 |
結論:協定名稱優先於連接埠號
看到 443 只能確認目標連接埠,不能據此選擇 Trojan、VLESS 或其他 Type。Add Server 的 Type 應以服務商提供的協定標示為準,接著再核對該協定專用的驗證欄位。
Shadowsocks、VMess 與 VLESS 的欄位如何對應
Shadowsocks:Password 與 Method 必須配對
Shadowsocks 的基本資訊通常包括 Address、Port、Password 與 Method。Method 是加密方式,例如參數來源可能提供某個 AEAD 名稱;Shadowrocket 中的選項必須與原始設定逐字一致。伺服器位址與密碼正確但 Method 不一致時,連接埠可能仍有回應,實際連線卻無法完成驗證。
- Address:伺服器主機名稱或 IP 位址。
- Port:伺服器實際監聽的連接埠,不能以網頁連接埠代替。
- Password:區分大小寫,貼上後請檢查前後是否有空格。
- Method:與伺服器設定一致,不要因名稱相近而自行替換。
- Plugin:只有參數單明確提供外掛程式及其選項時才填寫。
VMess:除了 UUID 還要核對 Transport
VMess 通常使用 UUID 形式的使用者識別碼。不同設定也可能包含額外識別、安全選項、TLS 與 Transport。若傳輸方式是 WebSocket,通常還要核對 Path 與 Host;若設定標示其他 Transport,則應進入相應項目填寫所需的附加值。只複製 UUID 而遺漏 Path,常見情況是 Address 與 Port 可連線,但連線測試無法通過。
- UUID:完整保留連字號,不要轉換成一般密碼。
- Transport:依來源選擇 TCP、WebSocket 或其明確標示的方式。
- Host 與 Path:WebSocket 設定的常見欄位;空值與根路徑
/不一定等價。 - TLS 與 SNI:設定要求 TLS 時應一併核對,不要只開啟 TLS 卻遺漏伺服器名稱。
VLESS:分別填寫 UUID、Flow 與安全層
VLESS 同樣常用 UUID,但不能直接將 VMess 項目改名後使用。VLESS 的 Flow、Transport 與安全層需要依原始參數重新對應。部分設定不使用 Flow,此時維持來源指定的空值;若來源明確提供 Flow,則必須選擇一致的項目。涉及 Reality 時,還可能出現 Public Key、Short ID、Server Name 等值,這些欄位必須屬於同一組伺服器設定。
- UUID:作為使用者識別碼填寫,不能與 VMess 項目的類型混用。
- Flow:只有來源明確提供時才選擇,不要自行補上預設值。
- Transport:TCP、WebSocket、gRPC 等必須與伺服器端一致。
- Reality 參數:Public Key、Short ID 與 Server Name 應整組核對。
Trojan、Hysteria2 與 WireGuard 的辨識方式
Trojan:重點檢查 Password、TLS 與 SNI
Trojan 項目的核心驗證值通常是 Password,也經常搭配 TLS 使用。SNI 或 Server Name 用於指定憑證對應的主機名稱,可能與連線使用的 Address 相同,也可能由設定來源另行指定。憑證名稱填錯時,即使連接埠可以存取,連線仍可能停在握手階段。
- Password:完整複製驗證字串。
- TLS:依原始設定開啟,不要因連接埠是
443就自行判斷。 - SNI:使用設定提供的網域名稱,不要任意填寫網站地址。
- Transport:若設定附帶 WebSocket 或 gRPC,請繼續填寫對應的 Path、Host 或 Service Name。
Hysteria2:基於 QUIC,注意 UDP 可達性
Hysteria2 通常基於 QUIC 運作,連線目標仍由 Address 與 Port 組成,驗證資訊通常以 Password 提供。設定也可能包含 SNI、Obfuscation 類型與 Obfuscation Password。它依賴 UDP 通訊,因此測試結果會受到目前網路是否允許對應 UDP 連接埠通過的影響。切換 Wi-Fi 與行動網路後結果不同,不一定代表參數已變更。
- Address 與 Port:連接埠必須與伺服器開放的 UDP 連接埠一致。
- Password:與伺服器驗證值一致。
- SNI:依憑證設定填寫伺服器名稱。
- Obfuscation:只有來源提供類型與密碼時才啟用,兩個值需要配套。
WireGuard:分為介面與 Peer 兩組理解
WireGuard 與前述帳號密碼型協定的欄位結構不同。可將參數分成兩組:本機介面側包括 Private Key 與 Address,遠端 Peer 側包括 Public Key、Endpoint 與 Allowed IPs。Endpoint 通常由主機名稱或 IP 加上連接埠組成;Allowed IPs 決定哪些目標範圍交由該 Peer 處理,並不等同於 Shadowrocket 的 DOMAIN-SUFFIX 規則。
- Private Key:本機介面的私鑰,不能填入伺服器端的 Public Key。
- Address:分配給通道介面的位址,通常帶有 CIDR 前綴長度。
- Public Key:對端 Peer 的公鑰。
- Endpoint:對端位址與連接埠,例如
vpn.example.com:51820僅作為格式示意。 - Allowed IPs:依現有設定原樣填寫範圍。
- Reserved:若設定來源提供三個數值,順序也必須保持一致。
結論:先依驗證欄位辨識設定結構
Password 常見於 Shadowsocks、Trojan 與 Hysteria2,UUID 常見於 VMess 與 VLESS;Private Key 與 Peer Public Key 則指向 WireGuard。驗證欄位只能協助複核,最終 Type 仍以原始設定標示為準。
Transport、TLS 與連接埠為什麼不能混著填
協定規定驗證與資料封裝方式,Transport 決定資料如何承載,而 TLS 負責相關情境下的加密握手與伺服器身分資訊。三個層次可以組合,因此同一個 VLESS 類型可能使用不同 Transport,同一種 WebSocket 傳輸也可能出現在不同協定項目中。Add Server 頁面顯示附加欄位後,應繼續對照服務商提供的完整參數,不能看到協定名稱就停止核對。
WebSocket 的 Path 通常以 / 開頭,Host 是握手要求中的主機欄位;gRPC 常見的是 Service Name;TLS 情境常見 SNI。它們看起來都是文字值,但傳送位置不同。將 Service Name 填入 Path,或將 Address 直接複製到 SNI,只有在原始設定恰好相同時才可能正確。
| 設定項目 | 要解決的問題 | 填寫錯誤後的常見現象 |
|---|---|---|
| Port | 定位伺服器端的監聽入口 | 逾時、拒絕連線,或連線到無關的服務。 |
| Transport | 確認 TCP、WebSocket、gRPC 或 QUIC 等承載方式 | 連接埠可達,但協定握手無法完成。 |
| Path / Service Name | 定位對應的 WebSocket 路徑或 gRPC 服務 | 連線很快中斷,伺服器端無法匹配入口。 |
| TLS / SNI | 建立 TLS 並匹配伺服器名稱 | 憑證名稱不匹配或握手失敗。 |
| UDP | 承載 Hysteria2、WireGuard 等相關通訊 | 同一組參數在不同連線網路下的表現不同。 |
協定連線與 Global Routing 是兩回事
伺服器協定負責建立連線,Global Routing 決定流量建立後如何處理。Config 會讀取目前的規則設定;Proxy 讓流量統一使用選取的伺服器;Direct 直接連線至目標;Scene 依場景設定執行。伺服器項目測試成功,不代表目前的 Global Routing 一定會讓所有要求經過該項目。
在 Config 狀態下,Shadowrocket 會由上至下匹配規則。常見關鍵字包括 DOMAIN-SUFFIX、GEOIP、IP-CIDR 與 FINAL。前面的具體規則會先命中,FINAL 處理此前沒有匹配的要求。以下內容只展示規則語法,網域與位址均為文件範例:
DOMAIN-SUFFIX,example.com,PROXY
IP-CIDR,192.0.2.0/24,DIRECT,no-resolve
GEOIP,CN,DIRECT
FINAL,PROXY
- DOMAIN-SUFFIX:依網域後綴匹配,例如會涵蓋指定網域及其子網域。
- IP-CIDR:依 IPv4 位址範圍匹配,
192.0.2.0/24是文件用途的示例網段。 - GEOIP:依 IP 地理資料庫結果匹配,不是根據網域文字判斷。
- FINAL:接收未命中前面規則的剩餘要求,通常放在規則末尾。
Config
推薦依照 Config 中的規則逐一匹配,讓不同目標採用 Proxy 或 Direct 等策略。
適合:已有核對過的規則設定,日常依目標分流
Proxy
統一使用目前選取的伺服器,可用於判斷故障是否源於規則未命中。
適合:暫時排除規則分流的影響
Direct
要求直接連線至目標,不會使用已選取的伺服器轉送。
適合:確認本機網路本身能否存取目標
Scene
依照已設定的網路情境切換處理方式,結果取決於使用者儲存的 Scene 條件。
適合:已明確區分不同網路環境的設定
結論:測試協定時先固定路由狀態
排查新伺服器時,可以先記錄目前的 Global Routing,再使用 Proxy 檢查項目本身;確認項目可用後恢復 Config,繼續檢查 DOMAIN-SUFFIX、IP-CIDR 與 FINAL 的命中順序。
連線失敗時依欄位層級排查
錯誤類型不同,排查起點也不同。Connectivity Test 立即顯示逾時時,先檢查 Address、Port 與目前網路的可達性;很快失敗但連接埠似乎有回應時,再檢查協定 Type、Password、UUID、Method 與 Transport;TLS 握手相關問題則重點檢查 SNI、裝置時間與憑證對應關係。不要一次修改多個欄位,否則無法判斷是哪項修正帶來結果。
核對 Type
返回 Add Server 編輯頁,確認 Type 與原始設定明確寫出的 Shadowsocks、VMess、VLESS、Trojan、Hysteria2 或 WireGuard 一致。
檢查位址與連接埠
移除 Address 中多餘的協定前綴、路徑與空格,確認 Port 沒有被瀏覽器或輸入法改寫。
檢查驗證資訊
逐字對照 Password、UUID、Method、Private Key 或 Public Key,尤其檢查大小寫與連字號。
檢查傳輸與安全性
繼續核對 Transport、Host、Path、Service Name、TLS、SNI、Flow 與 Reality 相關值。
固定路由測試
記錄原始設定後,將 Global Routing 暫時設為 Proxy,使用 Connectivity Test 判斷是否由規則分流造成差異,完成後恢復原本狀態。
檢查 On Demand
進入 Settings → On Demand,確認是否存在會在目前 Wi-Fi 或行動網路下自動連線、斷線或切換的條件。
連接埠是 443,應該選 Trojan 還是 VLESS?
不能依連接埠選擇。返回服務商提供的參數單,找出協定名稱以及 Password 或 UUID 等驗證欄位。若來源未標示 Type,應先向原始設定來源確認。
為什麼匯入訂閱後會有多種協定?
同一份訂閱可以建立不同 Type 的伺服器項目。分別開啟項目查看類型即可,不要將所有項目手動改成同一種協定;更新時也應從原本的 Subscribe 來源重新整理。
Connectivity Test 成功,但要求沒有經過伺服器?
檢查 Home 中是否已選取該項目,再查看 Global Routing 是否處於 Direct。若使用 Config,繼續檢查目標是否被 DOMAIN-SUFFIX、GEOIP 或 IP-CIDR 規則分配到 Direct。
切換到另一個網路後 Hysteria2 無法連線?
先確認該網路是否允許設定連接埠的 UDP 通訊,再核對 Address、Port、Password 與 SNI。若 Wi-Fi 與行動網路的結果不同,分別記錄測試現象後交由原始服務設定提供者核查。
什麼時候需要開啟 On Demand?
只有需要依網路條件自動觸發連線時才設定。路徑是 Settings → On Demand;首次排查協定參數時,可以先確認目前狀態,避免自動動作干擾手動測試。
安裝來源與使用範圍
Shadowrocket 是 Apple 平台的閉源商業應用程式,主要供 iPhone 與 iPad 使用;Mac、Apple TV 與 Apple Vision 的可用情況以 App Store 相容性欄為準,系統要求以 App Store 頁面標示為準。唯一取得入口是 App Store。正版產品頁顯示開發者為 Shadow Launch Technology Limited,應用程式 ID 為 932747118,購買方式為一次買斷。
購買用戶端不包含線路服務。本文只說明如何將使用者現有的服務商參數對應至 Shadowrocket,不提供或推薦任何線路服務、伺服器及訂閱。若訂閱更新後欄位有所變更,應以自己的設定來源為準,不要將舊項目的 Password、UUID、SNI 或金鑰複製到新項目。
- Shadow Launch Technology Limited
- 應用程式 ID 932747118
- 一次買斷
- iPhone 與 iPad 通用說明