This project is a client-server application that enables Dynamic DNS (DDNS) for your Cloudflare-managed domain using IP. It allows a client to send its IP address to a server, which in turn updates the DNS records on Cloudflare to reflect the client's current IPv6 address. This is particularly useful for users with changing IP addresses who want to ensure that their domain always points to the correct location.
- Automatic updating of Cloudflare DNS records with the client's IPv6 address.
- Configuration options for update intervals, subdomains, endpoints, and time zones.
- Secure token-based authentication between the client and server.
- Simple and easy-to-use setup.
Before you get started, make sure you have the following prerequisites installed:
- Node.js and npm on both the client and server.
- A Cloudflare account with a registered domain.
- Knowledge of your Cloudflare API token, email, and domain details.
- For server just npm install & edit .env to run
- For client just run index.js & edit ini or use executable file in release tab
Clone this repository to your local machine:
TOKEN=yourcloudflaretoken
EMAIL=yourcloudflareemail@example.com
DOMAIN=yourdomain.com !root domain
CLOUDFLARE=https://api.cloudflare.com/client/v4/zones/
PORT=3000
TZ=Asia/bangkok
TTL=120 time to cache response from CF (sec)
Clone this repository to your local machine:
INTAVAL=300 time to polling update DDNS (sec)
SUBDOMAIN=domain to update exmaple web.example.com or example.com
IPV=6 ipversion 4 or 6
ENDPOINT=http://yourserver.com/update
TZ=Asia/bangkok