Settings › Overview

1. Settings 的適用範圍與預設狀態

先釐清設定、設定檔與伺服器的差異

在 Shadowrocket 中,Settings 用來管理用戶端行為,Config 存放設定檔與分流規則,Home 則用來選擇伺服器、檢查 Global Routing 並控制連線。三者彼此相關,但不能互相取代。修改 DNS 不會補上伺服器密碼,切換伺服器也不會自動修正錯誤規則。排查前先說明問題:是特定網域無法開啟、切換網路後中斷,還是所有請求都失敗。問題不同,應檢查的設定路徑也不同。

本手冊以 iPhone / iPad 的路徑名稱編排;Mac、Windows、Android 與 Linux 版同樣是 Shadowrocket,但系統權限、背景執行機制及可見選項可能不同。找不到某個項目時,先確認平台與目前所在頁面,不要依照其他裝置的截圖尋找完全相同的位置。涉及系統層級網路權限時,請以本機提示為準;涉及 iPhone / iPad 系統需求時,請以 App Store 頁面標示為準。

預設值、目前值與建議值並不相同

「預設值」是首次建立相關設定時的初始行為;「目前值」可能已受匯入設定、還原備份或同步影響;「建議值」則取決於使用目的。本頁不會把單一裝置的現況說成所有版本通用的出廠值。對於沒有固定一致預設值的項目,請查看目前介面或使用中的設定檔;欄位未明確填寫時,也不要直接認定為已關閉,更不建議只為了符合手冊而重設所有資料。

範圍核對位置修改前記錄
用戶端行為Settings開關、測試方式、同步狀態
路由策略Home › Global RoutingConfig / Proxy / Direct
網域與位址規則Config 使用中的檔案檔名、規則順序、FINAL
遠端連線參數Home › SERVER協定、連接埠、驗證與傳輸參數

建立可還原的修改紀錄

操作前記下目前使用的 Config 名稱、選取的伺服器與 Global Routing 模式,再記錄準備修改的欄位。需要備份檔案時,請存放在自己能控制的位置;設定內容可能含有驗證資訊,不要將完整內容貼到公開問答。建議每次只修改一組相關設定,例如先維持路由不變,只調整 DNS,確認結果後再處理 On Demand。一次改動多個項目,即使連線恢復,也無法確認是哪個設定生效,日後再次發生問題時更難找出原因。

修改後請重新建立測試連線。瀏覽器既有的長連線、應用程式快取或系統解析快取,可能讓舊狀態暫時保留;只重新整理同一頁面未必能反映新設定。可先停止目前的測試、中斷連線後重新連線,再開啟用途明確的測試目標。結果沒有改善時,先還原原始值,再排查其他可能原因。不要把頻繁切換所有開關當成排查方法,也不要直接匯入來源不明的完整設定檔覆蓋現有設定。

用戶端一次性購買費用 ≠ 連線服務方案。iPhone / iPad 版在 App Store 售價 $2.99,為一次性付費;Mac / Windows / Android / Linux 版免費。本站不提供、不銷售也不推薦節點或訂閱;用戶端設定無法取代既有服務所需的有效驗證資訊與可用連線。

需要取得用戶端時,請參閱下載指南:iPhone / iPad 版從 App Store 取得;Mac 提供 Apple 晶片與 Intel 兩個版本;其他平台的安裝檔均由本站 /dl/shadowrocket/ 提供。首次開啟若遭系統阻擋,請先依照安裝與開啟說明處理,再回到本頁調整設定;安裝問題應與 DNS、規則問題分開排查。

Settings › DNS

2. DNS 解析路徑與故障排查

DNS 負責將網域名稱解析為位址

存取網域時,應用程式通常會先取得對應位址,再建立實際連線。因此,Connectivity Test 有結果但網頁無法開啟,不能直接據此判定遠端伺服器正常或異常:測試可能只涵蓋其中一段,實際頁面也可能另外連線至其他網域。DNS 負責提供解析結果,不會修復錯誤密碼、過期驗證或目標網站本身的問題。判斷時應分別檢查解析、連線與應用程式回應,不要把所有失敗都歸咎於 DNS。

核對預設狀態時,應同時查看 Settings 中與 DNS 相關的選項,以及目前使用的 Config 內容。匯入的設定可能明確指定解析器,也可能沿用系統提供的解析路徑。欄位空白時,應參考說明與記錄判斷實際行為,不要自行推定它一定指向某個公共服務。初次使用時,建議保留目前可正常運作的解析設定;只有出現明確的解析失敗證據,才調整相關路徑,不要為了追求所謂「通用最佳值」而改動所有選項。

先確認查詢是否能連到解析器

排查順序如下:目前網路能否正常連線至基本服務、伺服器位址本身能否解析、解析器能否透過預期路徑連線,以及解析回傳的位址能否順利連線。如果伺服器位址是網域,建立連線前可能就需要先解析一次;若解析器又必須透過尚未建立的代理才能連線,就可能形成依賴循環。此時應檢查設定設計,而不是不斷更換解析器。清單中填入多個位址,不代表它們一定會依照預期同時運作。

現象優先核對下一步
網域解析失敗解析器位址與可連線路徑維持規則不變,單獨測試解析
已取得位址,但連線逾時位址類型、路由與目標連接埠改查連線記錄,不要反覆更換 DNS
部分網域異常快取、分流與特定回傳結果使用新連線測試同一網域

位址類型與加密解析的適用範圍

同一個網域可能會回傳 IPv4 與 IPv6 位址。有 IPv6 紀錄不代表目前網路具備完整的 IPv6 連線能力;反過來,停用 IPv6 也不是所有異常的通用解法。建議先查看失敗連線實際使用的位址類型,再比較另一條路徑。若需暫時調整相關設定,請記下原始狀態,確認結果後再依網路環境決定是否保留,避免為了單一網路的問題,長期影響其他網路上正常的行為。

加密 DNS 主要改變查詢的傳輸方式,不會自動改變網頁流量的路由策略,也不代表解析結果必然適用於目前的連線路徑。填寫時請分清解析器位址、協定與可連線性;如果目前介面支援該方式,請依欄位接受的格式輸入。不要將一般網頁網址當成解析服務位址。遇到憑證驗證錯誤時,先檢查系統時間與輸入內容,不應透過停用驗證來掩蓋解析鏈路問題。

如何確認 DNS 修改結果

選擇一個可重複存取的網域,記下修改前的狀況,然後只調整一項解析設定。重新建立連線後,在 Log 中查看查詢是否成功、回傳了什麼位址,以及後續請求套用了哪種策略。瀏覽器可能使用自己的解析方式,應用程式也可能快取位址,因此應參考用戶端的實際記錄,不要只根據重新整理一次的結果判斷。如果只有一個應用程式異常,先確認它是否使用獨立解析方式或沿用既有連線。

解析成功不代表目標一定能存取;連線逾時也不代表解析失敗。先判斷故障發生在哪個階段,再決定是否修改 DNS。

還原設定時,應恢復解析器、位址類型相關開關及目前使用的設定檔,不要只刪除最後輸入的一行。若還原後仍有異常,請檢查是否切換了網路,或是否重新選取了另一份 Config。完整排查範例請見DNS 解析失敗排查;所有目標都無法連線時,請接著查看無法連線常見問題,不要只針對 DNS 反覆試錯。

Settings › On Demand

3. On Demand 按需連線條件

連線觸發條件與路由策略分開設定

On Demand 用來設定系統在什麼條件下嘗試建立或恢復 VPN 連線。它不是伺服器選擇器,也不是規則策略;即使按需連線成功,個別請求最後採用 PROXY 或 DIRECT,仍取決於 Global Routing 與目前使用的設定檔。了解這點可避免常見誤解:想讓特定網站走代理,卻只開啟 On Demand;或希望切換網路後恢復連線,卻反覆修改網域規則。

預設狀態應以裝置目前的開關與已儲存條件為準,不能只因連線按鈕顯示已開啟,就認定 On Demand 已啟用。還原資料或調整系統 VPN 設定後,也應重新核對。建議先確認手動連線穩定運作,再設定按需連線;如果手動連線時已持續發生錯誤,自動重試只會重複相同的失敗、增加記錄雜訊,無法修復遠端位址、驗證資訊或網路條件。

依網路條件逐項建立規則

前往 Settings › On Demand 後,先閱讀目前介面提供的條件類型,再設定確實需要的項目。若要依無線網路名稱區分行為,請確認名稱正確,並留意大小寫、空格及同名網路。網路名稱只是比對條件,無法證明網路身分可信。不要因名稱相同就認定安全環境相同,也不要因此放寬本機代理連接埠的存取範圍。

建議先從一項容易驗證的條件開始,例如明確區分目前使用的無線網路與行動網路;確認系統實際觸發結果後,再加入其他條件。條件之間可能有順序或覆蓋關係,請依目前介面的說明排列。條件未命中時,先檢查網路介面與名稱是否符合,不要馬上刪除所有條件。測試時請記錄切換前的網路、切換後的網路、觸發時間與連線狀態;這些資訊比「偶爾會斷線」更有助於找出問題。

使用目的建議做法確認重點
先排查基本連線暫停自動觸發,改用手動連線是否仍發生相同故障
切換網路後恢復連線依實際網路條件設定 On Demand介面變更後是否重新建立連線
特定網路維持中斷檢查該網路對應的條件是否被其他條件再次觸發

手動中斷後又重新連線

手動關閉後若連線很快恢復,請先檢查 On Demand 與系統 VPN 的按需設定,不要直接判定為用戶端故障。系統可能在後續網路請求或網路變更時再次觸發連線。測試中斷狀態前,應先暫停相關觸發條件,再觀察系統狀態。只是不斷點擊連線開關,無法證明自動觸發已停止;重新啟動裝置後,只要條件仍然保留,也可能再次出現相同狀況。

請留意,連線狀態與服務連續性是兩回事。無線網路切換至行動網路時,底層位址與連線路徑會改變,既有下載、通話或長連線可能需要由應用程式自行恢復。On Demand 無法保證每個應用程式的工作階段不中斷,也不能繞過系統對背景執行與網路權限的管理。請使用新請求進行驗證,並分開記錄舊工作階段中斷與新連線失敗的情況。

建議順序:手動連線正常 → 新增一項按需條件 → 切換網路測試 → 再新增其他條件。每新增一項,都要保留可還原的原始狀態。

條件看似正確卻沒有觸發時,請確認系統中的 VPN 設定是否仍對應 Shadowrocket、是否有其他連線正在使用,以及裝置是否受到管理政策限制。不要為了排查而直接移除所有系統設定;請先保存必要資訊,再處理明確相關的項目。首次權限與 Home 頁面說明請見首次開啟設定;自動連線後的流量路由則請繼續查看本頁的 Config › Rule。

Settings › Ping

4. Ping 與 Connectivity Test 的測試範圍

先確認測量的是哪一段

Ping 是相關測試設定的索引名稱,實際可選方式請以目前介面為準。不同方式涵蓋的範圍不同:有些主要反映網路往返狀況,有些會嘗試連線至目標連接埠,有些還會送出應用程式層級的請求。不能只因結果顯示數值,就認定驗證、網域解析、規則比對與所有網站存取都已通過。請連同使用的測試方式一起記錄結果;脫離測試方式比較數值,通常沒有診斷意義。

請在 Settings › Ping 查看預設測試方式、逾時設定與目標;不同裝置或還原後的資料可能已有自訂值,本手冊不會指定適用所有網路的固定逾時時間。初期建議保留目前可用的方式,先觀察實際存取狀況。需要比較多台既有伺服器時,請固定網路、測試方式與目標,再重複測量數次,以免將無線訊號波動與遠端差異混為一談。

依測試方式判讀成功與失敗

如果介面提供 TCP 類型的測試,成功通常表示相關連接埠能完成連線程序,不代表應用程式層級的驗證一定通過。如果提供 HTTP 類型的測試,也要留意目標回應、重新導向、憑證與解析是否參與其中。網路設備可能會限制或過濾特定探測方式,因此某種測試失敗但實際服務正常,並不矛盾。請先確認測試的定義,再判斷結果是否與目前問題相關。

測試觀察結果可以確認無法據此確認
目標連接埠可連線當下連接埠路徑可連通驗證成功且所有服務請求正常
應用程式層級請求完成目前目標及對應路徑可正常運作其他網域也採用相同路由
單次逾時這次未能在期限內完成伺服器長期無法使用

如何選擇測試目標與逾時時間

若可自訂測試目標,建議使用用途明確且能穩定回應的目標,並在整輪比較中保持一致。不要用需要登入、經常重新導向或嚴格限制自動請求的頁面來代表連線品質。目標本身異常時,所有伺服器都可能顯示失敗;更換目標後恢復,也不能直接證明連線路徑已修復。請記錄測試目標是否變更,以及失敗發生於解析、交握還是回應階段。

逾時時間太短,可能會把短暫波動判定為失敗;設得太長,則會讓無法連通的測試等待較久。建議先沿用目前的預設行為,確認網路確實需要更長等待時間後再調整;不要把逾時時間設得很長來掩蓋持續性故障。同時進行多項測試也會消耗網路與裝置資源,尤其在訊號較弱或背景工作較多時,測量本身可能影響結果。比較前請停止不必要的大流量工作,並盡量維持相近的測試條件。

對照實際存取狀況

在 Home 執行 Connectivity Test 後,請選擇一項具體的故障服務進行測試:記下網域、Global Routing 模式與選取的伺服器,再到 Log 查看新建立的請求。測試成功但頁面無法開啟時,先確認頁面是否採用了不同策略、是否另外請求其他網域,以及有沒有憑證或驗證錯誤。不要只根據伺服器清單排序來回切換,因為排序結果並未涵蓋每個應用程式的實際需求。

建議每次驗證都記錄三項:測試方式、測試目標與實際存取結果。延遲不等於頻寬,單次成功也不能保證持續可用。

所有測試都同時失敗時,先檢查本機基本網路與權限;只有一台伺服器失敗時,再核對其位址、連接埠與協定參數。協定包括 Shadowsocks、VMess、VLESS、Trojan、Hysteria2 與 WireGuard,各自需要的欄位不同,不要因測試失敗就任意更換協定。參數應與使用者已有的伺服器資訊一致;匯入步驟請見Add Server 操作說明,不要試圖透過測試設定補上缺漏的驗證資料。

Settings › Log

5. Log 記錄範圍與證據整理

從可重現的操作開始

Log 用來查看連線與處理過程,不是自動判定所有錯誤原因的結論頁。同樣是「逾時」,可能發生於解析器、伺服器連接埠或最終目標,必須依上下文判斷。建議先將問題縮小為一項操作,例如連線後開啟指定網域,再查看這次操作前後的記錄。一次開啟多個應用程式、同時更新訂閱並批次測試,會讓多項事件混在一起,難以釐清因果順序。

記錄是否開啟、詳細程度與可儲存範圍,請以目前 Settings › Log 顯示的選項為準,不要假設所有平台都有相同的記錄層級。預設狀態可能受到既有設定影響;日常使用建議保留足以進行基本排查的程度,只有重現問題時才暫時提高詳細程度。持續記錄詳細資訊可能增加儲存與處理負擔,也會累積更多網域、位址與連線資訊;排查完成後,請恢復原本的層級。

依連線階段閱讀,不要只搜尋錯誤字詞

先找到請求涉及的網域或位址,再查看套用的策略,接著檢查連線建立與回應過程。若完全沒有出現請求,可能是應用程式仍沿用舊連線、請求未經過目前路徑,或記錄範圍不包含該類事件;不能因此斷定網路沒有送出請求。若出現明確的 REJECT,優先檢查規則;若連線目標始終是伺服器本身,應先核對協定與驗證資訊,而非立刻修改最終網站的網域規則。

記錄線索需一併核對的資訊下一步方向
解析相關故障查詢網域、解析器、網路檢查 DNS 路徑
驗證或交握失敗協定、伺服器參數、系統時間核對原始伺服器資訊
策略與預期不符Global Routing、第一條命中規則檢查 Config 規則順序
連線後很快中斷網路切換、遠端回應、重現步驟區分連線路徑與工作階段問題

建立最小重現紀錄

開始前記下本機時間與目前網路,保留仍有參考價值的舊記錄片段,再依介面提供的方法清除記錄或標記起點。接著只執行一次操作,記下結果並停止其他測試。整理時保留故障前後連續的片段,不要只截取一個錯誤字詞;前一行可能說明目標位址,後一行則可能顯示重試結果。缺少這些上下文,其他人很難判斷同一提示發生在哪個連線階段。

問題若只在切換無線網路後發生,請分別比較切換前後的記錄,確認新連線是否使用了新的路徑。若問題只出現在某份 Config,請維持伺服器不變,比較目前使用的檔案與命中規則。每次只改變一個變數,才有機會將原因縮小至特定設定。看到重複錯誤時,不必立刻開啟所有偵錯項目;先確認重複記錄是否來自自動重試或 On Demand 再次觸發。

匯出前處理隱私資訊

記錄可能包含存取網域、伺服器位址、帳號欄位、訂閱網址或其他可識別資訊。分享前請移除完整訂閱連結中的驗證參數、密碼與個人資料;若必須替換位址,請在整段記錄中以相同代稱表示同一個位址,否則會破壞連線關聯。不要用整份設定檔代替問題描述,也不要在公開討論中貼上含有憑據的截圖。即使沒有直接顯示密碼,包含驗證參數的連結也應視為敏感資訊。

Log 用來整理證據,不能用來證明某條連線路徑「絕對正常」。保留階段、策略與結果,移除驗證資訊和個人資料,再描述可重現步驟。

排查完成後,請恢復 Log 層級,視需要清理本機匯出的副本,並確認沒有留下測試用的 DNS 或路由變更。若要繼續排查,先將問題歸類為解析、驗證、規則或系統權限,再查看連線故障問答。單純增加記錄數量不會自動得出更明確的結論;可重現的條件與連貫的上下文,才是後續判斷的基礎。

Settings › Widget

6. Widget 顯示、快速操作與狀態核對

快速入口不等於完整設定頁面

Widget 用於在系統提供的位置顯示資訊,或執行目前支援的快速操作。實際形式、尺寸與可操作項目取決於系統及 Shadowrocket 目前的介面,不能將單一裝置上的小工具版面視為所有平台通用功能。它適合減少重複進入用戶端的步驟,不適合取代 Config 編輯、協定參數核對與記錄分析。狀態異常時,應回到 Home 並核對系統 VPN 狀態,不要只憑 Widget 上的文字判斷連線情形。

預設顯示內容請以 Settings › Widget 與系統的新增介面為準;未新增到主畫面不代表用戶端的連線功能已關閉。建議先在用戶端內確認連線與中斷操作正常,再新增實際需要的小工具。如果系統未提供相應類型,請以目前可用的入口為準,不要為了尋找相同外觀而修改 DNS 或重新匯入伺服器。小工具是否顯示通常屬於系統展示或權限問題,與網域規則是否正確沒有直接關係。

新增後核對關聯狀態

在系統的小工具新增介面選取 Shadowrocket 後,依介面支援的方式放置並完成設定。首次使用時,先開啟用戶端一次,確認需要顯示的資訊已儲存,再返回小工具查看內容。若小工具允許選擇項目,請確認關聯的是目前使用的項目,而不是舊項目。刪除或重新命名伺服器、調整設定後,也要確認快速入口是否仍指向有效項目;不要只憑原本的標題推定關聯沒有變更。

操作情境建議核對避免混淆
顯示狀態未更新開啟 Home 核對目前連線顯示延遲與實際中斷
點按後重新連線檢查 On Demand 條件快速操作與自動觸發
原項目已刪除重新檢查小工具關聯項目舊標題與有效設定

重新整理、背景執行與網路切換

系統可能會限制小工具的更新頻率,因此顯示內容未必與用戶端每個瞬間同步。建議將小工具視為便捷入口與狀態參考,而非即時網路監測工具。鎖定畫面、低電量狀態、背景排程與網路變更都可能影響顯示時機。出現舊狀態時,先進入用戶端核對,再等待系統更新;不要為了追上尚未更新的顯示內容,就連續刪除設定或切換伺服器。

使用快速操作中斷連線後,如果又看到連線恢復,請優先檢查 On Demand,不要認定小工具沒有執行。操作可能已成功,之後系統又依條件重新建立連線。反過來說,小工具顯示已連線,也不代表目標請求採用了正確策略;Config 中的 DIRECT 或 REJECT 仍可能生效。請建立新的實際請求進行驗證,並搭配 Log 確認路徑,不要把圖示或開關外觀當成流量路由的證據。

顯示資訊與隱私界線

小工具顯示在主畫面或系統其他可見區域時,旁人可能看到伺服器備註、設定名稱或連線狀態。建議使用不含帳號、電子郵件與驗證資訊的簡短備註。若裝置經常用於投放、展示或共用螢幕,請先檢查小工具顯示內容;重新命名不應改變原始連線參數。不要直接將訂閱網址當作備註,也不要為了方便辨識而把密碼寫進名稱;名稱與憑據應分開保存。

建議原則:只顯示日常需要的資訊,只保留用途明確且理解其作用的快速操作。系統狀態與實際請求不一致時,應一併核對用戶端、系統 VPN 狀態與新建立的請求。

小工具持續無法使用時,先檢查用戶端能否正常開啟、系統是否允許新增該小工具,以及原本關聯的項目是否仍存在;再嘗試依系統提供的方法移除後重新新增。沒有備份時,不要為了修復顯示問題而解除安裝用戶端,以免同時遺失本機設定。若用戶端本身也無法連線,問題已超出 Widget 範圍,請返回 Settings 總覽確認修改範圍,再依 DNS、權限或伺服器參數分別排查。

Settings › iCloud

7. iCloud 同步、移轉與覆蓋風險

區分資料同步、購買紀錄與系統權限

iCloud 相關功能用於在支援的環境中處理應用程式資料,不能取代 App Store 購買紀錄,也無法保證系統 VPN 權限會隨資料移轉。新裝置上看得到設定,不代表已完成首次網路權限確認;使用相同購買帳號取得應用程式,也不代表一定能看到另一台裝置上的所有設定。請分別檢查商店帳號、系統雲端服務帳號與用戶端實際同步範圍,避免把三種狀態混為一談。

是否預設啟用及哪些項目會參與同步,請至 Settings › iCloud 與系統相關設定中查看。本手冊不假設同步涵蓋所有欄位,也不保證其他平台使用相同的雲端服務機制。建議首次啟用前先儲存可在本機還原的副本,並確認介面列出的同步範圍。若只需移轉一份 Config,可先使用明確的匯出與匯入流程,不必為了單一檔案啟用所有同步項目。

先決定要保留哪一份資料

兩台裝置上已有不同設定時,請先選定要保留的來源,並另外記下另一台裝置的重要差異。不要在兩端同時大量重新命名、刪除與新增項目後,再期待系統自動判斷哪一份較合適。同步只負責傳遞狀態,不會理解你的操作意圖。發生衝突時,請閱讀目前介面的處理提示;若提示涉及取代或覆蓋,先停下來核對備份,不要連續確認。

移轉項目移轉前移轉後
Config 檔案儲存使用中的檔案與必要副本確認選取正確檔案
伺服器與訂閱核對原始資訊與有效狀態檢查參數與更新結果
系統網路權限記錄目前連線方式在新裝置重新核對授權
本機行為設定記錄 On Demand 等狀態逐項檢查,不要假設完全一致

同步完成後仍須確認實際連線

在目標裝置開啟用戶端,先確認項目是否完整,再核對目前使用的 Config、Global Routing 與選取的伺服器。只確認名稱相同並不足夠;連接埠、協定與其他參數都可能影響連線。接著手動建立一次連線,確認已處理權限提示,再測試實際目標。最後才設定 On Demand 與 Widget,才能區分資料移轉問題與自動觸發、顯示問題。

訂閱同步與訂閱更新是不同操作:同步可能讓另一台裝置取得既有項目;更新則需要存取使用者已有的訂閱網址,並依據回傳內容處理資料。新裝置上的項目數量或名稱不同時,先確認更新是否成功、使用的是否為同一網址,以及是否有本機編輯。不要立刻刪除舊資料再反覆更新,否則可能同時失去仍可使用的本機記錄與比對依據。

帳號與敏感資料的處理

啟用同步前,請先了解設定可能包含伺服器位址、密碼、驗證欄位與訂閱資訊。裝置與帳號由誰控制,會影響哪些人可能存取這些資料。在共用裝置上應謹慎保留完整設定;出售、轉交或停止使用裝置時,請依系統與用戶端提供的方法處理個人資料。從主畫面移除 Widget 不會刪除設定,關閉某個同步開關也不代表所有已儲存的副本都已清除。

同步不能取代獨立備份。刪除或錯誤修改也可能同步到其他裝置;進行重要變更前,請保留一份不依賴即時同步的可還原副本。

同步長時間沒有變化時,先檢查雲端服務登入狀態、可用空間、網路與應用程式權限,再查看用戶端提示。不要為了催促同步而在兩台裝置間反覆切換所有設定,這會增加狀態差異。若必須還原,先停止繼續編輯,保留兩端現況,再使用已確認的副本還原其中一端並驗證。已購應用程式的重新取得方式另見換機與重新安裝說明;資料還原不能取代用戶端的購買與取得流程。

Settings › Proxy

8. Proxy 本機連接埠與存取範圍

本機監聽連接埠不是遠端伺服器連接埠

Proxy 相關設定可能包含提供本機應用程式連線使用的 HTTP 或 SOCKS 代理連接埠,實際項目請以目前介面為準。這些連接埠是用戶端在本機提供的入口,與 Add Server 中填寫的遠端伺服器連接埠不同。修改本機連接埠不會改變服務提供者提供的遠端參數,也不會讓其他應用程式自動使用代理。需要使用該入口的應用程式,必須支援相應的代理方式,並明確填入本機位址與連接埠。

預設連接埠與監聽位址應以目前設定為準,不要根據網路範例猜測固定數字。沒有本機代理需求時,建議維持原狀,不要為了所謂的「最佳化」額外開放監聽。確有需要時,請記錄連接埠、協定與存取範圍;若介面允許設定綁定位址,僅供本機使用的入口應優先限制在本機。擴大至區域網路會改變哪些裝置能連線至此入口,因此必須一併考量網路可信度、存取控制與系統防火牆。

位址、連接埠與協定必須相互對應

迴圈位址 127.0.0.1 代表目前裝置本身,不代表同一個無線網路中的其他裝置。在電腦上填入此位址,連線目標是電腦本身,而不是手機上的 Shadowrocket。若確實需要設定跨裝置存取,應使用提供服務裝置實際可連線的位址,並檢查監聽範圍;這涉及額外的網路管理,不要只因連接埠已開啟,就認定其他裝置一定能連線。

欄位說明常見誤用
本機位址用戶端接受連線的介面讓其他裝置也使用迴圈位址
本機連接埠本機代理入口的連接埠號碼誤填遠端伺服器連接埠
HTTP / SOCKS應用程式使用的代理通訊方式任意替換兩種協定
存取範圍哪些裝置可以連線至入口只供本機使用,卻開放整個網路

如何區分連接埠衝突與連線失敗

其他程序占用連接埠時,用戶端可能無法建立相應的監聽服務。此時請先查看提示與記錄,確認是哪個本機入口失敗,不要修改伺服器密碼。需要更換連接埠時,請選擇目前未被使用且介面允許的值,同時更新呼叫該代理的應用程式設定。只修改用戶端而不修改呼叫端,會造成新的設定不一致;測試完成後也請記下新值,避免下次還原舊設定時再次出錯。

本機入口可以連線,但目標請求失敗時,請繼續檢查用戶端連線狀態、Global Routing 與目前使用的規則。應用程式可能已成功將請求交給本機代理,後續卻在遠端驗證或目標連線階段失敗。反過來說,若應用程式顯示本機連線遭拒,先確認用戶端仍在執行、對應入口已啟用,以及位址與連接埠正確。區分這兩種狀況,才能避免把所有問題都歸咎於連線路徑異常。

系統通道與明確指定代理的適用範圍

系統 VPN 通道與應用程式明確填寫的代理設定,是兩種不同的流量接入方式。並非所有應用程式都會遵循系統的明確代理設定,也不是開啟本機連接埠就能涵蓋所有應用程式。不了解路徑時,不要疊加多層代理,以免形成迴圈、重複處理或讓記錄難以判讀。建議先驗證一種接入方式,再確認是否確實需要同時啟用另一種,不要把路徑複雜化誤當成增加功能。

建議原則:供本機使用的入口僅限本機;跨裝置使用前先明確界定存取範圍。不要將本機代理連接埠暴露在無法控制的網路,也不要把它當成對外提供連線的服務。

結束測試時,除了還原 Shadowrocket 的連接埠與監聽狀態,也要清除其他應用程式中暫時填入的代理位址。否則用戶端停止後,這些應用程式可能仍會嘗試連線至失效的本機入口,看起來就像整台裝置網路異常。桌面系統若也修改過系統代理,請一併依照原始記錄還原。確認一般網路恢復後,再逐項啟用必要設定;規則路由不如預期時,請前往下一章檢查 Config,不要繼續更換本機連接埠。

Config › Rule

9. Global Routing、規則與設定的連動

先確認目前採用的模式

Global Routing 中的 Config、Proxy、Direct 分別代表依設定檔分流、代理與直連模式。Config 依照目前使用的設定檔處理請求;Proxy 採用代理模式;Direct 則採用直連模式。排查規則前,必須先確認目前使用的是 Config;否則即使規則語法正確,也可能沒有依預期參與請求處理。預設模式應查看 Home 目前的顯示,不要把教學中的某個步驟當成所有裝置永久不變的初始值。

模式主要用途建議情境
Config · 設定檔依目前使用的設定檔進行分流核對規則後的日常使用
Proxy · 代理以代理模式測試存取短時間比較,排除規則的影響
Direct · 直連以直連模式比較存取檢查基本網路與路徑差異

規則順序與 FINAL 的位置

規則由上而下比對,命中第一條後即採用相應策略,因此較具體的條件通常應放在較廣泛的條件之前。DOMAIN 用於比對指定網域,DOMAIN-SUFFIX 用於比對網域後綴,DOMAIN-KEYWORD 依關鍵字比對;IP-CIDR 與 IP-CIDR6 用於比對位址範圍,GEOIP 則依位址歸屬資料判斷。不同規則依賴的資訊各異;網域存在,不代表位址規則無須解析就能完成判斷。

前面的規則都未命中時,FINAL 會作為後備策略,通常應放在規則清單最末端。若將它放在其他需要執行的規則之前,後續規則就沒有機會命中。以下是用來理解語法的精簡 .conf 片段,並非完整設定檔,也不是通用建議清單;範例網域與區域網路範圍僅用於說明順序,匯入前請依自己的既有設定判斷是否適用。

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

在這段範例中,example.com 及其子網域會先命中 DOMAIN-SUFFIX,不會繼續比對後面的關鍵字規則。PROXY、DIRECT、REJECT 分別代表代理、直連與拒絕策略,不要與介面模式的大小寫混用來取代其含義。若要封鎖特定目標,可以使用 REJECT,但應先確認影響範圍;一個頁面通常會連線至多個網域,拒絕其中某項資源可能改變整個頁面的呈現,而不只是讓某個可見按鈕失效。

建議透過比較方式,判斷設定的影響

Config 模式下失敗、Proxy 模式下成功時,優先檢查命中策略、目前使用的檔案與 DNS 路徑,不必立刻更換伺服器;兩種模式都失敗時,再檢查遠端參數與基本連線。Direct 的結果只反映目前直連路徑的狀況,不代表其他路徑一定有問題。每次切換後都請使用新建立的請求驗證,避免舊連線沿用原本路由,造成比較結果互相矛盾。

訂閱更新、設定檔更新與手動編輯應分開管理。訂閱主要用來處理使用者已有的伺服器資訊;Config 則負責相關設定內容。更新其中一項,不代表另一項也已同步變更。編輯前請確認修改的是目前使用的檔案;更新前先保留重要的自訂規則。重新匯入外部設定後,請檢查本機修改是否遭到覆蓋,不要只因檔名相同就認定內容沒有變動。

日常使用建議採用已核對的 Config;排查時可短暫比較 Proxy 與 Direct。測試完成後,請恢復原本模式,並重新核對 DNS、On Demand 與目前使用的規則,避免留下暫時設定。

規則與 DNS 的連動應透過 Log 確認:先找到目標,再查看第一條命中規則,最後檢查後續連線。如需進一步了解優先順序,請閱讀自訂規則優先順序與 FINAL;若要補做匯入步驟,請返回Subscribe 操作說明。將設定變更、單次請求與對應記錄連結起來,比不斷增加規則更有助於穩定維護。