diff options
| author | Joe Carstairs <me@joeac.net> | 2026-02-09 10:27:20 +0000 |
|---|---|---|
| committer | Joe Carstairs <me@joeac.net> | 2026-02-09 10:27:20 +0000 |
| commit | 532e63e0389ecef0e5cbad2ba4e86a4c64d00741 (patch) | |
| tree | 6b8218c89d54da0f3f8f68177b8cd4bd0395d7e0 | |
| parent | 3d2a0602e49d69a402387b965a4458779149ebc3 (diff) | |
allows multiple domain names using second arg
| -rw-r--r-- | README.md | 10 | ||||
| -rwxr-xr-x | dyndns.sh | 4 |
2 files changed, 11 insertions, 3 deletions
@@ -21,7 +21,8 @@ Write this to `DIGITALOCEAN_TOKEN`. The script should now run. Try it out: ```sh -./dyndns.sh +./dyndns.sh 4 # for IPv$ +./dyndns.sh 6 # for IPv$ ``` Go to the control panel in DigitalOcean for your domain, and check the A and @@ -40,3 +41,10 @@ Wait one minute, and check the logs. If you want to see that it works, delete the REPEAT_CHECK_A and REPEAT_CHECK_AAAA files and wait for the script to run again. You may also want to have an MTA set up, as cron will try to send any unhandled output to your inbox. + +If you want to use this script for more than one domain, you can supply a domain +name as a second argument. For example: + +```sh +./dyndns.sh 4 example.com +``` @@ -7,7 +7,7 @@ ip_version="$1" if [ -z "${ip_version:-}" ] || ([ "$ip_version" != 4 ] && [ "$ip_version" != 6 ]); then echo "Error: no valid IP version provided" >&2 - echo "Usage: dyndns.bash <4|6>" >&2 + echo "Usage: dyndns.bash <4|6> [domain]" >&2 exit 1 fi @@ -26,7 +26,7 @@ REPEAT_CHECK_A=$REPEAT_CHECK_DIR/REPEAT_CHECK_A REPEAT_CHECK_AAAA=$REPEAT_CHECK_DIR/REPEAT_CHECK_AAAA REPEAT_CHECK="$([ $ip_version = 4 ] && echo $REPEAT_CHECK_A || echo $REPEAT_CHECK_AAAA)" -DIGITALOCEAN_DOMAIN=`cat $SCRIPT_DIR/DIGITALOCEAN_DOMAIN` +DIGITALOCEAN_DOMAIN=${2:-`cat $SCRIPT_DIR/DIGITALOCEAN_DOMAIN`} DIGITALOCEAN_TOKEN=`cat $SCRIPT_DIR/DIGITALOCEAN_TOKEN` get_a_record_ids() { |
