搞懂這 9 步,DNS 訪問原理就明明白白了

又到了招聘季了,前兩天遇到一個面試的小夥伴,他說面試官和他聊得很投機,無意中談到了 DNS 請求的過程。他一時語塞隨便應付了兩句,雖然對方沒有追問的意思,但最後面試結果也並不理想。本着邊面試邊學習的態度,我們來看看 DNS 請求的過程中涉及到的定義和原理。

DNS 的含義和結構

衆所周知,在互聯網中是用 IP 來標識一臺服務器的。IP 地址雖然能夠代表一臺設備,但是由於記憶起來比較困難,所以將其替換成一個能夠理解和識別的名字,這個名字我們稱作爲域名。例如:www.51cto.com 就是一個域名,在域名後面會定義一個 IP 地址用來指向網站服務器。那麼問題來了,誰來做這個從域名到 IP 地址的對應呢?答案是通過 DNS 來實現。

DNS 是域名系統(Domain Name System,縮寫:DNS)是互聯網的一項服務。它將域名和 IP 地址相互映射的一個分佈式數據庫,在數據庫中保存域名與 IP 的對照關係,從而使人更方便地訪問互聯網。

DNS 解析是分佈式存儲的,從結構上來說最頂層是,根域名服務器(ROOT DNS Server),存儲 260 個頂級域名服務器的 IP 地址。對於 Ipv4 來說全球有 13 個根域名服務器,它儲存了每個域(如. com .net .cn)的解析和域名服務器的地址信息。簡單的說,根域名服務器就是存放頂級域名服務器地址的。

在根域名服務器下一級就是,頂級域名服務器。例如. com 的域名服務器,存儲的是一些一級域名的權威 DNS 服務器地址 (如 toutiao.com 的 DNS)。

頂級域名又稱一級域名,頂級域名可以分爲三類,即 gTLD、ccTLD 和 New gTLD:

頂級域名服務器就是根據上面三類保存域名 IP 對應數據的。

在頂級域名服務器下面一級就是,本地域名服務器(Local DNS)一般是運營商的 DNS,主要作用就是代理用戶進行域名分析的。

如圖 1 所示,DNS 域名服務器分爲三級,從上到下分別是根域名服務器(Root DNS Server)、頂級域名服務器(gTLD、ccTLD、New gTLD)、本地域名服務器(Local DNS Server)。

圖 1 DNS 分層結構

DNS 解析原理

說完 DNS 的結構,再來談談其運行原理。通過用戶訪問網頁的過程,來描述 DNS 解析以及獲取 URL 到 IP 映射的整個過程。其中過程比較複雜,會存在信息的來回傳遞。畫圖的過程中我們會簡化信息來回傳遞的線段,重點放在信息傳遞的路徑,通過 9 步來詮釋 DNS 解析過程。

圖 2 用戶請求以及 DNS 解析的全過程

1A (Address) 記錄是用來指定主機名(或域名)對應的IP地址記錄。用戶可以將該域名下的網站服務器指向到自己的web server上。同時也可以設置您域名的二級域名。
2
3CNAME:別名記錄。這種記錄允許您將多個名字映射到另外一個域名。通常用於同時提供WWW和MAIL服務的計算機。例如,有一臺計算機名爲“host.mydomain.com”(A記錄)。它同時提供WWW和MAIL服務,爲了便於用戶訪問服務。服務商從方便維護的角度,一般也建議用戶使用CNAME記錄綁定域名的。如果主機使用了雙線IP,顯然使用CNAME也要方便一些。
4
5TTL(Time To Live):也就是設置這個DNS解析在Local DNS Server上面的過期時間。超過了這個過期時間,URL和IP的映射就會被刪除,需要獲取還要請求Name Server。
6
7

GTM(Global Traffic Manager 的簡寫)即全局流量管理,基於網宿智能 DNS、分佈式監控體系,實現實時故障切換及全球負載均衡,保障應用服務的持續高可用性。傳給 GTM 的目的就是希望通過 GTM 的負載均衡機制,幫助用戶找到最適合自己的服務器 IP。

也就是離自己最近,性能最好,服務器狀態最健康的。而且大多數的網站會做 CDN 緩存,此時就更需要使用 GTM 幫你找到網絡節點中適合你的 CDN 緩存服務器。

總結

NS 服務器是用來做 URL 與 IP 地址解析的,幫助用戶找到要訪問服務器的 IP。從 DNS 服務器的結構來說大致分爲三層:根域名服務器,頂級域名服務器,本地域名服務器。

申請域名的供應商會提供 Name Server 作爲 DNS 解析。從用戶訪問一個網站出發,經過瀏覽器,本地 Host 文件、Local DNS Server、Root DNS Server、頂級域名服務器(gTLD、ccTLD、New gTLD)、Name Server、GTM、CDN、Application Server。共經歷了九個步驟。

本文由 Readfog 進行 AMP 轉碼,版權歸原作者所有。
來源https://mp.weixin.qq.com/s/dKK438Ibgx0NUwag7ph-pw