August 30, 2015

Amazon Route53 for Dynamic DNS

In my earlier blog DNS: All you need to know, I had penned down my thoughts about how DNS services are generally sliced in the industry. This blog is a continuation of it, detailing how the Dynamic DNS service could be utilised between three different service providers.

Previous setup

ISP

BT (British Telecom) is my ISP. Since I’m a residential broadband customer, I don’t have a choice to get a static IP address. Hence, the need for a Dynamic DNS service to fill the gap. Allowing me
to access services hosted on the home network when I’m away.

Domain Registrar and Name-Server Provider: 

DynDNS has been my registrar and also provided Name-Server service for a few years now. As the Name-Server service is coming up for renewal, I thought about exploring the market for cheaper alternatives. The cost of being with DynDNS was higher than I liked. To be fair, DynDNS provide excellent service and has few bells and whistles offered along with their service offering. But my use case, i.e. running a personal site, doesn’t warrant paying for things I don’t use.

New setup

ISP

No change here

Domain Registrar and Name-Server Provider:

Split the Name-Server service from DynDNS and moved it to Amazon Route 53.

Major drawback splitting the service from DynDNS was the complexity it added, or should I say brought to light, which was hidden away in router software. All routers that support Dynamic DNS provide a nice user experience. An interface to update the DNS record every time your external IP changes. Unfortunately, Amazon Route53 isn’t one of those supported options. Hence, the need to have a service that monitors the external IP change and updates the Amazon Route53 record accordingly.

Below is a script that exactly does that, feel free to use and extend as
You seem fit. I’m making the following assumption in the script.

Note: Replace AWS_HOSTED_ID and RECORDSET values with your respective ones.

© Nataraj Basappa 2025