Simple, free dynamic DNS via Cloudflare
Branch: master
Clone or download
Latest commit 63a8fd8 Feb 3, 2017
Type Name Latest commit message Commit time
Failed to load latest commit information.
.gitignore first Aug 17, 2013
Cloudflare.php Update Cloudflare.php Nov 14, 2016 simplify readme Feb 3, 2017
config.php.skel minor fixes after PR merge Feb 3, 2017
ddns.php minor fixes after PR merge Feb 3, 2017


A dynamic DNS script (written in PHP) that uses CloudFlare's free DNS and their API to set up a dynamic DNS record pointing to your server.

How To Use

git clone
cd cloudflare-ddns
cp config.php.skel config.php
### Edit config.php - enter your CloudFlare credentials and domain details

If everything works, put it in your crontab.

0 * * * * /path/to/cloudflare-ddns/ddns.php -s

Extra feature: API mode

If you want, you can put this script on a web server and use the "dynamic DNS" option of your router to trigger the IP update.

To do this, first enable API mode by setting an auth_token value in your config.

Then, configure your router to call the script like this:


Uncopyrighted. Do whatever you want. I hope this code makes you rich. Spiritually.


For an even simpler version written in Bash, see this gist.