存在 A 記錄時將 CNAME 記錄添加到 DNS?
我們正在為我們的客戶管理 DNS 區域,他們正在對……進行一些更改。無論如何,沒關係。為我們的客戶進行更改的顧問公司向我們發送了一個請求,要求我們將一堆 CNAME 記錄(以及一個 SPF 更改,我認為這些用於 DKIM)添加到客戶端的 DNS 區域,所有這些 CNAME 記錄別名都是一些外部的域不在我們的 DNS 中。我們稱它為 hostx.externaldomain.com。
但是對於要添加的三個 CNAME 記錄,我們的 DNS 中已經存在一條記錄:
- host1.example.com A(IP 地址)
- host2.example.com NS(負載均衡器)
- host3.example.com NS(負載均衡器)
所以第一個是該 IP 地址後面的實際網頁,另外兩個被委託給我們的負載均衡器,而負載均衡器又為它們提供 A 記錄等。我們的 DNS 拒絕添加這三個 CNAME 記錄,因為現有的 A和 NS 記錄相同的名稱,我猜這是預期的。
但是,現在似乎大家都不清楚如何從這裡著手。如果我只是刪除 host1 A 記錄並添加 CNAME 記錄(指向不在我們的 DNS 中的外部主機名的別名),https: //host1.example.com 網站不會停止回答嗎?
在基本級別上,我了解如果別名也在我們的 DNS 中,CNAME 和 A 將如何工作,而不是:
- example.com A(IP 地址)
- www.example.com A(與上面相同的IP地址)
我可以刪除 www A-record 並將其替換為:
- www.example.com CNAME example.com
這意味著www.example.com將只使用為 example.com 設置的相同 IP 地址(帶有 A 記錄)。
那麼這是否意味著無論誰為 CNAME 別名指向的外部主機名 (hostx.externaldomain.com) 管理 DNS,都應該首先將 A 記錄添加到他的 DNS (hostx.externaldomain.com A (IP 地址)),其中 IP 地址與我們的 host1 IP 地址指向的地址相同),只有在那之後我才能刪除我們的 A 記錄並將其替換為 CNAME 記錄?
然後我又不確定這將如何工作,因為 hostx.externaldomain.com 已經設置了一些 IP 地址(只需使用 ping 檢查),我不知道他們如何通過將 A 記錄點設置為 host1 IP 地址來改變它…而且,我們應該設置的所有其他 CNAME 記錄都使用相同的別名。
CNAME
記錄只能單獨存在。您不能擁有像這樣的區域數據:name A xx.xx.xx.xx name CNAME othername
一些特殊記錄可能並存
CNAME
,以證明它是真實的。DNSSEC 規範要求使用RRSIG
和NSEC
用於身份驗證,它可以與 共存CNAME
,請參閱RFC 4034 第 3 節和RFC 4034 第 4 節。有較舊的規範,RFC 2181, section 10.1 , RFC 2535 section 2.3.5,對SIG
,NXT
和KEY
記錄也是如此。所有最終應用程序數據都必須附加到作為
CNAME
目標的 RR;請參閱RFC1034 第 3.6.2 節(原始 DNS 規範)。some.name.tld CNAME rec.othername.tld rec.othername.tld A xx.xx.xx.xx rec.othername.tld TXT text-rr-data
另請注意,該
CNAME
標籤不僅繼承A
(地址),還繼承了目標標籤的許多其他特徵,特別是TXT
.這個(較舊的)RFC 還包含為 DNSSEC 取消的上述限制的更硬版本:
如果 CNAME RR 出現在節點上,則不應出現其他數據;這可確保規範名稱及其別名的數據不能不同。
如果沒有 DNSSEC,這個更嚴格的限制仍然有效。