using a dynamic dns as a name server [closed]

I'm playing with hosting my own website on a residential internet connection. I have a dynamic ip assigned but the isp also gives me a dynamic dns domain name, something like xxx.go.ro . I bought a domain name from a registrar and i want to host my own dns server and configure the nameserver of the bought domain to the dynamic dns address given by my isp so the xxx.go.ro will become the ns for my domain. My question is: is it a good idea to have the ip of the domain name server dynamically change? I don't understand if the tld caches the ip address of the nameserver. Should i use an external service for dns like luands and just point cnames to my subdomains? I would really like to host my own dns to experiment with it.


Solution 1:

Bought from a registrar? You need a nameserver with static IP. Even two nameservers with static IPs. You need them to appear in glue records of parent zone; I doubt TLD zones support updating records often enoung, and that they permit setting TTL short enough. TLD DNS zones are really huge and it is likely very hard to update them often. Also, you likely need to do updates programmatically via some API, rather than usual human-oriented web interface of your registrar. Do they have any?

For the 3rd level subdomain, it is pretty possible. I developed a dynamic DNS service 10 years ago. Something like DynDNS, but I implemented a possibility to have a subdomain delegation with NS pointing to a dynamically-updated glue record. After 10 years passed, no one was found to be using this feature.

There is a caveat, a service itself is hosted on usual static nameservers, and only allows dynamic updates of its hosted domains (just one domain, currently). So if I say it hosts dynamic DNS of example.com, it is possible to delegate sub.example.com to some nameserver with dynamic IP address. You can easily implement such service yourself and "for yourself" with your owned domain name, but it's core nameservers still must live with static addresses; the best you can do this way is to have subdomain of your domain to be delegated to dynamic address.