Shadowrocket(小火箭)的 DoH 設定,是讓 DNS 查詢透過 HTTPS 傳送至指定的解析服務;它不會因此加密所有網路流量,也不會改變代理伺服器或規則本身。開始前,先確認目前 DNS 選項、保留可還原的設定,再填入服務提供的 DoH 網址並用相同網域測試。以下以 iPhone 上的 Shadowrocket 為例;不同版本的選項名稱或排列可能略有差異,請以 App 內實際顯示為準。
本文適合已有自己的連線設定、想在 iPhone 上啟用加密 DNS 的使用者。你會了解 Settings → DNS 的檢查方向、DoH 網址的填寫方式、直連網域與代理解析的差異,以及網站無法開啟時如何逐項排查並還原設定。DoH 服務網址請使用自己選定且信任的解析服務所提供的正式端點。
一、DoH 會加密什麼?先了解設定範圍
DoH 是 DNS over HTTPS 的縮寫,意思是將網域名稱解析請求透過 HTTPS 傳送至 DNS 服務。一般 DNS 查詢可能以未加密方式傳送;使用 DoH 時,查詢內容在裝置與 DoH 服務之間受到 HTTPS 保護,可降低同一段網路上的其他觀察者直接讀取 DNS 查詢的機會。
啟用 DoH 就等於所有上網活動都加密了嗎?不是。DoH 保護的是 DNS 查詢到解析服務這一段,不會取代網站自身的 HTTPS,也不會隱藏裝置與網站建立連線時的所有資訊。它亦不會改變 Shadowrocket 的代理協定、遠端伺服器位址、Global Routing 或規則策略。DNS 查詢與網站資料傳輸是相關但不同的環節,應分開檢查。
DoH 一定會接管每一個網域的解析嗎?不一定。實際使用哪個解析路徑,可能受目前的 DNS 設定、設定檔規則、代理方式與服務端解析行為影響。直連的網域通常由裝置端的 DNS 設定參與解析;若某類連線由代理端解析,目標網域的查詢可能由遠端處理,未必經過 iPhone 上設定的 DoH 服務。因此,不能只看一個網站能否開啟,就判定所有 DNS 查詢都已透過 DoH。
二、修改前如何備份並記錄 DNS 狀態?
為什麼要先備份?DNS 設定通常與其他連線選項分開管理;若網站在修改後無法解析,沒有記錄原值便很難判斷是 DoH 網址、DNS 模式還是原本的設定造成差異。先記下原有狀態,能在排查時只撤回這次變更,而不是同時重設伺服器、規則和整份設定檔。
-
記錄原設定
開啟 Shadowrocket → Settings → DNS,記下目前選取的 DNS 選項、DoH 開關狀態與已有的網址或位址。可截圖留存;若頁面有多個欄位,逐項確認並避免只記下服務名稱。
-
保留設定檔
前往 Config,確認目前使用的設定檔名稱。若 App 內提供複製、分享或匯出功能,可先保留一份副本;若沒有,至少記錄本次不會修改的規則與設定檔名稱。DNS 位於獨立頁面時,設定檔副本未必包含該頁面的所有選項,仍要另外截圖。
-
核對服務網址
從自己選定的 DNS 服務來源取得完整 DoH endpoint,確認是 HTTPS 網址、網域拼寫正確,且沒有多貼空格、換行或引號。服務若要求特定路徑,必須保留完整路徑,不要只填服務首頁。
-
建立測試基準
記下目前使用 Wi-Fi 或行動網路、Home 中的連線狀態及 Home → Global Routing 模式,再選一個平常可開啟的網域測試。修改後使用相同網路、相同網域重新測試,避免把網路切換造成的差異誤認為 DNS 變更效果。
服務網址是否只要填入網域名稱?不一定。DoH endpoint 通常是完整的 HTTPS URL,可能包含路徑;單填服務網域不一定指向可接受 DNS 查詢的端點。請使用解析服務明確提供的 DoH 格式,不要自行猜測路徑、加入伺服器資料中的連接埠,或將代理伺服器位址當成 DNS 服務網址。
三、在 Settings → DNS 設定 DoH 網址
應從哪裡開始?先確認 Home 的連線狀態,再進入 Settings → DNS。若頁面提供 DNS over HTTPS、DoH 或自訂 DNS 相關選項,依目前版本的欄位名稱設定;切換開關與輸入服務網址是兩個不同動作。不要因為看見網址已填入,就推斷 DoH 一定已啟用。
-
開啟 DNS 頁面
在 Shadowrocket 點選 Settings,再開啟 DNS。先確認頁面上目前使用的 DNS 類型或伺服器欄位,並與事前截圖比對,避免誤改其他網路選項。
-
選擇 DoH
若介面提供 DNS over HTTPS 或相應的 DoH 選項,依服務要求啟用該方式。若必須先選 DNS 類型,再輸入網址,請先選類型後檢查欄位是否切換;不要把 DoH 網址填入一般 DNS IP 位址欄。
-
輸入完整端點
將服務提供的 HTTPS endpoint 完整貼入對應欄位,仔細檢查開頭的
https://、主機名稱及路徑。若服務要求額外參數,依其正式說明處理;不要自行附加不明查詢字串。 -
儲存並重建請求
按下頁面提供的完成或返回操作,確認設定已保留。回到 Home,依原本使用方式重新連線或送出新的網域請求,再測試原先記錄的網址。若 iOS 或 App 仍使用先前的 DNS 快取,單純重載同一個頁面可能看不出即時差異。
DoH 網址可以照抄任何網路文章中的例子嗎?不建議。解析服務的 endpoint、隱私政策與可用性由服務提供者決定,第三方範例只能用來說明 URL 格式,不能保證目前仍有效或適合你的使用情境。請確認網址來自你信任的服務來源;不要把訂閱連結、代理伺服器 Address 或一般網站首頁貼進 DoH 欄位。
DoH 欄位檢查
- 入口
- Settings → DNS
- 協定
- DNS over HTTPS(DoH)
- 網址
- 使用服務提供的完整 HTTPS endpoint
- 儲存
- 確認離開頁面後設定仍保留
不同版本的欄位名稱可能不同,以 App 內顯示為準。
排查前記錄
- DNS 原值
- 截圖或逐項記下目前選項
- 網路
- 記錄 Wi-Fi 或行動網路
- 路由
- 記錄 Home → Global Routing 模式
- 測試目標
- 修改前後使用同一網域
一次只變更 DNS 項目,才能辨認問題來源。
四、直連網域的 DNS 要注意什麼?
使用 Config 時,直連規則會不會自動改用另一個 DNS?不能只看規則中的 DIRECT 就下結論。DIRECT 表示目標連線採直接策略;它本身不會指定 DoH 服務,也不等於 DNS 查詢必定以某一種方式傳送。實際解析行為仍要配合 DNS 頁面、規則選項及當前連線路徑確認。
| 情境 | 可能的解析位置 | 檢查方向 |
|---|---|---|
| 一般直連網域 | 可能由裝置端 DNS 設定參與解析 | 檢查 Settings → DNS,並以新請求測試 |
| 經代理連線且由代理端解析 | 可能由遠端代理或其解析服務處理 | 確認目前規則、代理方式及服務端解析行為 |
| 使用 IP 位址的目標 | 通常不需要先解析該目標的網域名稱 | 不要用單一 IP 連線結果判定 DoH 是否工作 |
| 剛修改設定後重訪舊網域 | 可能受到既有快取影響 | 稍候後建立新的請求,並與原測試條件對照 |
設定 DoH 後,直連網域突然無法載入,是否表示 DoH 一定設定錯誤?不一定。原因可能是 endpoint 無法連線、服務端拒絕請求、目前網路限制了相關連線,或網域原本依賴不同的解析路徑。先確認是所有網域都失敗,還是只有特定網域失敗;再比較 Wi-Fi 與行動網路,並確認 Global Routing 和對應規則沒有在測試期間改變。
結論:直連策略與 DNS 服務是兩個設定層次
要確認 DoH 是否影響某個網域,先記下該請求採用的策略,再檢查 DNS endpoint 和解析路徑。不要只因規則顯示 DIRECT,就假設解析一定由特定 DoH 服務完成。
五、網站打不開時,依序排查與還原
修改後只有部分網站失敗,該先改哪裡?先不要同時更換 DNS 服務、Global Routing、規則及伺服器。一次只做一項對照,並用相同網域重新送出請求。若所有網域都無法開啟,先確認基礎網路與 Shadowrocket 連線;若只有某個網域失敗,再檢查其規則和解析結果是否受代理路徑影響。
貼上網址後,DNS 頁面沒有變化?
確認貼入的是 DoH 專用欄位,而不是一般 DNS 位址欄;檢查網址是否包含完整的 https:// 與服務要求的路徑,再確認 DoH 選項已啟用並完成儲存。
只有一個網站打不開,該關閉 DoH 嗎?
先保留目前設定,檢查 Home → Global Routing 和該網域命中的規則,再用另一個平常可用的網域測試。若僅單一目標失敗,不能只憑此現象判定整個 DoH endpoint 故障。
關閉後,測試結果還是相同?
確認開關確實已切換並儲存,等待既有連線或快取影響消退,再送出新的網域請求。測試時維持相同網路和 Global Routing 模式;不要只重新整理同一個已開啟的分頁。
錯誤:網域名稱無法解析
可能原因與處理方式:DoH endpoint 拼寫錯誤、解析服務不可達,或目前網域走了不同的解析路徑。先逐字核對服務網址,再以另一個已知可用網域測試;若仍失敗,暫時還原原本 DNS 選項作為對照。
錯誤:DNS 連線逾時
可能原因與處理方式:目前網路可能無法連到指定服務,或端點暫時沒有回應。先確認 Safari 的基本網路可用,再分別以 Wi-Fi 和行動網路測試;不要把連線逾時直接當成網站伺服器故障。
錯誤:只有代理或直連其中一種模式失敗
可能原因與處理方式:兩種路徑可能使用不同的 DNS 解析位置。記下 Home → Global Routing 的目前模式,檢查目標網域命中的規則及代理端解析方式,再以相同網域做單一變數對照。
如何安全還原?回到 Settings → DNS,依事前截圖恢復原本的 DNS 類型、DoH 開關與網址;確認每個欄位都回到原值後,再用原先的網路與測試網域重新連線。若你另外修改了 Config 或其他規則,應逐項按自己的記錄還原,不要用重設整份設定檔代替單項復原。
恢復原 DNS 後仍無法開啟網站,接下來該怎麼做?先確認 Home 的連線狀態和基本網路是否正常,再檢查目標網域的規則策略、伺服器連線,以及是否需要完成 Wi-Fi 網頁認證。每次只改一個項目並保留錯誤原文;若問題只出現在特定服務或特定網路,將測試時間、網路類型與失敗網域記下,向自己的 DNS 服務提供者或連線服務提供者確認。
六、日常使用 DoH 的檢查原則
設定完成後需要一直監看 DNS 嗎?一般不必反覆切換開關,但在更換 Wi-Fi、行動網路或設定檔後,遇到網站無法解析時可重新核對。DoH 服務的可用性與政策由服務提供者決定;選擇服務前,應自行閱讀其資料處理說明,並評估是否適合自己的隱私與網路需求。
- 保留原值:重要 DNS 欄位先截圖或記錄,讓回復動作有明確依據。
- 使用正式 endpoint:從自己選定的服務來源取得完整 HTTPS URL,不猜測路徑或參數。
- 分開檢查路徑:分辨裝置端 DNS 與代理端解析,不把
DIRECT、PROXY誤認為 DNS 服務名稱。 - 同條件測試:修改前後使用同一網路、相同網域與相同 Global Routing 模式,並建立新的請求。
- 逐項還原:確認問題與 DoH 變更有關時,只還原 DNS 項目,再觀察其他設定是否仍保持原狀。
最重要的判斷是:DoH 只處理 DNS 查詢的傳輸方式,不會修復無效的代理參數,也不會代替規則或網路連線排查。先留存原設定,再設定可信任的完整 endpoint,最後以直連與代理的實際解析路徑分別驗證,才能在出現問題時快速定位並安全還原。