LinuxCommandLibrary

cli53

Manage DNS records using AWS Route53

TLDR

List domains

$ cli53 list
copy

Create a domain
$ cli53 create [example.com] --comment "[comment]"
copy

Export a bind zone file to stdout
$ cli53 export [example.com]
copy

Create a www subdomain pointing to a relative record in the same zone
$ cli53 [[rc|rrcreate]] [example.com] '[www 300 CNAME lb]'
copy

Create a www subdomain pointing to an external address (must end with a dot)
$ cli53 [[rc|rrcreate]] [example.com] '[www 300 CNAME lb.example.com.]'
copy

Create a www subdomain pointing to an IP address
$ cli53 [[rc|rrcreate]] [example.com] '[www 300 A 150.130.110.1]'
copy

Replace a www subdomain pointing to a different IP
$ cli53 [[rc|rrcreate]] --replace '[www 300 A 150.130.110.2]'
copy

Delete a record A
$ cli53 [[rd|rrdelete]] [example.com] [www] [A]
copy

SYNOPSIS

cli53 [GLOBAL OPTIONS] <command> [<args>]

PARAMETERS

-h, --help
    Show help for command or global options

--profile PROFILE
    AWS credentials profile name

--region REGION
    AWS region (default: us-east-1)

--host HOST
    Route 53 endpoint host for testing

--access-key-id KEY
    AWS access key ID

--secret-access-key SECRET
    AWS secret access key

--debug
    Enable debug logging

DESCRIPTION

cli53 is a powerful command-line tool for interacting with Amazon's Route 53 DNS service. Written in Python, it enables users to manage DNS hosted zones and records directly from the terminal.

It supports creating, deleting, listing, and editing zones and resource records (RRs). Key features include importing/exporting BIND zone files, validating zone syntax, WHOIS lookups, and bulk operations.

Ideal for DevOps automation, CI/CD pipelines, and scripting DNS changes without the AWS web console or full AWS CLI. Uses boto3 under the hood for AWS API interactions.

Common workflows: create zones with cli53 createzone, add records via rrcreate, export for backups with export. Requires AWS credentials via profiles or env vars.

CAVEATS

Requires AWS IAM permissions for Route53; not installed by default (pip install cli53). Subcommands have additional options; use cli53 <command> --help for details.

KEY SUBCOMMANDS

createzone/deletezone/listzones: Zone management.
rrcreate/rrdelete/rrlist/rredit: Record operations.
import/export/validate: Zone file handling.

INSTALLATION

pip install cli53
Requires Python 3 and boto3.

EXAMPLE USAGE

cli53 createzone example.com
cli53 rrcreate example.com www A 192.0.2.1
cli53 export example.com

HISTORY

Developed by Barnybug (Barnaby Gray) starting 2011; open-source on GitHub (barnybug/cli53). Evolved from boto to boto3; widely used pre-AWS CLI maturity for Route53 tasks.

SEE ALSO

dig(1), host(1), nsupdate(1), aws(1)

Copied to clipboard