Basically a technique used to modify the DNS Record automatically if the value of the DNS Record is changed. DDNS can help ensure that DNS queries work even if the web service being sought has recently switched IP addresses
How does it work?
Users uses software which runs on their computer or Network Router, one common software is jeessy2/ddns-go, usually used with OpenWRT. This software communicates with the dynamic DNS service provider (like Cloudflare) anytime the IP Address provided by the ISP is updated, and the dynamic DNS provider in turn updates the DNS with those changes, providing almost instant updates.
Home lab use case
The Public IP Address assigned to our house network changes regularly unless we pay extra for a static IP 💸. If we have a A Record that points to service running in our home lab, we have to manually update the A record when the public IP address of our house network is changed, this incurs downtime and it is tedious.
Services like Cloudflare allows us to control the DNS Record using an API key with DNS Edit permission, then we can write a script or jeessy2/ddns-go to achieve DDNS - updating the DNS record once the public IP address of the house network changes.
jeessy2/ddns-go comes with Webhook, with the help of ddns-telegram-bot, I will also get notified via Telegram whenever my house IP address is changed :)
DNS Features
geoDNS
A DNS service that allows Domain Name to be resolved to IP Address based on the location of a user