域名解析系統DNS診斷命令nslookup詳解【轉】

轉自:http://www.renhaibo.com/archives/29.htmlhtml

Ping指令咱們很熟悉了,它是一個檢查網絡情況的命令,在輸入的參數是域名的狀況下會經過DNS進行查詢,但只能查詢A記錄和CNAME(別名)記錄,還會返回域名是否存在,其餘的信息都是沒有的。若是你須要對DNS(域名解析系統)的故障進行排錯就必須熟悉另外一個強大的命令-nslookup,Nslookup能夠用來診斷域名解析系統 (DNS) 的基礎結構信息,能夠指定查詢的類型,能夠查到DNS記錄的生存時間,還能夠指定使用那個DNS服務器進行解釋,該命令在安裝 TCP/IP 協議後方可使用。數據庫

 

下面以海波博客的域名http://www.renhaibo.com爲例,詳細介紹nslookup命令在命令提示符(DOS)下的用法:緩存

1、查詢IP地址服務器

nslookup能夠方便地查詢到域名對應的IP地址,包括A記錄和CNAME記錄,若是查到的是CNAME記錄還會返回別名記錄的設置狀況。網絡

用法格式:nslookup 域名,如圖:
http://www.renhaibo.com/archives/29.htmldom

回車後有三種不一樣的結果:工具

1.A記錄的返回,如圖:
http://www.renhaibo.com/archives/29.html
前面兩行是您電腦所使用的DNS服務器名及其IP地址,出錯也能夠不理會,重點是最後的兩行是renhaibo.com的IP地址是74.53.25.162,請注意,即便renhaibo.com的主機沒有在線也一樣可以返回結果。操作系統

2.別名記錄(CNAME)的返回狀況,如圖:
http://www.renhaibo.com/archives/29.html
這就顯示出和ping命令不一樣了,請看查看CNAME記錄的結果。因爲CNAME和A記錄最後都是活的IP地址,因此通常狀況下二者是等同看待的,命令的格式相同。此次nslookup返回了三行信息,前兩行顯示這是一個CNAME記錄,對應的域名和IP地址。最後顯示的就是目標域名, 並註明是Alias(別名)。命令行

3.域名不存在的狀況,如圖:
http://www.renhaibo.com/archives/29.html
最後一行的英文表示目標域名不存在,也多是:No response from server。你選擇不一樣的域名商或不一樣的DNS解析系統,返回的結果也可能有差別,但大同小異。server

2、查詢其它類型的域名

咱們的域名通常還配置了其餘類型的記錄,如MX郵件服務器記錄,查看解析是否正常,這時候用ping命令就不行了。郵件服務器只能發信不能收信,是域名解析的問題仍是其餘的問題,Ping命令的檢查只能讓你誤入歧途。nslookup這時候能夠模擬你的其餘碰見服務器進行域名解析的狀況。咱們須要在nslookup上加上適當的參數。指定查詢記錄類型的指令格式以下:nslookup –qt=類型 目標域名(注意qt必須小寫)

如下是能夠用的類型的格式(不區分大小寫),僅提供經常使用的MX和NS的截圖:

1.A 地址記錄(Ipv4)

2.AAAA 地址記錄(Ipv6)

3.AFSDB Andrew文件系統數據庫服務器記錄(不懂)

4.ATMA ATM地址記錄(不是自動提款機)

5.CNAME 別名記錄

6.HINFO 硬件配置記錄,包括CPU、操做系統信息

7.ISDN 域名對應的ISDN號碼

8.MB 存放指定郵箱的服務器

9.MG 郵件組記錄

10.MINFO 郵件組和郵箱的信息記錄

11.MR 更名的郵箱記錄

12.MX 郵件服務器記錄
http://www.renhaibo.com/archives/29.html
注意:preference爲優先級,該數值越小則優先級越高。

13.NS 名字服務器記錄
http://www.renhaibo.com/archives/29.html

14.PTR 反向記錄(從IP地址解釋域名)

15.RP 負責人記錄

16.RT 路由穿透記錄

17.SRV TCP服務器信息記錄

18.TXT 域名對應的文本信息

19.X25 域名對應的X.25地址記錄

3、指定使用的DNS解析服務

默認狀況下nslookup使用的是咱們在本機TCP/IP配置中的DNS服務器進行查詢,但有時候咱們須要指定一個特定的服務器進行查詢試驗。此時咱們不須要更改本機的DNS配置,只要在命令後面加上指定的服務器IP或者域名就能夠了。這個參數在咱們對一臺指定服務器排錯是很是必要的,另外咱們能夠經過指定服務器直接查詢受權服務器的結果避免其餘服務器緩存的結果。

命令格式以下:nslookup [-qt=類型] 目標域名 指定的DNS服務器IP或域名

如咱們使用河北電信的另外一個DNS服務器:219.146.0.130查詢renhaibo.com的NS記錄,全部的二級域名的NS記錄都存放在頂級域名服務器中,這是最權威的解釋。注意此次沒有非受權結果的提示。對於二級域名的NS記錄查詢來講這確定是受權結果。頂級域名服務器的名稱是ns57.domaincontrol.com,ns58.domaincontrol.com等2臺服務器。當咱們修改域名的NS記錄的時候能夠經過上述查詢知道修改的結果是否是已經在頂級域名服務器上生效。不過即便已經生效也可能不能正常解釋,還有緩存時間的問題,詳查下文。

返回如圖:
http://www.renhaibo.com/archives/29.html

4、檢查域名的緩存時間

檢查域名的緩存時間須要使用一個新的參數:-d

格式:nslookup –d [其餘的參數] 目標域名
http://www.renhaibo.com/archives/29.html
咱們忽略其餘的,看看Got answer後面幾行,包括了一個ttl數值。這個數值就是域名記錄的生存時間。

這種查詢將整個DNS數據包的全部部分都揭示出來,你們能夠看到DNS實際上並非想象中那麼簡單的東西。具體的各部分解釋你們能夠去看看相關的標準文檔。須要提醒你們的是必定要找到ANSWER:的內容,其餘的東西都不是描述最終的結果。上面就不止一個地方有TTL數值。

nslookup的命令還有許多其餘參數,這裏就介紹經常使用的這麼幾個。另外若是不喜歡命令行方式的話,還有圖形界面的nslookup工具,本身去網上搜索一下吧。

轉載請註明,轉自:RenHaibo.com
本文連接地址:http://www.renhaibo.com/archives/29.html

相關文章
相關標籤/搜索