我已经设置了托管服务,作为该服务的一部分,我需要在我们的名称服务器中为所有托管的域自动创建 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
记录类型不允许与您在区域顶点必须拥有的(必需)SOA
和NS
记录(或任何其他资源记录类型,DNSSEC相关记录除外)共存。
参见第 3.6.2 节RFC 1034:
如果节点上存在 CNAME RR,则不应存在其他数据;这确保了规范名称及其别名的数据不会不同。此规则还确保可以使用缓存的 CNAME,而无需与权威服务器核实其他 RR 类型。
答案2
不行!这行不通,因为 CNAME 允许在值 friend 中使用“域名”,并且您无法使用服务器 IP 进行设置。您可以添加 1A记录 IP 地址 (*@XXXX.XXXX.XXXX.XXXX) 并添加 CNAME 记录万维网