CNAME At The Apex

A team moves example.com behind a CDN. The zone already contains:

example.com.      NS   ns1.registrar.net.
example.com.      MX   10 mail.example.com.

They add:

example.com.      CNAME  d1x2y3.cdn-provider.net.

The site loads, and mail to the domain stops. Why?

A

The records are fine; mail is failing because the old MX is still cached and will recover once the TTL expires.

B

A CNAME may not coexist with any other data at the same name, so the apex MX and NS records are invalid alongside it and resolvers follow the alias instead of answering the MX query.

C

MX queries are never restarted at a canonical name, so the resolver returns NXDOMAIN for the mail lookup while A queries follow the alias normally.

D

The MX preference of 10 is lower than the implicit preference of a CNAME, so the CNAME wins the tie and mail is routed to the CDN.