Skip to content

DNS Health Report

A DNS health report audits the part of DNS that ordinary lookups hide: the delegation. It asks the parent zone who your nameservers are, asks each of those servers directly whether it agrees and answers authoritatively, and checks glue, SOA serials, reachability, network diversity, CNAME sanity, the DNSSEC chain, and TTLs. Every finding is ordered the way a support engineer would fix it, because a broken delegation explains every symptom below it.

Queries the parent zone and every listed nameserver directly (no caches), then DNSSEC via the parent and child. Takes 2–15 seconds.

Why the delegation matters more than the records

When a resolver looks up your domain it does not start at your DNS provider. It starts at the parent zone (com, co.uk, …), which hands it a list of your nameservers and, when those nameservers live inside your own domain, their addresses (glue). If that list is wrong, stale, or points at servers that do not consider themselves authoritative, some resolvers will fail or serve old data no matter how perfect the records at your provider are. That is why this report runs before anything else in the domain checkup.

What each check means

CheckWhat we doWhen it fails
Parent / child agreementCompare the NS set the parent hands out with the NS set each of your nameservers publishes.A nameserver is listed on one side only — usually a provider change where the registrar or the zone was updated, but not both.
GlueFor nameservers inside your own domain (ns1.example.com for example.com), confirm the parent supplies their addresses and that those addresses match the zone.Missing glue makes the delegation circular; stale glue sends resolvers to an old server.
Lame delegationAsk every listed nameserver for your SOA with recursion disabled and require the AA (authoritative answer) flag.A server that is listed but not configured for the zone. Resolvers that pick it get SERVFAIL or REFUSED.
SOA serial agreementRead the SOA serial from each authoritative server.Serials differ — a secondary has not transferred the latest zone, or two providers are being run without sync.
ReachabilityUDP and TCP to each nameserver, with response times.Unreachable servers slow every lookup; UDP-only servers break large answers and zone transfers.
DiversityCount nameservers, compare their networks (/24, /48) and announcing ASNs.One network or one provider is a single point of failure — RFC 2182 asks for at least two, on separate networks.
CNAME sanityFollow CNAME chains for the apex and www; look for loops, long chains, and a CNAME at the apex.A CNAME at the zone apex is invalid next to SOA/NS; loops never resolve.
DNSSEC chainRead DS from the parent and DNSKEY from the child, match key tags, and ask a validating resolver.A DS that matches no DNSKEY makes validating resolvers (Google, Cloudflare, Quad9, most ISPs) return SERVFAIL — the domain is down for a large share of users.
TTLsInspect the TTLs on NS, SOA, and apex records.Extremely low TTLs multiply query load; very long ones make every change slow; a huge SOA minimum keeps “does not exist” cached for hours.
Read the full explanation of dns health report results ↓
Checks that cannot run from our vantage point (an IPv6-only nameserver with no IPv6 route here, a RIPEstat outage for the ASN lookup) are reported as check unavailable, never as a fault of your domain.

Reading the nameserver table

Each row is one nameserver as it actually answered. Addresses are what the zone publishes for that name; Glue is what the parent hands out. Authoritative is the AA flag on that server's own SOA answer — a "no" there is a lame server even if it returns records. Serial should be identical across the row; Network shows the announcing AS so you can see whether all your servers share one provider.

Checking it yourself

# Who does the parent say your nameservers are?  (replace com with your TLD)
dig @a.gtld-servers.net example.com NS +norecurse +noall +authority +additional

# Does each nameserver consider itself authoritative, and what serial does it hold?
for ns in $(dig +short NS example.com); do
  echo "$ns: $(dig @$ns example.com SOA +norecurse +noall +answer +comments | grep -E 'flags|SOA')"
done

# DS at the parent vs DNSKEY in the zone
dig example.com DS +short
dig example.com DNSKEY +short
The report runs exactly these queries, over UDP with TCP fallback, from the ProbeDNS server.
NS Record Lookup
Authoritative nameservers for a domain

Frequently asked questions

What is a lame delegation?
A nameserver that the parent zone lists for your domain but that does not answer authoritatively for it — typically because the zone was never created there, was deleted, or the delegation was left behind after moving providers. Resolvers that happen to pick that server get errors, so the domain works for some people and not others.
Why do the parent and my provider list different nameservers?
The registrar publishes the NS set at the parent; your DNS provider publishes the NS set inside the zone. They are edited in different places, and after a migration one is often forgotten. Both sets should be identical. Fix the side that is stale.
Do I need glue records?
Only when a nameserver's name is inside the domain it serves (ns1.example.com for example.com). Then the parent must carry its address, or resolvers cannot find the server to ask for the address. Nameservers in another domain (ns1.provider.net) need no glue.
My SOA serials differ. Is that bad?
Usually it means a secondary has not picked up the latest zone, so some resolvers see old records. Some multi-provider setups deliberately run independent zones with different serials; then the content, not the serial, is what must match. The report shows each server's serial so you can tell which case you are in.
What does "DS does not match any DNSKEY" mean and how urgent is it?
Urgent. The parent holds a DS record that points at a key your zone no longer publishes — the classic result of changing DNS providers without removing the old DS at the registrar. Validating resolvers treat every answer as forged and return SERVFAIL, so the domain is effectively down for Google, Cloudflare, Quad9, and most ISP resolvers. Remove the stale DS at your registrar or publish the matching DNSKEY.
How is this different from the DNS lookup tool?
The lookup tool asks a resolver and shows you cached answers. This report bypasses resolvers and asks the parent zone and your nameservers directly, which is the only way to see delegation, glue, lameness, and serial problems.