/route53cmd

A route53 utility

Primary LanguageShell

route53cmd

This command updates AWS/Route53 records by using the AWS CLI utility. If the record exists it will delete it and recreate it. The command will do nothing if there are no changes to be done.

route53cmd \
-z|--zone-id <zoneid> \
-n|--name <dns rcord name> \
-v|--value <dns record value> \
-t|--type <dns record type> (default A) \
--ttl <time to live> (default 300) \
--force \
-h|--help (this message)

Limitations

This tool currently supports setting or replacing a named dns record.

Route53

The name parameter corresponds to
Route53 DNS Domain Name Format
The type and value parameters correspond to
Route53 Supported DNS Resource Record Types

Installation

This tool only works on various Linux systems and has only been tested on Ubuntu

  • Follow instructions of AWS to set up a zone on Route53
  • make sure you have AWS CLI installed and working against your AWS/Route53 zone
  • Deploy route53cmd
    • On Debian/Ubuntu install from apt.vizrt.com
    • On Redhat/CentOS install from yum.vizrt.com
    • On others ensure that the files in /usr/bin are in /usr/bin :-)

That should do it

use route53cmd to do dynamic dns like things

You can use this utility to keep you own dns name pointing to your own ec2 instance.

make sure that the following command returns a fully qualified domain name

hostname -f

copy etc/set-local-ec2-dnsname.conf to /etc and make sure that you zone_id is set properly

set up a cron job by setting up this file:

/etc/cron.d/set-local-dnsname

PATH=/bin:/usr/bin:/usr/local/bin
@reboot root /usr/bin/set-local-ec2-dnsname

reboot and look in the log to see if it works:

tail -n 50 -f /var/log/set-local-ec2-dnsname.log