Transferring DNS records (Resource Record Sets) into Amazon Route 53
I decided to host my static Portfolio site with Amazon AWS. I’ve had a good experience hosting an e-commerce site with AWS thru Bitnami before, the Amazon computing infrastructure is really amazing, and pricing simply rocks my boat. Shared hosting just does not compete.
Here’s a cool graphic that illustrates how static sites are hosted on AWS. Since I decided to go extremely back to basics with my Portfolio site, I really needed no server backend, just a really fast reliable host for my vanilla, no-frills, HTML, CSS, and Javascript.

I followed the helpful tutorial at “Host a Static Website” over at aws.amazon.com and everything was going smoothly, buckets were setup and permissions were configured in no time — until I hit Step 3: Create Resource Record Sets. The reason you have to bring over those DNS records from your registrar is to ensure the continued availability of all the existing services hosted under the domain name, like mail for example. AWS uses Route 53 for Hosted Zones and essentially managing DNS. Sadly, my Registrar doesn’t release zone files and has no interface to even look up the record values. What gives, 1and1? Too bad, because Route 53 lets you upload zone files. So I’d have to do the DNS management by hand. Good thing I don’t give up easily :)
Here’s what the guide instructed me to do under Step 3.3 “Transfer Other DNS Records from Your Current DNS Provider to Amazon Route 53 — Before you switch to Amazon Route 53 as your DNS provider, you must transfer remaining DNS records, including MX records, CNAME records, and A records, from your DNS provider to Amazon Route 53.” Challenge accepted!
All I would have to do is look up my DNS records on an external site. I tried a bunch but neustar’s UltraTools was the most comprehensive record list that I found out there. Here’s what I got for my domain.

Now that I had all the records I needed, it was easy to enter them one by one on Route 53 thru “Create Record Set” and copy pasting over the values from UltraTools. I ended up with the following list for my A, AAA, and MX records (no CNAME or TXT). Remember that you do not transfer NS records or SOA records from your registrar. Instead of transferring NS record, replace their values with the name server values that are provided by Amazon Route 53. And Amazon Route 53 provides a SOA record in the hosted zone with a default value.

But wait! What is that A record doing there pointing to my registrar’s IP address (that is what I had copied over from my registrar)? The whole point is to host with AWS, so that better get updated! The Alias thus needs to be set to point to my Amazon S3 website endpoints. So I looked that up on S3:

I then updated my A record accordingly (notice you do not need to use “@” for the value, and be sure to chose “Alias” underneath the Dropdown for record type.

Now my Route 53 Hosted Zone for my domain looks a lot better:

By the way, if you are using the www subdomain you have to repeat the same process for the www Alias as follows (do not leave the name blank in this case but use www, but use the same target for the endpoint)

That’s all! Now I just needed to update the NS with my registrar to point to the name servers provided by Route 53, this is what that looked like on 1and1:

Last step, all done! Now just need to wait for DNS to propagate, which in my case, only took all of 2 minutes :)
Well, AWS is pretty amazing and I love it, and DNS management with Route 53 is pretty straightforward as well, I doubt if I’ll ever go back to shared hosting again!