DNS解析故障

2021-09-30 04:42:28 字數 3073 閱讀 9776

昨天晚上11點客戶打**過來說**不能訪問,馬上跑起來,輸入網域名稱沒事,然後要我朋友進一下,不行。

改由ip訪問ok,dns問題,今天一大早來公司特地查查這到底是啥玩意---  

在實際應用過程中可能會遇到dns解析錯誤的問題,就是說當我們訪問乙個網域名稱時無法完成將其解析到ip位址的工作,而直接輸入**ip卻可以正常訪問,這就是因為dns解析出現故障造成的。這個現象發生的機率比較大,所以本文將從零起步教給各位讀者一些基本的排除dns解析故障的方法。

一般來說像我們訪問的位址都叫做網域名稱,而眾所周知網路中的任何乙個主機都是ip位址來標識的,也就是說只有知道了這個站點的ip位址才能夠成功實現訪問操作。

不過由於ip位址資訊不太好記憶,所以網路**現了網域名稱這個名字,在訪問時我們這需要輸入這個好記憶的網域名稱即可,網路中會存在著自動將相應的網域名稱解析成ip位址的伺服器,這就是dns伺服器。能夠實現dns解析功能的機器可以是自己的計算機也可以是網路中的一台計算機,不過當dns解析出現錯誤,例如把乙個網域名稱解析成乙個錯誤的ip位址,或者根本不知道某個網域名稱對應的ip位址是什麼時,我們就無法通過網域名稱訪問相應的站點了,這就是dns解析故障。

出現dns解析故障最大的症狀就是訪問站點對應的ip位址沒有問題,然而訪問他的網域名稱就會出現錯誤。

當我們的計算機出現了dns解析故障後不要著急,解決的方法也很簡單。

(1)用nslookup來判斷是否真的是dns解析故障:

要想百分之百判斷是否為dns解析故障就需要通過系統自帶的nslookup來解決了。

第一步:確認自己的系統是windows 2000和windows xp以上作業系統,然後通過「開始->執行->輸入cmd」後回車進入命令列模式。

第二步:輸入nslookup命令後回車,將進入dns解析查詢介面。

第四步:接下來輸入你無法訪問的站點對應的網域名稱。假如不能訪問的話,那麼dns解析應該是不能夠正常進行的。我們會收到dns request timed out,timeout was 2 seconds的提示資訊。這說明我們的計算機確實出現了dns解析故障。

(2)查詢dns伺服器工作是否正常:

這時候我們就要看看自己計算機使用的dns位址是多少了,並且查詢他的運**況。

第一步:確認自己的系統是windows 2000和windows xp以上作業系統,然後通過「開始->執行->輸入cmd」後回車進入命令列模式。

第二步:輸入ipconfig /all命令來查詢網路引數。

第三步:在ipconfig /all顯示資訊中我們能夠看到乙個地方寫著dns servers,這個就是我們的dns伺服器位址。例如筆者的是202.106.0.20和202.106.46.151。從這個位址可以看出是個外網位址,如果使用外網dns出現解析錯誤時,我們可以更換乙個其他的dns伺服器位址即可解決問題。

第四步:如果在dns伺服器處顯示的是自己公司的內部網路位址,那麼說明你們公司的dns解析工作是交給公司內部的dns伺服器來完成的,這時我們需要檢查這個dns伺服器,在dns伺服器上進行nslookup操作看是否可以正常解析。解決dns伺服器上的dns服務故障,一般來說問題也能夠解決。

(3)清除dns快取資訊法:

當計算機對網域名稱訪問時並不是每次訪問都需要向dns伺服器尋求幫助的,一般來說當解析工作完成一次後,該解析條目會儲存在計算機的dns快取列表中,如果這時dns解析出現更改變動的話,由於dns快取列表資訊沒有改變,在計算機對該網域名稱訪問時仍然不會連線dns伺服器獲取最新解析資訊,會根據自己計算機上儲存的快取對應關係來解析,這樣就會出現dns解析故障。這時我們應該通過清除dns快取的命令來解決故障。

第一步:通過「開始->執行->輸入cmd」進入命令列模式。

第二步:在命令列模式中我們可以看到在ipconfig /?中有乙個名為/flushdns的引數,這個就是清除dns快取資訊的命令。

第三步:執行ipconfig /flushdns命令,當出現「successfully flushed the dns resolver cache」的提示時就說明當前計算機的快取資訊已經被成功清除。

(4)修改hosts檔案法:

修改hosts法就是把hosts檔案中的dns解析對應關係進行修改,從而實現正確解析的目的。因為在本地計算機訪問某網域名稱時會首先檢視本地系統中的hosts檔案,hosts檔案中的解析關係優先順序大於dns伺服器上的解析關係。

這樣當我們希望把某個網域名稱與某ip位址繫結的話,就可以通過在hosts檔案中新增解析條目來實現。

第一步:通過「開始->搜尋」,然後查詢名叫hosts的檔案。

第二步:當然對於已經知道他的路徑的讀者可以直接進入c:/windows/system32/drivers/etc目錄中找到hosts檔案。如果你的系統是windows 2000,那麼應該到c:/winnt/system32/drivers/etc目錄中尋找。 (在本地修改的時候碰到了拒絕訪問的問題s)

第三步:雙擊hosts檔案,然後選擇用「記事本」程式將其開啟。

第四步:之後我們就會看到hosts檔案的所有內容了,預設情況下只有一行內容「127.0.0.1 localhost」。(其他前面帶有#的行都不是真正的內容,只是幫助資訊而已)

dns查詢可以有兩種解釋,一種是指客戶端查詢指定dns伺服器上的資源記錄(如a記錄),另一種是指查詢fqdn名的解析過程。

一、查詢dns伺服器上的資源記錄

您可以在windows平台下,使用命令列工具,輸入nslookup,返回的結果包括網域名稱對應的ip位址(a記錄)、別名(cname記錄)等。除了以上方法外,還可以通過一些dns查詢站點如國外的國內的 查詢網域名稱的dns資訊。

二、fqdn名的解析過程查詢

若想跟蹤乙個fqdn名的解析過程,在linux shell下輸入dig www +trace,返回的結果包括從跟域開始的遞迴或迭代過程,一直到權威網域名稱伺服器。

再一查,發現修改host檔案還能遮蔽不想訪問的**的例子

如果,我們在hosts中,寫入以下內容:

127.0.0.1 # 要遮蔽的** a

0.0.0.0 # 要遮蔽的** b

這樣,計算機解析網域名稱 a和 b時,就解析到本機ip或錯誤的ip,達到了遮蔽**a 和b的目的。

DNS解析故障解決

當dns解析出現錯誤,例如把乙個網域名稱解析成乙個錯誤的ip位址,或者根本不知道某個網域名稱對應的ip位址是什麼時,就無法通過網域名稱訪問相應的站點了,這就是dns解析故障。出現dns解析故障最大的症狀就是訪問站點對應的ip位址沒有問題,然而訪問他的網域名稱就會出現錯誤。1.用nslookup 網路...

DNS解析故障的解決方案

在實際應用過程中可能會 遇到dns解析錯誤的問題,就是說當我們訪問乙個網域名稱時無法完成將其解析到ip位址的工作,而直接輸入 ip卻可以正常訪問,這就是因為dns解析出現 故障造成的。這個現象發生的機率比較大,所以本文將從零起步教給各位讀者一些基本的排除dns解析故障的方法。一 什麼是dns解析故障...

dns故障排錯

dns故障排錯 1.故障現象 部分客戶反應 通過 計算機名的方式訪問伺服器失敗,但是可以通過 ip的方式訪問 ie中通過 主機名 的方式訪問網頁失敗,但是可以通過 ip 的方式客戶反應dns故障,要求排除 2.網路環境 域環境,已經建立內部的dns伺服器,客戶端通過dhcp獲取ip位址 3.故障排查...