DNS分層結構及DNS解析流程

youbingke發表於2022-10-26

什麼是DNS?

DNS是Domain Name System的縮寫,翻譯成中文就是“域名系統”。DNS是網際網路中的一項核心服務,是用於實現域名和IP地址相互對映的一個分散式資料庫,它可以將域名翻譯成由計算機識別的IP地址串,讓使用者可以透過域名達到站點所在伺服器,而不用去記住繁瑣複雜的IP地址。

域名的分層結構

由於網際網路上的使用者數量較大,所以在命名的時候採用的是樹狀層次結構。任何一個連線網際網路的主機或路由器,都有一個唯一的層次結構名字,也就是域名。域名的結構由標號序列組成,各標號之間用點隔開。類似於這樣:“….三級域名.二級域名.頂級域名” 。

“.”最右邊的部分稱作“頂級域名”。“頂級域名”又叫“一級域名”,例如:.com、.org、.net、.cn 等。“二級域名”就是在“一級域名”前再加一級,如 baidu.com。“二級域名”以上級別的域名,統稱為“子域名”,不在“註冊域名”的範疇中。

各級域名由其上一級的域名管理機構管理,而最高階的頂級域名則由ICANN進行管理。

DNS的分層結構

與域名相對應,DNS伺服器也有對應的層級結構。根據DNS伺服器所起的作用,可以將DNS伺服器分為四種類:

根DNS伺服器

Root nameserver。它是最高層次的DNS伺服器,當本地域名伺服器沒有解析記錄時,首先會向根域名伺服器發起請求,並獲取下一級頂級域名伺服器的IP地址。

頂級域名伺服器

Tld nameserver。頂級域名伺服器負責管理在該伺服器註冊的所有二級域名。本地域名伺服器根據根域名伺服器給出的IP地址,對頂級域名伺服器發起請求,並獲取域名所在權威伺服器地址。

權威域名伺服器

authoritative nameserver。在特定區域內具有唯一性,負責維護該區域內的域名與IP地址之間的對應關係,例如中科三方雲解析DNS。

本地域名伺服器

DNS resolver或Local DNS。本地域名伺服器並不屬樹狀結構的DNS域名伺服器,但是它對域名系統非常重要。當客戶端發起DNS請求時,首先會將請求發給本地域名伺服器。使用者本機自動分配的DNS、運營商ISP分配的DNS、谷歌/114公共DNS等,都屬於本地域名伺服器範疇。

每一層的域名都有自己的域名伺服器,上一級的域名伺服器都知道下一級域名伺服器的IP地址,以便於一級一級向下查詢。

DNS解析過程

DNS解析通常會先查詢本地域名伺服器中的快取,如果快取中有結果直接返回,解析到此結束。如果本地伺服器沒有快取,就會進行全球遞迴查詢,步驟如下: 1.使用者在瀏覽器輸入一個域名,首先會請求本地域名伺服器,本地伺服器沒有結果,開始進行遞迴查詢;

2.本地域名伺服器首先向根域名伺服器進行查詢;

3.根域名伺服器告訴本地域名伺服器下一級頂級域名伺服器的地址;

4.本地域名伺服器向頂級域名伺服器發起解析請求;

5.頂級域名伺服器告知下一級權威域名伺服器的IP地址;

6.本地域名伺服器向權威域名伺服器發起查詢請求;

7.權威域名伺服器告知域名對應的IP地址;

8.本地域名伺服器將查詢到的結果響應給瀏覽器並在自身快取一段時間。

9.瀏覽器向得到的IP地址發起訪問請求;

10.該IP處的web伺服器返回要在瀏覽器中呈現的網頁。


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69996004/viewspace-2920500/,如需轉載,請註明出處,否則將追究法律責任。

相關文章