Add CNAME record to DNS when A-record exists?
Solution 1:
CNAME
record must exist only on its own. You can not have a zone data like:
name A xx.xx.xx.xx
name CNAME othername
Some special records may coexist with CNAME
, to attest it is authentic. DNSSEC specification mandates a use of RRSIG
and NSEC
for the purpose of authentication, which can coexist with CNAME
, see RFC 4034 section 3 and RFC 4034 section 4. There are older specifications, RFC 2181, section 10.1, RFC 2535 section 2.3.5, which say the same for SIG
, NXT
and KEY
records.
All end application data must be attached to the RR which is the CNAME
target; see RFC1034 section 3.6.2 (the original DNS specification).
some.name.tld CNAME rec.othername.tld
rec.othername.tld A xx.xx.xx.xx
rec.othername.tld TXT text-rr-data
Also note, that CNAME
label inherits not only A
(address), but many other features of target label, notably TXT
.
This (older) RFC also contains the harder version of above restriction which was lifted for DNSSEC:
If a CNAME RR is present at a node, no other data should be present; this ensures that the data for a canonical name and its aliases cannot be different.
Without DNSSEC, this harder restriction effectively still applies.