CNAME 可以作为主要 DNS 记录吗?

CNAME 可以作为主要 DNS 记录吗?

我已经设置了托管服务,作为该服务的一部分,我需要在我们的名称服务器中为所有托管的域自动创建 DNS 记录。

目前我正在使用以下模板:

;
; [USER] - [DOMAIN]
;
$TTL    604800
@    IN    SOA    [PRIMARY-NS].    [NS-ADMIN]. (
                       [SERIAL] ; Serial
                           10800 ; Refresh
                            3600 ; Retry
                         1209600 ; Expire
                           43200 ; Negative Cache TTL
)
;
@    IN    NS    [NS1]. ; Nameserver
@    IN    NS    [NS2]. ; Nameserver
@    IN    A     [SERVER-IP] ; Primary IP
*    IN    A     [CATCH-ALL-IP] ; Catch-all IP
@    IN    MX    0 mail

我感兴趣的是,如果我用该服务器 DNS 条目的 CNAME 替换主 A 记录语句 - 会产生任何不利影响吗?这将使我的服务器上的 IP 管理变得更加容易,因为我只需要更新一个 DNS 记录。

@    IN    CNAME     [SERVER-DOMAIN-NAME]
*    IN    CNAME     [SERVER-DOMAIN-NAME]

这是一个好的有想法吗?或者这只会给这些记录的 DNS 查找带来麻烦?

答案1

不,你不能这样做

@ IN CNAME ...

因为该CNAME记录类型不允许与您在区域顶点必须拥有的(必需)SOANS记录(或任何其他资源记录类型,DNSSEC相关记录除外)共存。

参见第 3.6.2 节RFC 1034

如果节点上存在 CNAME RR,则不应存在其他数据;这确保了规范名称及其别名的数据不会不同。此规则还确保可以使用缓存的 CNAME,而无需与权威服务器核实其他 RR 类型。

答案2

不行!这行不通,因为 CNAME 允许在值 friend 中使用“域名”,并且您无法使用服务器 IP 进行设置。您可以添加 1A记录 IP 地址 (*@XXXX.XXXX.XXXX.XXXX) 并添加 CNAME 记录万维网

相关内容