DNS – Correct Behavior When Nameservers Change

domain-name-systemnameservernetworking

I have been having some issues with a certain network supplier over unchanged nameservers making my site invisible to their customers. I wouldnt be bothered except that they are one of the largest ISP's in Ireland.

They claim that the records are still active on the old nameservers for my site so therefore they shouldn't change until they get a response telling them there are no dns records for the site.

My question is, what is the correct behaviour? Every other network provider, isp, dns server on the web has updated to my new nameservers.

Are they following some technically correct but ignored RFC that says they don't need to check new nameservers until the old ones return an error?

Update:

Vodafone eventually contacted me and have said they have resolved the issue, and more importantly are now escalating it to their correct technical staff so this issue shouldn't affect anyone else. Hope this solves the issue.

Best Answer

You appear to be seeing an issue known as child sticky resolvers.

For each domain name there are two possible sets of NS records - those at the parent zone, and those in the zone itself.

Some recursive resolvers will cache the set learned from the child, and then repeatedly go back to those servers for all subsequent refreshes. This is the child sticky behaviour. If the parent zone records get changed but the (original) child zone records are left unchanged, these child sticky resolvers will fail to notice the change in the parent zone.

Many (if not most) implementations will revert to the parent NS records to ensure that they haven't changed whenever the current NS record set expires from cache. This is considered "normal behaviour" but isn't unambiguously specified in the RFCs.

To work around this child sticky behaviour at your end you should replace the NS records in your old servers with the correct records showing the new servers' names.

For more details see slides 8 through 15 of this presentation by Ólafur Guðmundsson, chair of the IETF DNSEXT working group.

Related Topic