Domain-Name-System

nslookup 和 ping 使用的 IP 地址不同

  • July 26, 2012

我有一個託管在網路中的 Web 伺服器。它有一個註冊的域名。但是,我還為 LAN 託管了一個 DNS 伺服器。所以,當有人要訪問網路伺服器時,它會檢查 DNS 伺服器並使用內部地址 192.168.xx 網路伺服器的公共地址是 203.xxx

當我的電腦工作正常時,我會 ping 或嘗試 nslookup www.mydomain.com。兩者都指向 192.168.xx,這是內部地址。有時,我或某人無法訪問 www.mydomain.com。當我檢查時,nslookup 返回內部地址。但是當我 ping 時,它會嘗試使用這樣的公共地址進行連接。

Pinging www.mydomain.com [203.x.x.x] with 32 bytes of data:

如果發生這種情況,修復連接主要有幫助。有時,必須重新啟動工作站 (Win XP)。在工作站的 DNS 設置中,主 DNS 指向 DNS Sserver,輔助 DNS 指向 ISP DNS 伺服器。

我想知道這個問題的原因和預防?或者比我目前的修復更好。謝謝

您已將客戶端配置為查找內部 DNS 作為其主要伺服器,並將外部 DNS 伺服器作為輔助伺服器?你有一個競爭條件;如果內部 DNS 恰好響應太慢,則客戶端會從公共 D​​NS 伺服器獲得不可用的響應。 ping正在使用來自外部 DNS 伺服器的查找記憶體響應,同時nslookup發送一個新請求,該請求從您的內部 DNS 伺服器獲得有效響應。

主伺服器和輔助伺服器之間的 DNS 視圖不一致肯定會導致這樣的問題。相反,要麼建立第二個內部 DNS 伺服器並將其用作輔助伺服器,要麼將客戶端配置為根本沒有輔助 DNS 伺服器。

引用自:https://serverfault.com/questions/411327