Shadowrocket(小火箭)支援多種連線協定,但用戶端支援某種協定,不代表可以任意將現有伺服器改成該協定。本文適合已取得服務商連線資料的使用者:先透過表格辨識協定,再核對 Add Server 中的驗證、傳輸與 TLS 參數,最後區分協定設定錯誤與 Global Routing 規則問題。訂閱請向你的服務商索取。
協定速查:傳輸方式與驗證欄位
協定會定義用戶端與伺服器如何交換資料及驗證身分。伺服器位址、連接埠、驗證資訊和傳輸參數必須相互吻合;只有伺服器位址並不足以建立連線。以下列出常見類型,欄位名稱與可選項目以應用程式實際介面為準,並非完整功能清單。
| 協定 | 傳輸特性 | 須核對的資料 |
|---|---|---|
| Shadowsocks | 使用約定的加密方式保護代理資料,可傳輸 TCP 與 UDP;UDP 是否可用仍取決於伺服器與網路。 | Address、Port、加密方式、Password;若有外掛參數,也須與伺服器設定一致。 |
| VMess | 使用 UUID 等參數驗證身分,可搭配 TCP、WebSocket 等傳輸方式;TLS 是需要另外核對的設定。 | Address、Port、UUID、加密設定,以及服務商指定的傳輸方式、Host、Path 與 TLS 參數。 |
| VLESS | 以 UUID 識別使用者,協定本身不負責加密資料;連線保護取決於搭配的安全層。 | Address、Port、UUID、傳輸方式;依據資料核對 TLS、安全參數與 Flow,不可直接套用其他連線的設定。 |
| Trojan | 一般部署會使用 TLS 保護連線,並透過 Password 驗證;憑證和伺服器名稱是排查重點。 | Address、Port、Password、TLS 與 Server Name;其他傳輸參數依服務商提供的資料填寫。 |
| HTTP / SOCKS5 | 通用代理協定。一般 HTTP 代理與 SOCKS5 本身並不等同於加密通道;SOCKS5 是否支援 UDP,須視連線兩端而定。 | Address、Port,以及伺服器要求的 Username、Password;HTTP 的 TLS 選項須依實際服務設定。 |
| WireGuard | 以 UDP 為基礎的加密通道,使用金鑰驗證;除了遠端位址,還涉及通道位址與對端參數。 | 遠端位址與連接埠、用戶端 Private Key、對端 Public Key、通道位址;如有 Preshared Key,也須一併核對。 |
| Hysteria2 | 以 QUIC 為基礎,底層使用 UDP,並結合 TLS 與驗證;網路是否允許 UDP,會直接影響連線可用性。 | Address、Port、驗證資訊、Server Name;混淆與頻寬相關設定依服務商提供的數值填寫。 |
重點:依據資料選擇 Type
先確認服務商提供的協定名稱,再選擇 Type。不要只為了嘗試另一種傳輸方式就更改 Type,卻保留原本的密碼、連接埠及其他參數。
表格中的「支援」不代表所有擴充組合都能使用。例如,兩條同為 VLESS 的連線,也可能採用不同的安全層與傳輸參數。匯入後應檢查實際辨識出的類型;遇到無法辨識的參數,先向服務商確認設定要求,不要只憑協定名稱自行補上設定。
Add Server:從連線資料到首次驗證
手動新增適合欄位資料齊全、需要逐項核對的情況。若服務商提供訂閱,建議依照其資料匯入,再檢查項目是否完整。訂閱是批次取得與更新連線資料的方式,並不是取代 Shadowsocks 或 Trojan 的連線協定。
-
整理連線資料
向你的服務商取得協定、位址、連接埠和驗證資訊。TLS、Server Name、Host、Path 等附加參數也要一併保留;服務商未提供的欄位,不要從其他伺服器項目複製。
-
選擇類型
前往 Home → 點選右上角「+」→ Add Server,在 Type 中選擇資料所對應的協定。填寫 Address 與 Port;例如資料指定連接埠為 443,就填入 443,但不能因此推定所有協定都使用該連接埠。
-
填寫驗證資訊
依據 Type 填寫 Password、UUID 或金鑰資訊。VMess 與 VLESS 的 UUID 不能當成 Trojan 的 Password;WireGuard 的 Private Key 與 Public Key 也不能互換。
-
核對傳輸設定
依照服務商提供的資料設定 TLS 與傳輸參數。若使用 WebSocket,也要核對 Host 與 Path;路徑開頭的斜線、大小寫及查詢參數都應原樣保留。
-
儲存並測試
儲存後回到 Home,在 SERVER 清單中選取該項目前方的圓點,再開啟頂端的連線開關;依照系統提示允許新增 VPN 設定,接著執行 Connectivity Test,並嘗試連線至實際需要使用的服務。
TLS、Host 與 Path:協定相同仍可能無法連線
Address 是連線目標,Server Name 是 TLS 交握時使用的伺服器名稱,Host 則可能是 HTTP 或 WebSocket 要求中的主機欄位。三者有時相同,但用途不同,不能一律視為同一項。連線目標是 IP 位址時,也可能仍須使用服務商指定的網域名稱作為 Server Name。
- TLS:是否啟用必須與伺服器端設定相符。連接埠 443 只是一個連接埠值,不能單憑這點判定 TLS 設定正確,也不能因此將一般 HTTP 代理改成 HTTPS 代理。
- Server Name:核對拼字及其與憑證的對應關係。若出現憑證驗證錯誤,先檢查裝置時間、目標位址和名稱,不應將關閉憑證驗證當成一般解決方式。
- Host:使用 WebSocket 等傳輸方式時,伺服器端可能會依據 Host 分配要求;「連得到位址」不代表要求已送達正確的服務。
- Path:
/ws與/是不同路徑。此處僅用來說明語法,並非適用於所有伺服器的通用設定值。 - UDP:Hysteria2 和 WireGuard 都依賴 UDP。若所在網路限制 UDP,只更改密碼或反覆調整 TLS 名稱,無法解決底層連線無法到達的問題。
判斷故障時應先區分狀況:連線逾時可能是位址、連接埠、網路或伺服器狀態所致;驗證失敗則應優先核對密碼、UUID 或金鑰;TLS 錯誤應先檢查憑證與名稱。不同故障可能都會顯示測試失敗,不能只憑一次延遲數值判定原因。
重點:每次只修改一組參數
先保留原始資料,再依序檢查位址與連接埠、驗證資訊、TLS 與傳輸參數。每次修改後重複相同測試,避免同時更動多個欄位,導致無法確認哪些修改有效。
Global Routing:協定與分流是兩種不同設定
Type 決定如何連線至伺服器,Global Routing 則決定要求採用哪種策略。伺服器參數正確,要求仍可能因走 Direct 而未經所選伺服器;反之,將 Global Routing 改為 Proxy 也無法修正錯誤的 Password。以下比較的是 Shadowrocket 本身的設定方式,不是協定效能排名。
Config
推薦依照目前啟用設定中的規則比對要求,結果可能是 DIRECT、代理策略或其他設定所定義的策略。未符合前面規則的要求,通常由 FINAL 指定的策略處理,不一定會直接連線。
適用情況:已核對設定規則,日常使用時需要依目標區分處理方式。
Proxy
讓由 Shadowrocket 接管的要求採用代理策略,可用來暫時排除規則比對的影響。測試前仍須確認目前選取的伺服器或策略正確;開啟連線開關不代表伺服器一定可用。
適用情況:核對連線參數後,排查 Config 中規則或策略選擇所造成的影響。
Direct
直接連線,不透過所選代理伺服器轉送。此時網頁能夠開啟,不能證明所選的 Shadowsocks、Trojan 或其他伺服器已成功驗證。
適用情況:對照直接連線時的可連線狀況,區分本地網路與代理路徑問題。
Global Routing 中的 Scene 會依照已設定的場景選擇對應行為;判斷時應查看實際場景條件與策略,不能只憑名稱認定流量會經過代理。規則中的 DOMAIN-SUFFIX 比對網域後綴,IP-CIDR 比對位址範圍,GEOIP 依 IP 地理資料庫比對,FINAL 則處理先前未符合規則的要求;這些關鍵字都不會改變伺服器的驗證協定。
常見問題:協定選擇與連線故障
可以直接把 VMess 改成 VLESS 嗎?
不能只修改 Type。先向服務商確認是否有提供 VLESS 連線資料,再新增項目並填寫對應的 UUID、連接埠、安全層與傳輸參數。保留原有項目以便比較,避免修改後遺失原本可用的設定。
Hysteria2 一定比其他協定快嗎?
不能只憑協定判斷速度。請在相同網路、相近時間和同一目標下,比較連線成功率、實際傳輸速度與穩定性。若 Hysteria2 持續逾時,先向服務商確認 UDP 連接埠與驗證參數,並改用另一個可信任的網路重新測試;不要先把頻寬數值調得很高。
訂閱更新後,為什麼多了幾種 Type?
同一份訂閱可以包含不同協定的伺服器項目。前往 Home 查看各項目並開啟編輯頁面核對 Type,逐一選取後測試;不要把整份訂閱當成單一協定,也不要用一台伺服器的密碼覆蓋其他項目的密碼。
Connectivity Test 有結果,為什麼目標網頁還是無法開啟?
測試結果僅反映該次測試過程,無法保證所有目標服務都能連線。先確認 SERVER 中目前選取的項目,再檢查 Global Routing 與 Config 中符合的策略;若只有特定網域無法連線,請繼續核對 DNS、規則和目標服務狀態,不要直接重建所有伺服器項目。
排查問題時,可以把完整設定傳給別人嗎?
請先移除訂閱連結中的權杖、Password、UUID、Private Key 及其他驗證資訊。只要說明 Type、網路環境、錯誤狀況及已檢查的欄位即可;若需要服務商協助,請透過其正式支援管道提供必要資訊,避免公開完整連線資料。
完成檢查:區分用戶端與連線服務
Shadowrocket 是 Apple 平台的付費用戶端,主要供 iPhone、iPad 使用;Mac、Apple TV、Apple Vision 的相容性、系統需求與通用購買條件,請以 App Store 頁面標示為準。用戶端採一次買斷制,請透過 App Store 取得。用戶端買斷 ≠ 連線方案;連線資料與訂閱請向你的服務商索取。
- 已知道協定名稱:在 Add Server 中核對 Type,不要以顯示名稱取代協定類型。
- 已匯入伺服器:檢查位址、連接埠、驗證、TLS 與傳輸參數是否彼此吻合。
- 已開啟連線開關:接著檢查 Connectivity Test 與實際目標連線,確認 Global Routing 實際採用的策略。
- 準備修改設定:先記錄原有設定,每次只修改一組參數,並保留可還原的對照。