全部產品
Search
文件中心

HTTPDNS:錯誤注射測試

更新時間:Dec 09, 2025

在完成Android SDK接入流程後,您可以利用 HTTPDNS 的自訂解析功能,將業務網域名稱解析到無效 IP,以驗證接入是否已成功生效。本文將提供具體的測試方法與步驟。

驗證原理

HTTPDNS 通過 HTTP 或 HTTPS 協議直接向阿里雲 DNS 伺服器發起解析請求,繞過系統 Local DNS,避免因網路環境導致的解析失敗。

錯誤注射測試依賴於 HTTPDNS 提供的 “自訂解析” 功能。通過將目標業務網域名稱的解析結果設定為一個無效 IP 位址,可以人為注入一個可控的解析錯誤。在錯誤注射的環境下發起網路請求時:

  • 請求成功:仍依賴 Local DNS 進行解析,返回正常 IP,HTTPDNS 接入失敗。

  • 請求失敗:使用了 HTTPDNS 返回的無效 IP,HTTPDNS 接入成功。

測試準備

  • 測試裝置:安卓手機或模擬器,可連網

  • App 狀態:已整合 EMAS HTTPDNS SDK

  • 測試網域名稱:已在阿里雲 HTTPDNS 控制台配置並正常解析的業務網域名稱

測試步驟

步驟 1:正常網路驗證

  1. 將測試裝置串連至任意可用 Wi‑Fi 網路,保持預設 DNS 設定。

    image

  2. 在關閉 HTTPDNS 的情況下,開啟 App,觸發任意一個通過網域名稱訪問的網路請求(如首頁載入、介面調用)。

  3. 確認請求返回正常。

說明

此步驟用於建立對比基準,確保 App 和服務在正常網路環境下工作正常

步驟 2:錯誤注射(自訂解析)

  1. 登入EMAS控制台

  2. 進入 HTTPDNS 服務,在左側導覽列選擇 解析管理 > 自訂解析。image

  3. 參考配置基於規則的自訂解析添加自訂解析,並設定解析到無效的 IP 位址。image

步驟 3:在“錯誤注射”環境下進行驗證

  1. 開啟 HTTPDNS,在測試裝置上啟動應用。

  2. 觸發與步驟 1 相同的業務請求(例如首頁載入或介面調用)。

  3. 觀察請求結果:

    請求結果

    結論

    樣本

    網路請求失敗

    網域名稱解析由 HTTPDNS 完成,返回了無效 IP,導致網路請求失敗,說明 HTTPDNS 接入成功

    image

    網路請求成功

    • 首次請求成功,可能存在緩衝缺失降級到 Local DNS 的情況,稍等後重試

    • 若多次請求均成功,說明仍依賴 Local DNS 解析,未走 HTTPDNS 路徑,因而返回正常 IP 並完成請求,HTTPDNS 接入失敗

    image

    說明

    在使用同步非阻塞介面進行網域名稱解析時,建議開啟預解析setPreResolveHosts和允許到期介面setEnableExpiredIp,以確保本機快取中有可用解析結果,避免因緩衝缺失而回退到 Local DNS,從而影響驗證準確性。