Pointing a domain to AWS Route 53

Here is a simple process to get from registering a new domain to having browser requests arrive at the web server. Yes it could be made more fancy, but the focus is on simple in order to clear away the common confusion about different roles of the registrar and Route 53.

  1. In AWS Route 53, create a new hosted zone with same name as the domain you registered, mydomain.com. After it creates the new hosted zone, Route 53 will tell you the names of 4 name servers to delegate your domain to. Example:

    ns-1403.awsdns-47.org. 
    ns-1696.awsdns-20.co.uk. 
    ns-632.awsdns-15.net. 
    ns-431.awsdns-53.com.
    
  2. At your domain host (registrar), register your domain. Eg mydomain.com. When they ask which name servers you want you set (delegate) for your new domain, provide the same 4 values from above starting with 'ns-'.
  3. Back in Route 53, under the new hosted zone for mydomain.com, you'll see Route 53 has already automatically created the correct dns record sets for type NS and SOA for you. Don't touch these. What you want to do is add new DNS record sets alongside these with type A or CNAME.
    Create an A record your domain apex. In the Route 53 console, click into your new hosted zone mydomain.com then "Create Record Set".

    Name:   <blank>
    Type:   A
    Alias:  No
    TTL:    900 (anything from 60s to 3600s would be reasonable)
    Value:  65.254.242.180 (the public IP address of your webserver/load balancer)
    Routing Policy: Simple
    

    Create a CNAME record set for the www. to pointing to the apex domain.

    Name:   www
    Type:   CNAME
    Alias:  No
    TTL:    900 (anything from 60s to 3600s would be reasonable)
    Value:  mydomain.com
    Routing Policy: Simple
    
  4. Use an independent online DNS checking tool to check that your new DNS records are visible in the public DNS. Might have to wait a few minutes. Example http://www.dnswatch.info/dns/dnslookup?la=en&host=www.mydomain.com&type=A&submit=Resolve