在完成Android SDK接入流程後,您可以通過類比 Local DNS 異常的方式,驗證 HTTPDNS 是否已成功生效。本文將提供具體的測試方法與步驟。
驗證原理
HTTPDNS 通過 HTTP 或 HTTPS 協議直接向阿里雲 DNS 伺服器發起解析請求,繞過系統 Local DNS,避免因網路環境導致的劫持或解析失敗。
在行動裝置上,Local DNS 通常由當前網路提供:Wi‑Fi 串連時使用路由器或電訊廠商配置的 DNS,移動資料則使用電訊廠商的 DNS。以 Wi-Fi 環境為例,修改 Wi‑Fi DNS 相當於直接改變 Local DNS 的工作狀態,將 Wi‑Fi DNS 設定為無效地址,可製造 Local DNS 解析失敗的環境。在劫持類比的環境下發起網路請求時:
請求成功:已繞過 Local DNS,HTTPDNS 接入成功
請求失敗:依賴 Local DNS,HTTPDNS 接入失敗
測試準備
測試裝置:安卓手機,支援手動修改 Wi‑Fi DNS
網路環境:可串連 Wi‑Fi,並可手動修改其 DNS 地址
App 狀態:已整合 EMAS HTTPDNS SDK
測試網域名稱:已在阿里雲 HTTPDNS 控制台配置並使用的業務網域名稱
測試步驟
步驟 1:正常網路驗證
將測試裝置串連至任意可用 Wi‑Fi 網路,保持預設 DNS 設定。

在關閉 HTTPDNS 的情況下,開啟 App,觸發任意一個通過網域名稱訪問的網路請求(如首頁載入、介面調用)。
確認請求返回正常。
此步驟用於建立對比基準,確保 App 和服務在正常網路環境下工作正常
步驟 2:類比 Local DNS 解析異常
開啟測試裝置的 Wi‑Fi 設定,長按當前已串連的 Wi‑Fi,選擇“修改網路”或“進階選項”。
將 IP 設定更改為“靜態”。
在 DNS 1 和 DNS 2 欄位輸入無效的 IP 位址,例如
1.2.3.4或100.100.100.100,確保 Local DNS 無法解析網域名稱。說明注意:避免使用 114.114.114.114、8.8.8.8 等有效公用 DNS

儲存配置並重新串連該 Wi‑Fi 網路。
步驟 3:在“劫持”環境下進行驗證
確認裝置已串連步驟 2 中修改過的 Wi‑Fi(DNS 為無效地址)。
關閉移動資料連線,避免 Wi‑Fi 不可用時系統自動切換到移動網路。
開啟 HTTPDNS,開啟 App,觸發與步驟 1 相同的業務請求(例如首頁載入或介面調用)。
觀察請求結果:
請求結果
結論
樣本
網路請求成功
已繞過 Local DNS,網域名稱解析由 HTTPDNS 完成,說明HTTPDNS 接入成功

網路請求失敗
首次請求失敗,可能存在緩衝缺失降級到 Local DNS 的情況,稍等後重試
若多次請求仍失敗,說明仍依賴 Local DNS,解析在“劫持”環境下失敗,HTTPDNS 接入失敗
說明在使用同步非阻塞介面進行網域名稱解析時,建議開啟預解析setPreResolveHosts和允許到期介面setEnableExpiredIp,以確保本機快取中有可用解析結果,避免因緩衝缺失而回退到 Local DNS,從而影響驗證準確性。