Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/lyoshenka/cloudflare-ddns
Simple, free dynamic DNS via Cloudflare
https://github.com/lyoshenka/cloudflare-ddns
cloudflare ddns dynamic-dns php
Last synced: 20 days ago
JSON representation
Simple, free dynamic DNS via Cloudflare
- Host: GitHub
- URL: https://github.com/lyoshenka/cloudflare-ddns
- Owner: lyoshenka
- Created: 2013-08-17T14:58:04.000Z (about 11 years ago)
- Default Branch: master
- Last Pushed: 2019-10-15T15:29:01.000Z (about 5 years ago)
- Last Synced: 2024-10-12T20:29:31.291Z (about 1 month ago)
- Topics: cloudflare, ddns, dynamic-dns, php
- Language: PHP
- Homepage:
- Size: 29.3 KB
- Stars: 152
- Watchers: 14
- Forks: 29
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
- awesome-cloudflare - Dynamic DNS PHP - Dynamic DNS updater in PHP. (DNS)
- awesome-cloudflare - Dynamic DNS PHP - Dynamic DNS updater in PHP. (DNS)
README
# cloudflare-ddns
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 https://github.com/lyoshenka/cloudflare-ddns.git
cd cloudflare-ddns
cp config.php.skel config.php
### Edit config.php - enter your CloudFlare credentials and domain details
./ddns.php
```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: `https://example.com/ddns.php?auth_token=YOUR_TOKEN&ip=IP_ADDR`
## License
Uncopyrighted. Do whatever you want. I hope this code makes you rich. Spiritually.
## No PHP?
For an even simpler version written in Bash, see [this gist](https://gist.github.com/lyoshenka/6257440).
## Development
Use [php-cs-fixer](https://github.com/FriendsOfPHP/PHP-CS-Fixer) like `php-cs-fixer fix ddns.php --rules=@PSR2` to enforce code style.