1. 程式人生 > >DNS域名解析總結

DNS域名解析總結

       網際網路都是通過URL來發布和請求資源的,而URL中的域名需要解析成IP地址才能與遠端主機進行連線,這就需要依賴DNS域名伺服器。雖然我們平時上網並不察覺DNS伺服器的存在,但是它們的地位是非常重要的,一旦DNS伺服器出錯,可能導致網際網路災難。在過去的很長時間內,全世界的DNS根伺服器的數量屈指可數,任何一臺出現故障都會造成很大的危害(檢視更多)。

DNS域名解析過程:

當用戶在瀏覽器輸入一個網址時,DNS解析會有以下步驟:

1.瀏覽器查詢快取中是否有這個域名對應解析過的IP地址,如果快取中有,解析過程就會結束。通常瀏覽器的快取是有時間限制的,一般是幾分鐘到幾小時不等,可以通過TTL屬性來設定。

2.如果瀏覽器快取沒有,瀏覽器就會查詢作業系統中是否存在域名對應的DNS解析結果。例如在Window中可以訪問C:\Windows\System32\drivers\etc\hosts檔案來設定,理論上你可以將任何域名解析到任何能夠訪問的Ip地址,所以黑客就可以通過修改域名解析檔案來把特定的域名解析到它指定的IP地址上,這就是域名劫持(檢視更多)。

3.如果前兩步沒有完成域名解析,那麼作業系統就會將域名傳送到你本地網際網路接入的DNS解析服務,如果你是在學校接入網路,那麼你的DNS在你的學校,如果你是通過某些運營商接入網路的,那麼你的DNS通常是在你城市的某個角落,一般不會很遠在這個階段一般80%的域名解析都可以完成了。

4.如果本地域名解析沒有命中,就直接到Root Server域名伺服器請求解析。

5.根域名伺服器返回給本地域名伺服器一個所查詢的主域名伺服器(gTLD Server)地址。gTLD是國際頂級域名伺服器,如.com、.cn、.org等等

6.本地域名伺服器再向上一步返回的gTLD伺服器傳送請求。

7.接受請求的gTLD伺服器查詢並返回域名對應的Name Server域名伺服器的地址。

8.Name Server域名伺服器回查詢儲存的域名與IP的對映關係表,在正常的情況下都可以根據域名得到目的IP,連同一個TTL值返回給DNS Server域名伺服器。

9.Name Server返回給本地DNS伺服器域名對應的IP地址,本地域名伺服器會快取這個域名和IP的對應關係,快取的時間由TTL值控制。

10.本地域名伺服器將結果返回給瀏覽器,瀏覽器根據TTL之快取在本地的系統快取中,域名解析過程結束。

注:在實際的DNS解析中,可能還不止10個步驟,例如Name Server也可能有多級,或者一個GTM來負載均衡控制。