標籤:label 返回 不用 負載平衡 相對 全球 參考 遞迴 roo
一、什麼是DNS
DNS(Domain Name System,網域名稱系統),網際網路上作為網域名稱和IP地址相互映射的一個分散式資料庫,能夠使使用者更方便的訪問互連網,而不用去記住能夠被機器直接讀取的IP數串。通過主機名稱,最終得到該主機名稱對應的IP地址的過程叫做網域名稱解析(或主機名稱解析)。
二、DNS查詢的兩種方式
1)遞迴解析
所示的是遞迴方式。局部DNS伺服器自己負責向其他DNS伺服器進行查詢,一般是先向該網域名稱的根網域服務器查詢,再由根網域名稱伺服器一級級向下查詢。最後將得到的查詢結果返回給局部DNS伺服器,再由局部DNS伺服器返回給用戶端。
2)迭代解析
當局部DNS伺服器自己不能回答客戶機的DNS查詢時,也可以通過迭代查詢的方式進行解析,所示。局部DNS伺服器不是自己向其他DNS伺服器進行查詢,而是把能解析該網域名稱的其他DNS伺服器的IP地址返回給用戶端DNS程式,用戶端DNS程式再繼續向這些DNS伺服器進行查詢,直到得到查詢結果為止。也就是說,迭代解析只是幫你找到相關的伺服器而已,而不會幫你去查。比如說:baidu.com的伺服器ip地址在192.168.4.5這裡,你自己去查吧,本人比較忙,只能幫你到這裡了。
三、DNS網域名稱解析過程
1、首先,瀏覽器會檢查自己的DNS緩衝
2、瀏覽器會尋找作業系統緩衝(本地hosts檔案)
3、瀏覽器會把網域名稱發送給LDNS(本地DNS伺服器,承擔了主要的網域名稱解析工作,通過ipconfig可以查到),LDNS首先會查詢緩衝記錄
4、LDNS伺服器向Root Server網域名稱伺服器(根網域名稱伺服器)請求解析,經過迭代解析,直至根網域名稱伺服器返回一個gTLD伺服器(主網域名稱伺服器)地址。
5、LDNS伺服器向主網域名稱伺服器(國際的頂級網域名稱伺服器,全球只有13台)請求解析,返回Name Server網域名稱伺服器地址(註冊的網域名稱伺服器)
6、LDNS伺服器向網域名稱的解析伺服器發出請求,最終得到與網域名稱相對應的IP地址。
四、DNS負載平衡
當一個網站有足夠多的使用者的時候,假如每次請求的資源都位於同一台機器上面,那麼這台機器隨時可能會蹦掉。處理辦法就是用DNS負載平衡技術,它的原理是在DNS伺服器中為同一個主機名稱配置多個IP地址,在應答DNS查詢時,DNS伺服器對每個查詢將以DNS檔案中主機記錄的IP地址按順序返回不同的解析結果,將用戶端的訪問引導到不同的機器上去,使得不同的用戶端訪問不同的伺服器,從而達到負載平衡的目的?例如可以根據每台機器的負載量,該機器離使用者地理位置的距離等等。
五、參考資料:
1、鹹魚老弟部落格園 http://www.cnblogs.com/xianyulaodi/p/6547807.html#_label1
2、《深入分析Java Web技術內幕》 許令波 著
Java Web DNS網域名稱解析