Is it possible to set a CNAME record at the top of a domain? (i.e. @ CNAME www, @ CNAME foobar.com., etc.)

My ISP says that it's only possible to use CNAME's for subdomains but I've read somewhere else that is should be possible even if not recommended.

migrated from stackoverflow.com Sep 22 '12 at 16:56

This question came from our site for professional and enthusiast programmers.

  • 4
    I want to point a top-level-domain to a amazon cloudfront distribution and they only support cnames. – Martin Sep 30 '10 at 12:13
  • 1
    I should point out that EVERY domain is a "subdomain". example.com is a subdomain of com, and com is a subdomain of .. Any limitations put in place by your ISP are put in place by your ISP and perhaps the registrar, not by the underlying technology. – ghoti Sep 22 '12 at 16:26
  • 3
    example.com is not a top level domain so your question requires a rephrasing. – bortzmeyer Sep 22 '12 at 21:47
  • 1

Not possible - this would conflict with the SOA- and NS-records at the domain root.

From RFC1912 section 2.4: "A CNAME record is not allowed to coexist with any other data."

  • 6
    The quoted text doesn't say that it's not possible, only that it can't be used with other records. Your NS and SOA records would reside with the canonical name. – bukzor Aug 28 '12 at 18:11
  • 2
    Just a side note, RFC1912 is Informational and does not define a standard of any sort. RFC2181 has Proposed Standard status and is a better link for unambiguously forbidding this behavior. – Andrew B Aug 5 '14 at 18:33

You can setup your domain to be a CNAME to another domain, but then everything will go to that other domain -- including mail and the SOA "start-of-authority" record itself. However, you can still have separate subdomains, like "private.domain.com" use another mail and web server.

  • 2
    If the parent zone has NS records and the child "zone" is only a CNAME then some systems will get very confused. – Alnitak Feb 7 '12 at 16:20
  • 1
    This is implementation specific and dangerous advice. Don't CNAME @, ever. – Andrew B Jul 8 '13 at 0:41

I use cloudflare to setup CNAME for root domain and it works fine.. without breaking the mail records

  • 1
    No, you didn't. It doesn't work that way. – Chris S Jun 2 '14 at 14:44
  • 6
    @ChrisS CloudFlare has a nasty hack. It seems to work, though. – Michael Hampton Jun 2 '14 at 15:49
  • 2
    I don't think they even use a hack, I think they just point the domain to a common set of RRs. I do the same thing with BIND zone files (use the same zone for half of my domains). I think the only "hack" is that they use the term CNAME in there. – Chris S Jun 2 '14 at 15:56
  • I don't think the implementation details are relevant - the point of the answer appears to be that cloudflare allows you to define a CNAME record for the root domain, which it does, and corroborates I've read somewhere else that is should be possible (though that wouldn't have been true in 2010). – AD7six Jun 23 '14 at 17:59
  • @AD7six If an actual CNAME record existed at the apex, it would be a RFC2181 violation. As it stands, this is a case of confusing record synthesis that has no basis in a standard defining RFC. (the fake ANAME and ALIAS records are more honest) If I'm wrong and a standard defining RFC does define the behavior for flattening an apex CNAME I'm all ears, but I'm extremely skeptical of this given RFC2181. – Andrew B Aug 5 '14 at 18:53

Not the answer you're looking for? Browse other questions tagged or ask your own question.