I'm trying out Amazon's Route 53 and have moved one of my domains over. The only issue I've encountered is that none of my CNAME records are resolving.

In GoDaddy's DNS manager I was able to use @ to point a CNAME to the root domain, how do I have to do this differently with Route 53? Or do I actually have to enter the full domain name in the CNAME's value field?

Here's my setup:

DNS setup


Solution 1:

Regardless of how godaddy or other registrars use it in their web interfaces, "@" has a specific meaning in zone configuration files used with BIND.

When an @ is encountered in a zone file, it's replaced by the current value of $ORIGIN. $ORIGIN is usually defined as the root domain - the same as you're familiar with at godaddy - but it doesn't have to be. $ORIGIN can be defined as any domain to simplify a zone file or it can be left undefined, in which case it'll be taken to be the zone name specified in named.conf.

But the behaviour you're asking about is not really to do with the underlying DNS software, it's how the web interface you've been given parses the information you specify and generates a zone file. Apparently Amazon doesn't let you throw an @ around as much as godaddy, so you're stuck having to use the zone name.

(It's worth noting that a CNAME record technically shouldn't point to a domain name, it should point to a Canonical host NAME - but in your example, your domain name is also a host name.)