Skip to content

Simple tool to update route53 record(s) when you get a new public IP

Notifications You must be signed in to change notification settings

parberge/route53-record-updater

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

actions

A tool to update your public IP in AWS route53

If the public IP provided by your ISP is dynamic this will help you
keep your domain A records (i.e example.com) updated.
If the domain name configured doesn't match the expected IP it will look for all A records in the configured zone and update records if necessary.

Important!

This tool needs to run from the network that has the public IP.
It will use an external service to lookup the source IP and use that to update the record.

It will also use socket.gethostbyname to check if domain and current IP matches.

Setup

The app requires environment variables to work.
They are described in env.example

Credentials for AWS is required. Provide the necessary env variables described here:
https://boto3.amazonaws.com/v1/documentation/api/latest/guide/configuration.html#using-environment-variables

You can find the route53 zone ID for your domain: https://console.aws.amazon.com/route53/v2/hostedzones# and look for the Hosted zone ID column.

Run

To run it once:
docker run --env-file your-env-file -e AWS_ACCESS_KEY_ID=foo -e AWS_SECRET_ACCESS_KEY=bar ghcr.io/parberge/route53-record-updater:latest

Since it doesn't start a running service this has to be scheduled (e.g cron) for continuous updates

About

Simple tool to update route53 record(s) when you get a new public IP

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages