DDNS script to sync public IP address to CloudFlare dns records
Project description
The Python DDNS(Dynamic DNS) script for CloudFlare. It can sync your public IP address to DNS records on CloudFlare. It also provide the RESTful API to operate CloudFlare API v4.
Examples
Sync your public ip address to dns record on CloudFlare from command line
cloudflare-ddns email api_key domain
or
python -m cloudflare_ddns email api_key domain
Sync your public ip address to dns record on CloudFlare from code
from cloudflare_ddns import CloudFlare
cf = CloudFlare(email, api_key, domain)
cf.sync_dns_from_my_ip() #Successfully updated IP address from xx.xx.xx.xx to xx.xx.xx.xx
RESTful dns record operation
cf.get_record('A', 'example.com')
cf.create_record('A', 'sub.example.com', '202.202.202.202')
cf.update_record('A', 'another.example.com', '202.202.202.202')
cf.delete_record('A', 'another.example.com')
Please note: The class will cache dns records information it gets from CloudFlare. To refresh cache, call ‘refresh’ method:
cf.refresh()