告別DNS劫持,一文讀懂DoH

若是評選一個差評服務器榜單,除去育碧高居榜首外,必定也少不了 Nintendo Switch 讓人頭禿的聯網服務。儘管任天堂已經架設了香港 CDN 服務器用於加速,可是更新安裝的速度也沒有什麼大幅改變。通常這種時候你們都會選擇更改 DNS 來提升 NS 下載速度。html

DNS(域名系統)是工做生活中很常見的名詞,用戶只須要在瀏覽器中輸入一個可識別的網址,系統便會在很短的時間內找到相應的 IP 地址。在解析過程當中,DNS 會訪問各類名稱服務器,從這些名稱服務器中獲取存儲着的與 URL 對應的數字地址。截止到如今,DNS 已經發展了幾十年,雖然使用普遍,卻不多引發人們對其安全性的關注。瀏覽器

從安全角度來看,請求傳輸時一般不進行任何加密,任何人均可以讀取的 DNS 實際上是不安全的。這意味着網絡罪犯能夠很容易地使用本身的服務器攔截受害者的 DNS,將用戶的請求跳轉到釣魚網站上,這些網站發佈惡意軟件,或在正常網站上投放大量廣告吸引用戶,這種行爲咱們稱之爲 DNS 劫持。爲了減小這類狀況的發生,業界專家目前在掙扎討論基於 HTTPS 的 DNS(DoH)的可行性選擇。那麼什麼是經過 HTTPS 的 DNS,它可使 Internet 更安全嗎?咱們一塊兒來看看吧。緩存

爲何須要經過 HTTPS 的 DNS?

在平常上網中,若是用戶輸入沒法解析的網址(例如,因爲輸入錯誤),則某些 Internet 提供商(ISP)會故意使用 DNS 劫持技術來提供錯誤消息。一旦 ISP 攔截了此內容,就會將用戶定向到本身的網站,在該網站宣傳本身或第三方的產品。雖然這並不違法,也不會直接損害用戶,可是該類重定向仍會讓用戶反感。所以,單獨使用 DNS 協議並非很是可靠的。安全

而 DoH (DNS over HTTPS)即便用安全的 HTTPS 協議運行 DNS ,主要目的是加強用戶的安全性和隱私性。經過使用加密的 HTTPS 鏈接,第三方將再也不影響或監視解析過程。所以,欺詐者將沒法查看請求的 URL 並對其進行更改。若是使用了基於 HTTPS 的 DNS ,數據在傳輸過程當中發生丟失時,DoH 中的傳輸控制協議(TCP)會作出更快的反應。服務器

DNS劫持

目前,DoH 還沒有成爲 Internet 上的全球標準,大多數鏈接仍依賴基本的 DNS。到目前爲止,僅 Google 和 Mozilla 兩家公司涉足了這一領域。Google 現正在與部分用戶一塊兒測試該功能。此外,還有用於移動設備的應用程序,這些應用程序也能夠經過 DoH 進行網上衝浪。Android Pie 也提供了經過網絡設置啓用基於 HTTPS 的 DNS 選項。網絡

Firefox DoH 配置

經過 HTTPS 的 DNS 如何工做?

一般一些域名解析會直接從用戶的客戶端進行,相應的域名信息被保存在瀏覽器或路由器的緩存中。而期間傳輸的全部內容都須要經過 UDP 鏈接,由於這樣能夠更快速地交換信息。可是咱們都知道,UDP 既不安全也不可靠。使用該協議時,數據包可能會隨時丟失,由於沒有任何機制能夠保證傳輸的可靠性。測試

而 DoH 依賴於 HTTPS,所以也依賴於 TCP,一種在 Internet 上使用頻率更高的協議。這樣既能夠對鏈接進行加密, TCP 協議也能夠確保完整的數據傳輸。另外,使用了基於 HTTPS 的 DNS,通訊始終經過 443 端口進行,並在 443 端口傳輸實際的網絡流量(例如,訪問網站)。所以,外人沒法區分 DNS 請求和其餘通訊,這也保障了更高級別的用戶隱私。網站

DoH 的優勢和缺點

DoH 的優勢是顯而易見的,該技術提升了安全性並保護了用戶隱私。與傳統的 DNS 相比,DoH 提供了加密措施。它利用 HTTPS 這種行業通用的安全協議,將 DNS 請求發往 DNS 服務器,這樣運營商或第三方在整個傳輸過程當中,只能知道發起者和目的地,除此之外別的什麼都知道,甚至都不知道咱們發起了 DNS 請求。加密

DoH 的加密措施可防止竊聽或攔截 DNS 查詢,但這也會帶來了一些潛在的風險。多年以來實施的一些互聯網安全措施都要求 DNS 請求過程可見。例如,家長控制須要依靠運營商爲一些用戶阻止訪問某些域名。執法部門可能但願經過 DNS 數據來跟蹤罪犯,而且許多組織都會使用安全系統來保護其網絡,這些安全系統也會使用 DNS 信息來阻止已知的惡意站點。引入 DoH 可能會嚴重影響上述這些狀況。所以,目前 DoH 還處於自主配置的時期。用戶須要清楚誰能夠看到數據,誰能夠訪問數據以及在什麼狀況下能夠訪問。spa

DoH 與 DoT

除了基於 HTTPS 的 DNS 外,目前還有另外一種用於保護域名系統的技術:基於 TLS 的 DNS(DoT)。這兩個協議看起來很類似,它們也都承諾了更高的用戶安全性和隱私性。可是這兩項標準都是單獨開發的,而且各有各的 RFC 文檔。DoT 使用了安全協議 TLS,在用於 DNS 查詢的用戶數據報協議(UDP)的基礎上添加了 TLS 加密。DoT 使用 853 端口,DoH 則使用 HTTPS 的 443 端口。

因爲 DoT 具備專用端口,所以即便請求和響應自己都已加密,但具備網絡可見性的任何人均可以發現來回的 DoT 流量。DoH 則相反,DNS 查詢和響應在某種程度上假裝在其餘 HTTPS 流量中,由於它們都是從同一端口進出的。

關於 DoT 和 DoH 究竟哪一個更好?這個還有待商榷。不過從網絡安全的角度來看,DoT 能夠說是更好的。它使網絡管理員可以監視和阻止 DNS 查詢,這對於識別和阻止惡意流量很是重要。另外一方面,DoH 查詢隱藏在常規 HTTPS 流量中。這意味着,若不阻止全部其餘的 HTTPS 流量,就很難阻止它們。

推薦閱讀

最容易被盜的密碼,你中了麼?

聊聊 DNS 的那些小知識

相關文章
相關標籤/搜索