DNS, should I be using A instead of CNAME?

It's an RFC violation to use a CNAME as an MX record. From RFC2181 section 10.3:

The domain name used as [...] part of the value of a MX resource record must not be an alias. [...] It can also have other RRs, but never a CNAME RR.

In practice it will often work, but some MTAs are aware that you shouldn't do it, so assume they can ignore you or misbehave when they're fed one.


  • CNAME can't point to another CNAME
  • PTR, SRV, NS, MX can't point to CNAME
  • CNAME must have no other record

Use CNAME for all, except MX, NS and SRV.


CNAME are often avoided for performance reasons : it forces the client to ask a second question to the DNS server, leading to higher latency for the client and more load on the DNS server.