Domain-Name-System
為什麼CNAME記錄不失敗時A記錄給SERVFAIL
如果我跑
dig @ns5.laposte.net conversation.ees.labanquepostale.fr A
我得到一個 SERVFAIL,但如果我執行
dig @ns5.laposte.net conversation.ees.labanquepostale.fr CNAME
我得到了我的 CNAME:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 48072 ;; flags: qr aa rd; QUERY: 1, ANSWER: 1, AUTHORITY: 4, ADDITIONAL: 9 ;; WARNING: recursion requested but not available ;; OPT PSEUDOSECTION: ; EDNS: version: 0, flags:; udp: 4096 ;; QUESTION SECTION: ;conversation.ees.labanquepostale.fr. IN CNAME ;; ANSWER SECTION: conversation.ees.labanquepostale.fr. 300 IN CNAME prod-lbpee.web-application-front-customer.as8677.net.
我想知道這種行為有多有效(至少要知道我們是否可以期望這種行為會更頻繁地發生),並且從RFC 1034我可以看到:
If a CNAME RR is present at a node, no other data should be present
When a name server fails to find a desired RR in the resource set associated with the domain name, it checks to see if the resource set consists of a CNAME record with a matching class. If so, the name server includes the CNAME record in the response
所以我認為這不是標準行為。我也沒有在“常見的 DNS 操作和配置錯誤”中看到任何建議。有沒有人對這類問題有建議或經驗?如果名稱伺服器回复 REFUSED 或 SERVFAIL,我想這裡只是為了尋找 CNAME?
您沒有得到遞歸答案的原因(在這種情況下您想要的,其中 CNAME 指向指向 A 的 CNAME)列印在您的答案中:
;; WARNING: recursion requested but not available
這意味著,您要詢問的名稱伺服器(ns5.laposte.net)是權威名稱伺服器,而不是遞歸名稱伺服器(也稱為解析器)。它只會查看其數據庫並查看是否存在您要查找的類型的記錄,在您的情況下,它會查找不存在的 conversation.ees.labanquepostale.fr 的 A 記錄。當明確將記錄類型設置為 CNAME 時,您會得到您期望的答案,但僅此而已(即不遵循 CNAME)。如果您檢查遞歸名稱伺服器,dig 將獲得遞歸結果,直到找到 A 記錄:
; <<>> DiG 9.18.0 <<>> conversation.ees.labanquepostale.fr ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 24724 ;; flags: qr rd ra; QUERY: 1, ANSWER: 3, AUTHORITY: 0, ADDITIONAL: 1 ;; OPT PSEUDOSECTION: ; EDNS: version: 0, flags:; udp: 4000 ;; QUESTION SECTION: ;conversation.ees.labanquepostale.fr. IN A ;; ANSWER SECTION: conversation.ees.labanquepostale.fr. 299 IN CNAME prod-lbpee.web-application-front-customer.as8677.net. prod-lbpee.web-application-front-customer.as8677.net. 299 IN CNAME prd-lbpee.web-application-front-customer-as.lbp-mail.as8677.net. prd-lbpee.web-application-front-customer-as.lbp-mail.as8677.net. 2670 IN A 160.92.71.152