Never use AWS Route53 to manage your domain names pointing to non aws resources
What is Route53 ?
Amazon Route 53 is a highly available and scalable Domain Name System (DNS) web service. that can perform the following tasks:
- Register domain names
- Route internet traffic to the resources for your domain
- Check the health of your resources
Why you should never use AWS Route53 to manage your domain names pointing to non-AWS resources ?
Route53 is great to route traffic to AWS resources because it brings simplicity for pointing to AWS resources directly by using their ARN, this way you can easilly target the resources from the AWS Console or by using Infrastructure as Code tools like Terraform or CloudFormation.
The above screenshot shows how it’s nice and easy to point to an AWS ressource, however the problem is that Route53 restricts ALIAS record types to their network, so if you want to point your domain to let say a Heroku hosted website, you will have to go throught a dirty workaround to make it work, this workround will increase your AWS bill and will make your infrastructure more complex with no benefits.
So what DNS provider you need to choose for an external hosting ?
If you need an entreprise grade solution that is affordable, I would recomand dnsimple, they have a great documentation and a great support, they also have a free plan that is great for small projects, they also have connectors for various infrastructure as code tools like Terraform, CloudFormation, Ansible, Chef, Puppet, SaltStack, as well as One-click services that makes it possible to add all DNS records for a specific service with one click, if you feel convinced, use my referral link to get a 5$ credit on your first invoice.
I had to learn the hard way that Route53 is not a good solution for managing your domain names pointing to non AWS resources, I hope this post will help you to avoid the same mistake.