Android P 開發者預覽版支持 DNS over TLS

做者:Erik Kline (Android 軟件工程師) & Ben Schwartza (Jigsaw 軟件工程師)android

絕大多數網絡鏈接的第一步都是 DNS 查詢。客戶端 (如智能手機) 一般使用由 Wi-Fi 或者移動網絡提供的 DNS 服務器。客戶端向該 DNS 服務器發起查詢,將域名 (如 developer.android.google.cn) 轉換成 IP 地址 (如 2607:f8b0:4005:808::2003)。在 IP 地址返回到客戶端後,客戶端就能鏈接到目的地址。安全

在 1980 年代 DNS 協議剛誕生之時,互聯網的規模和複雜程度遠不及如今。在過去的幾年中,互聯網工程任務組 (Internet Engineering Task Force) 一直致力於定義新的 DNS 協議,爲用戶提供最新的安全以及隱私保護。該協議被稱爲 DNS over TLS 協議 (標準化爲 RFC 7858)。服務器

和 HTTPS 同樣,DNS over TLS 使用 TLS 協議創建一條通往服務器的安全通道。一旦安全通道創建成功,除了對鏈接有監控權限的人以外,沒有人能夠讀取或者更改 DNS 查詢和響應 (安全通道僅應用於 DNS,所以它沒法保護用戶免遭其它類別的安全以及隱私侵犯。)網絡

Android P 中的 DNS over TLS 安全協議

Android P 開發者預覽版內置對 DNS over TLS 的支持,在 「網絡和互聯網」 設置中添加了隱私 DNS (Private DNS) 模式。測試

在默認設置下,若網絡的 DNS 服務器提供支持,設備會自動升級至 DNS over TLS 協議。若是用戶不肯意使用 DNS over TLS 協議,可自行關閉。

若用戶想使用私有 DNS 服務器,那麼他們能夠輸入一個主機名。Android 會經過安全通道向該服務器發送全部 DNS 查詢;在沒法送達服務器的狀況下,則會標記該網絡爲 「無網絡訪問」。google

用於進行測試,您可閱讀《由社區維護的可兼容服務器名單操作系統

DNS over TLS 模式自動爲全部系統上的應用提供安全 DNS查詢。不過,若應用未使用系統 API,而是自行運行 DNS 查詢,它們必須確保在系統進行安全鏈接狀況下,不發送不安全的 DNS 查詢。應用能夠調用新的 API —— LinkProperties.isPrivateDnsActive(),來獲取該信息。3d

咱們宣佈,從 Android P 開發者預覽版開始,將會內置對 DNS over TLS 的支持。從此,咱們但願 DNS 安全傳輸可以覆蓋全部操做系統,爲廣大用戶的每一次新鏈接都提供更好的安全隱私保護。cdn

能夠點擊 「Android Developers 官方文檔」 查看更多關於 Android 開發的內容blog

相關文章
相關標籤/搜索