A Python script to dynamically update Cloudflare DNS records for domains with dynamic IP addresses.
Cloudflare DDNS is a Python script that automatically updates Cloudflare DNS records when your public IP address changes. It solves the problem of hosting servers or services behind dynamic IP addresses by keeping domain names pointed to the correct current IP. The script periodically checks your IP and updates Cloudflare's DNS records accordingly.
Users hosting personal servers, game servers, or web applications behind dynamic residential or business internet connections who use Cloudflare for DNS management.
Developers choose Cloudflare DDNS because it's lightweight, specifically designed for Cloudflare's API, supports both IPv4 and IPv6, and includes smart update logic that only makes changes when necessary. It's a focused alternative to generic dynamic DNS services when you already use Cloudflare.
A script to update your Cloudflare DNS records at a glance.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Updates both IPv4 (A records) and IPv6 (AAAA records) in Cloudflare, as highlighted in the features list, making it future-proof for networks adopting IPv6.
Only modifies DNS records when the IP address actually changes, reducing unnecessary API calls to Cloudflare and minimizing potential rate limits.
Allows managing multiple DNS records with different settings like TTL and proxy mode from a single YAML file, simplifying management for multiple services.
Has minimal dependencies (only PyYAML and Requests) and optimized update logic, ensuring low resource usage on systems where it runs periodically.
No built-in scheduler; users must manually set up cron jobs or similar tools to run the script periodically, adding setup complexity and maintenance overhead.
Designed specifically for Cloudflare's API, so it cannot be used with other DNS providers, creating vendor lock-in and limiting flexibility.
Relies on simple logging to files without advanced features like automatic retries or notifications, making troubleshooting more hands-on when issues arise.