Sync DNS records stored in a flat file format to your DNS provider.
Project description
Sync DNS records stored in a flat file format to your DNS provider. Cloudflare support currently provided.
Installation
$ pip install namesync
Quick Guide
Create a file with the name of your domain:
$ touch example.com
Or, if you have existing records, you can export them:
$ namesync --get example.com
Enter one record per line with the following format:
<record-type> <name> <value> <ttl:optional>
For example:
A * 10.10.10.10 # You can even use comments A . 10.10.10.10 # . references the domain itself, example.com A test 10.10.10.11 A example 10.10.10.12 86400 CNAME mail ghs.googlehosted.com MX . aspmx.l.google.com
MX records allow you to specify a priority:
MX <name> <value> <priority:optional> <ttl:optional>
Like this:
MX . alt1.aspmx.l.google.com 20 MX . aspmx3.googlemail.com 30 86400
If the value contains spaces, quote it:
TXT . "v=spf1 a include:amazonses.com include:_spf.google.com ~all"
Then sync your records:
$ namesync example.com
You will be given a chance to review your changes before they are synced:
The following changes will be made: ADD A * 10.10.10.10 ADD A example 10.10.10.12 86400 ADD A test 10.10.10.11 ADD CNAME mail ghs.googlehosted.com ADD MX . aspmx.l.google.com UPDATE A . 10.10.10.10 REMOVE A old 10.10.10.13 Do you want to continue? [y/N]
Usage
usage: namesync [-h] [-g] [-z ZONE] [-y] [-d DATA_DIR] [-t] RECORDS positional arguments: RECORDS file containing DNS records, one per line. The zone is derived from the basename of this file. For example, if "dns/example.com" is used then the zone is assumed to be "example.com" unless the --zone option is used optional arguments: -h, --help show this help message and exit -g, --get save existing DNS records to RECORDS -z ZONE, --zone ZONE specify the zone instead of using the RECORDS filename -y, --yes sync records without prompting before making changes -d DATA_DIR, --data-dir DATA_DIR the directory where namesync.conf and other cache data is stored. [default: ~/.namesync] -t, --dry-run print actions and exit without making any changes
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
namesync-0.4.tar.gz
(13.5 kB
view details)
File details
Details for the file namesync-0.4.tar.gz
.
File metadata
- Download URL: namesync-0.4.tar.gz
- Upload date:
- Size: 13.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | c752b1865f2fe17eef30fb90e1a06e7211dc03f4860d5789f8b451c397f17590 |
|
MD5 | 498d73a07a7bab6654eb2903242b3016 |
|
BLAKE2b-256 | e1f13a1ee045b91cfecaca400d5bfcfc92beb60271914929f8fd85f847a51bf6 |