
我正在嘗試將我的 DNS 伺服器從 178.32.xx.xx 遷移到 162.243.xx.xx,但是當我關閉第一台伺服器 (178) 時,一些用戶報告該網站已離線。我還檢查了 WhatsMyDNS,一旦我關閉 178 的命名,幾乎所有全球 DNS 複製器都會在該網站的 A 條目上顯示 X。
我已經停用了從屬 DNS 並將所有 IP 條目更改為 162,包括 NS 記錄,現在全部指向 162。
我使用 ZPanel 進行 DNS 條目管理,但我檢查了區域文件,它們都是正確的,指向 162。如果我關掉的話,恐怖!
我有什麼遺漏的嗎?感謝您的幫助。
答案1
問題出在.com.br
根伺服器。
為了達到這一點,我首先找到org
根伺服器,因為我們想要azulvirtual.org
:
> dig org NS
; <<>> DiG 9.6-ESV-R4-P3 <<>> org NS
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 12744
;; flags: qr rd ra; QUERY: 1, ANSWER: 6, AUTHORITY: 0, ADDITIONAL: 0
;; QUESTION SECTION:
;org. IN NS
;; ANSWER SECTION:
org. 5827 IN NS a0.org.afilias-nst.info.
org. 5827 IN NS a2.org.afilias-nst.info.
org. 5827 IN NS b0.org.afilias-nst.org.
org. 5827 IN NS b2.org.afilias-nst.org.
org. 5827 IN NS c0.org.afilias-nst.info.
org. 5827 IN NS d0.org.afilias-nst.org.
;; Query time: 10 msec
;; SERVER: 8.8.8.8#53(8.8.8.8)
;; WHEN: Thu Dec 5 10:41:41 2013
;; MSG SIZE rcvd: 159
然後從其中一個請求您的名稱伺服器:
> dig @a0.org.afilias-nst.info azulvirtual.org NS
; <<>> DiG 9.6-ESV-R4-P3 <<>> @a0.org.afilias-nst.info azulvirtual.org NS
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 63061
;; flags: qr rd; QUERY: 1, ANSWER: 0, AUTHORITY: 2, ADDITIONAL: 0
;; WARNING: recursion requested but not available
;; QUESTION SECTION:
;azulvirtual.org. IN NS
;; AUTHORITY SECTION:
azulvirtual.org. 86400 IN NS ns2.sirothost.com.br.
azulvirtual.org. 86400 IN NS ns1.sirothost.com.br.
;; Query time: 213 msec
;; SERVER: 199.19.56.1#53(199.19.56.1)
;; WHEN: Thu Dec 5 10:41:57 2013
;; MSG SIZE rcvd: 85
到目前為止,這是正確的結果。但現在我們需要找到ns1.sirothost.com.br
或ns2.sirothost.com.br
。為此,我們需要com.br
根伺服器:
> dig com.br NS
; <<>> DiG 9.6-ESV-R4-P3 <<>> com.br NS
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 39126
;; flags: qr rd ra; QUERY: 1, ANSWER: 6, AUTHORITY: 0, ADDITIONAL: 0
;; QUESTION SECTION:
;com.br. IN NS
;; ANSWER SECTION:
com.br. 21600 IN NS c.dns.br.
com.br. 21600 IN NS b.dns.br.
com.br. 21600 IN NS d.dns.br.
com.br. 21600 IN NS e.dns.br.
com.br. 21600 IN NS f.dns.br.
com.br. 21600 IN NS a.dns.br.
;; Query time: 65 msec
;; SERVER: 8.8.8.8#53(8.8.8.8)
;; WHEN: Thu Dec 5 10:42:22 2013
;; MSG SIZE rcvd: 124
然後向其中一位索取ns1.sirothost.com.br
。這就是我們得到錯誤 IP 位址的地方。
> dig @b.dns.br ns2.sirothost.com.br
; <<>> DiG 9.6-ESV-R4-P3 <<>> @b.dns.br ns2.sirothost.com.br
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 46093
;; flags: qr rd; QUERY: 1, ANSWER: 0, AUTHORITY: 2, ADDITIONAL: 2
;; WARNING: recursion requested but not available
;; QUESTION SECTION:
;ns2.sirothost.com.br. IN A
;; AUTHORITY SECTION:
sirothost.com.br. 86400 IN NS ns1.sirothost.com.br.
sirothost.com.br. 86400 IN NS ns2.sirothost.com.br.
;; ADDITIONAL SECTION:
ns1.sirothost.com.br. 86400 IN A 178.32.65.90
ns2.sirothost.com.br. 86400 IN A 54.213.72.90
;; Query time: 208 msec
;; SERVER: 200.189.41.10#53(200.189.41.10)
;; WHEN: Thu Dec 5 10:42:53 2013
;; MSG SIZE rcvd: 102
請注意,我始終直接從權威來源挖掘,因此這裡不涉及快取。這個問題不會透過等待而自行解決。
這些是膠水您的註冊商(或更確切地說 的註冊商sirothost.com.br
)向根伺服器提供的記錄。
您可以透過告訴註冊商azulvirtual.org
您想要使用不同的名稱伺服器(不是ns1.sirothost.com.br
和ns2.sirothost.com.br
)或告訴註冊商sirothost.com.br
該網域的名稱伺服器具有新的 IP 位址來解決此問題。
要理解為什麼我必須提出所有這些請求,請閱讀規範為什麼 DNS 會這樣運作問題和Andrew B 關於快取如何影響 +trace 查詢的回答使用挖掘。