DNS 回應同時包含 A 記錄和 cname 記錄是否不常見?

DNS 回應同時包含 A 記錄和 cname 記錄是否不常見?

單一 DNS 回應可以同時包含 A 記錄和 cname 記錄嗎?如果是這樣,這會被認為是不尋常的還是典型的行為?

答案1

如果A您引用的記錄是規範名稱(記錄的「目標」CNAME)而不是查詢名稱,那麼這是完全正常的。

然而,這將違反返回CNAMEA(或任何其他記錄)的標準相同的姓名。

有效範例:

foo.example.com.        3600   IN      CNAME   bar.example.com.
bar.example.com.        3600   IN      A       192.0.2.1

無效的例(不氣餒,無效的):

foo.example.com.        3600   IN      CNAME   bar.example.com.
foo.example.com.        3600   IN      A       192.0.2.1

答案2

這是非典型的,事實上與 RFC 相悖。當 aCNAME存在時,不應該有相同結果的其他類型的記錄。

答案3

我可以確認這不是一個有效的 DNS 回應 - 並且如何解析它取決於機會。如果您是執行此操作的 DNS 伺服器管理員,請使用 A 或 CNAME(最好是 A)。

注意:您可以傳回其他類型或記錄的任意組合,或者CNAME,但如果您返回 CNAME,則無法返回任何除了RRSIGDNSSEC 簽章之外的其他類型的記錄,如果您嘗試完全拒絕認真對待答案,任何正在執行的 DNS 解析器都會出現幾次故障。

相關內容