Skip to content

Instantly share code, notes, and snippets.

@ndunks ndunks/ddns-update

Last active Jun 11, 2020
Embed
What would you like to do?
Namecheap DDNS Updater Bash Script
# make it executable `chmod +x ddns-update`
# move it path `mv ddns-update /usr/bin/`
# setup cronjob for every 15 minutes `crontab -e`
# */15 * * * * ddns-update >/dev/null 2>&1
# dont forget to change your own domain & password
# uncomment if you want internet connection check before running
#while ! ping -c 1 -W 1 8.8.8.8; do
# echo "DDNS-UPDATE: Waiting internet connection.."
# sleep 2
#done
last_ip_file="/tmp/last_ip"
last_ip=`cat $last_ip_file`
echo "DDNS-UPDATE: OK, Getting public IP address"
ip=$(curl -s http://dynamicdns.park-your-domain.com/getip)
if [ "$ip" == "$last_ip" ]; then
echo "IP Still same, not need to update."
exit 0
fi
echo "DDNS-UPDATE: Public IP is: $ip, Updating IP..."
host=@
domain=your-own-domain.tld
password=your-own-password
response=$(curl -s "https://dynamicdns.park-your-domain.com/update?host=$host&domain=$domain&password=$password&ip=$ip")
echo $response
echo $ip > $last_ip_file
@calederer

This comment has been minimized.

Copy link

calederer commented Mar 25, 2018

I've added some content to your script but can't do a pull for a gist.
https://gist.github.com/calederer/2090158c236a26cd5218a04ecebb0447

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.