After restoring Root Hints, stabilize recursion by validating the full recursion path and removing any remaining circular dependency.
- Check whether the affected DNS servers are using forwarders.
- In DNS Manager, open the server Properties and inspect the Forwarders tab.
- If Enable forwarders is selected, verify the listed forwarders are valid and not pointing back into the same recursive path.
- If one DNS server forwards to another, trace that chain server by server until the final resolver.
- Test whether the server can query root servers directly.
Run:
nslookup server <IP address of server being examined> set q=NS- If this returns a root server IP address, recursion is reaching the root and the next likely issue is a broken delegation.
- If it returns Request to server timed out, verify root hints and basic network reachability to the root servers.
- Verify the current Root Hints configuration.
- Open the DNS console.
- Connect to the affected DNS server.
- Right-click the server, select Properties, then open Root Hints.
- Confirm the entries are present and not pointing to internal servers.
- Check connectivity from the DNS server to root servers.
- Test whether the DNS server can ping the root servers by IP address.
- If root hints are correct but root servers are unreachable, investigate network path issues or firewall rules that could block recursive lookups.
- Test for broken delegation if recursion now reaches the root but resolution still fails.
Run:
nslookup server <server IP address> set norecursion set querytype= <resource record type> <FQDN>- If the response does not contain an NS record, the delegation is broken.
- If NS records exist but corresponding A records do not, query for the A records individually. Missing valid IPs for delegated name servers indicates a broken delegation.
- Fix broken delegation by adding or updating the A record in the parent zone with the correct IP address for the delegated DNS server.
- Validate forwarder and root-hint design.
- If no conditional forwarder exists for the affected domain, check general forwarders.
- Verify
UseRootHintsis enabled when forwarders are configured. - If neither forwarders nor root hints are configured correctly, external name resolution is expected to fail.
- If the server does not need recursion, disable it.
- In DNS console, open server Properties > Advanced.
- Turn on Disable recursion.
- This also disables forwarders.
- Use this only where recursion is not required, because it changes name-resolution behavior for that server.
- Confirm the DNS service is healthy on both forwarding and forwarder servers.
Run:
Start it if needed:Get-Service -Name DNSStart-Service -Name DNS - Verify DNS transport is not being blocked.
- Ensure UDP port 53 is allowed between clients and DNS servers.
- Ensure UDP port 53 is also allowed between forwarding DNS servers and their forwarders.
- If failures continue, collect packet traces after clearing client cache. Run on the client first:
ipconfig /flushdns
Then capture DNS traffic to confirm whether queries are looping, timing out, or failing upstream.
A practical stabilization approach is:
- restore Root Hints,
- verify forwarders are not circular,
- confirm root-server reachability,
- test recursion with
nslookup, - fix any broken delegations,
- disable recursion on servers that should not perform it.
References: