1. 程式人生 > 實用技巧 >根據域名取出ip

根據域名取出ip

本地域名伺服器採用迭代查詢

假定域名為m.xyz.com的主機想知道另一臺主機(域名為y.abc.com)的IP地址。如,主機m.xyz.com打算髮送郵件給主機y.
abc.com。這時就必須知道主機y.abc.com的IP地址。。下面是圖6-5的幾個查詢步驟:

(1)主機m.xyz.com先向其本地域名伺服器dns.xyz.com進行遞迴查詢。

(2)本地域名伺服器採用迭代查詢。它先向一個根域名伺服器查詢。

(3)根域名伺服器告訴本地域名伺服器,下一次應查詢的頂級域名伺服器dns.com的IP地址。

(4)本地域名伺服器向頂級域名伺服器dns.com進行查詢。

(5)頂級域名伺服器dns.com告訴本地域名伺服器,下一次應查詢的許可權域名伺服器dns.abc.com的IP地址。

(6)本地域名伺服器向許可權域名伺服器dns.abc.com進行查詢。

(7)許可權域名伺服器dns.abc.com告訴本地域名伺服器,所查詢的主機的IP地址。

(8)本地域名伺服器最後把查詢結果告訴主機m.xyz.com。

我們注意到,這8個步驟總共要使用8個UDP使用者資料報的報文。本地域名伺服器經過三次迭代查詢後,從許可權域名伺服器dns.abc.com得到了主機y.abc.com的IP地址,最後把結果返回給發起查詢的主機m.xyz.com。

本地域名伺服器採用遞迴查詢

在這種情況下,本地域名伺服器只需向根域名伺服器查詢一次,後面的幾次查詢都是在其他幾個域名伺服器之間進行(步驟3至步驟6),在步驟7,本地域名伺服器從根域名伺服器得到了所需的IP地址。最後在步驟8,本地域名伺服器把查詢結果告訴主機m.xyz.com。整個的查詢也是使用8個UDP報文。

為了提高DNS查詢效率,並減輕根域名伺服器的負荷和減少網際網路上的DNS查詢報文數量,在域名伺服器中廣泛地使用了快取記憶體(有時也稱為快取記憶體域名伺服器)。快取記憶體用來存放最近查詢過的域名以及從何處獲得域名對映資訊的記錄。