nslookup命令詳解

2022-02-17 22:56:52 字數 2850 閱讀 3953

nslookup 是乙個監測網路中dns伺服器是否能正確實現網域名稱解析的命令列工具。它在 windows nt/2000/xp(在之後的windows系統也都可以用的,比如win7,win8等) 中均可使用,但在windows 98中卻沒有整合這乙個工具。 

nslookup 必須要安裝了tcp/ip 協議的網路環境之後才能使用。 

現在網路中已經架設好了一台 dns 伺服器,主機名稱為 linlin ,它可以把網域名稱 www.company.com 解析為 192.168.0.1 的ip位址,這是我們平時用得比較多的正向解析功能。 

檢測步驟如下: 

在 windows 2000 中單擊「開始」->「程式」->「附件」->「命令提示符」,在 c:\> 的後面鍵入 nslookup www.company.com ,「回車」之後即可看到如下結果: 

server: linlin 

address: 192.168.0.5 

name: www.company.com 

address: 192.168.0.1 

以上結果顯示,正在工作的 dns 伺服器的主機名為 linlin ,它的 ip 位址是192.168.0.5 ,而網域名稱www.company.com 所對應的 ip 位址為 192.168.0.1 。那麼,在檢測到 dns 伺服器 linlin 已經能順利實現正向解析的情況下,它的反向解析是否正常呢? 也就是說,能否把ip位址192.168.0.1反向解析為網域名稱www.company.com ?我們在命令提示符c:\>的後面鍵入 nslookup 192.168.0.1 ,得到結果如下: 

server: linlin 

address: 192.168.0.5 

name: www.company.com 

address: 192.168.0.1 

這說明,dns 伺服器 linlin 的反向解析功能也正常。 

然而,有的時候,我們鍵入nslookup www.company.com ,卻出現如下結果: 

server: linlin 

address: 192.168.0.5 

*** linlin can't find www.company.com: non-existent domain 

這種情況說明網路中dns伺服器 linlin 在工作,卻不能實現網域名稱 www.company.com的正確解析。此時,要分析dns伺服器的配置情況,看是否 www.company.com 這一條網域名稱對應的 ip 位址記錄已經新增到了dns的資料庫中。 

還有的時候,我們鍵入nslookup www.company.com ,會出現如下結果: 

*** can't find server name for domain: no response from server 

*** can't find www.company.com : non-existent domain 

這時,說明測試主機在目前的網路中,根本沒有找到可以使用的 dns 伺服器。此時,我們要對整個網路的連通性作全面的檢測,並檢查dns伺服器是否處於正常工作狀態,採用逐步排錯的方法,找出 dns 服務不能啟動的根源。 

配置好dns伺服器,新增了相應的記錄之後,只要ip位址保持不變,一般情況下我們就不再需要去維護dns的資料檔案了。不過在確認網域名稱解釋正常之前我們最好是測試一下所有的配置是否正常。許多人會簡單地使用ping命令檢查一下就算了。不過ping指令只是乙個檢查網路聯通情況的命令,雖然在輸入的引數是網域名稱的情況下會通過dns進行查詢,但是它只能查詢a型別和cname型別的記錄,而且只會告訴你網域名稱是否存在,其他的資訊一概欠奉。所以如果你需要對dns的故障進行排錯就必須熟練另乙個更強大的工具nslookup。這個命令可以指定查詢的型別,可以查到dns記錄的生存時間還可以指定使用那個dns伺服器進行解釋。 

查詢ip位址

檢查網域名稱的快取時間需要我們使用乙個新的引數:-d 

格式如下: 

nslookup –d [其他的引數] 目標網域名稱 [指定的伺服器位址] 

請看範例 

我們忽略其他的看看got answer後面幾行,包括了乙個ttl數值。這個數值就是網域名稱記錄的生存時間。 

這種查詢將整個dns資料報的所有部分都揭示出來,大家可以看到dns實際上並不是想象中那麼簡單的東西。具體的各部分解釋大家可以去看看相關的標準文件。需要提醒大家的是一定要找到answer:的內容,其他的東西都不是描述最終的結果。上面就不止乙個地方又ttl數值 

網域名稱解釋過程的模擬 

我們現在來模擬一下一台dns伺服器接到乙個不是自己管理的域的網域名稱解釋過程。回憶一下第一篇文章的過程: 

首先我們會詢問根伺服器,然後根伺服器會讓我們去找對應的頂級伺服器。如果查詢的是oray.net,就會要求我們去找net的伺服器。 

看看下面的範例: 

這裡我們讓21cn.com的伺服器解釋www.oicp.net的網域名稱,很顯然這台伺服器不用有這個域,需要詢問根伺服器。一般情況下dns伺服器會幫我們完成全部的過程。這種解釋方式我們稱之為遞迴解析,為了讓大家看到這個過程我家了乙個引數讓21cn.com的伺服器不要這樣做。這個引數是-norecurse。這樣理論上21cn.com會讓我們去問根伺服器,不過由於它已經快取了頂級伺服器的記錄,所以直接返回了管理net的頂級伺服器記錄。實際上大部分的查詢都不需要從根伺服器開始。大家看到了所有的頂級網域名稱伺服器的位址都被返回。 

我們隨便選擇乙個在進行查詢。 

這次頂級伺服器就返回了oicp.net的伺服器位址記錄的。然後我們就向這些記錄之一進行查詢,一定能夠得到答案。可能是乙個位址、乙個cname記錄或者告訴你不存在。 

nslookup的命令就介紹到這裡,其實nslookup還有許多其他引數。不過常用的就俄這麼幾個,另外如果大家不喜歡命令列方式的話。還有幾個圖形介面的nslookup功能的工具。不過大家還是需要了解網域名稱解釋都有些什麼才能夠正確使用這些工具。

nslookup命令詳解

nslookup命令詳解 nslookup 是乙個監測網路中dns伺服器是否能正確實現網域名稱解析的命令列工具。它在 windows nt 2000 xp 中均可使用,但在windows 98中卻沒有整合這乙個工具。nslookup 必須要安裝了tcp ip 協議的網路環境之後才能使用。現在網路中已...

nslookup命令詳解

nslookup命令用於查詢dns的記錄,檢視網域名稱解析是否正常,在網路故障的時候用來診斷網路問題。nslookup的用法相對來說還是蠻簡單的,主要是下面的幾個用法。這個可能大家用到最多,查詢乙個網域名稱的a記錄。nslookup domain dns server 如果沒指定dns server...

Nslookup命令詳解

2007 05 15 14 46 15 標籤 nslookup命令 推送到技術圈 中執行查詢,那麼第乙個查詢將作為 解析為 192.168.0.1 的ip位址,這是我們平時用得比較多的正向解析功能。檢測步驟如下 在 windows 2000 中單擊 開始 程式 附件 命令提示符 在 c 的後面鍵入 ...