DNS_PROBE_FINISHED_NXDOMAIN: how to fix it

  • dns

DNS_PROBE_FINISHED_NXDOMAIN is Chrome reporting that DNS returned NXDOMAIN — “non-existent domain.” Not slow, not blocked: the resolver is saying this name has no address. That narrows the search enormously, because only four things cause it.

Is it just your machine, or everyone?

Ask a public resolver directly, bypassing every cache between you and the answer:

dig example.com @1.1.1.1 +short
dig example.com @8.8.8.8 +short

Both returning an IP means the domain is fine and your DNS path is the problem — skip to the cache section. Both returning nothing means the domain genuinely doesn’t resolve, and it’s one of the first three causes.

Cause 1: the name is simply wrong

Typos produce NXDOMAIN by definition, and so do missing subdomains: the apex example.com can resolve while www.example.com has no record, or the reverse. Check exactly the name from the address bar, character by character. This is embarrassing exactly as often as it is the answer.

Cause 2: the domain expired

Registrars pull expired domains out of DNS fast. Check the paper trail:

whois example.com | grep -iE 'expiry|expiration|status'

clientHold or serverHold in the status means the registrar has suspended the name — expiry and unpaid renewal are the usual reasons. Renewal usually restores resolution within hours.

Cause 3: the nameserver records are broken

The domain exists but delegation is wrong — nameservers that don’t answer, or answer without the zone:

# Who is supposed to be authoritative?
dig example.com NS +short

# Do they actually answer for the name?
dig example.com @ns1.exampledns.com +short

An empty answer from your own authoritative server means the zone is missing or the record was deleted — common after a DNS-provider migration where a record didn’t make the trip.

Cause 4: a stale cache on your side

If public resolvers answer but your browser doesn’t:

# macOS
sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder

Then Chrome’s own cache at chrome://net-internals/#dns → “Clear host cache.” VPNs and corporate resolvers add their own layers — toggling the VPN is a fast differential.

How do you find out before your visitors do?

NXDOMAIN failures are the quietest outage there is — your site’s server is perfectly healthy while nobody on the internet can find it. An external check catches it because it resolves the name fresh, from outside: YoPingMe does that from three regions on every check and pages you on email, webhook, or Slack when all three agree. Ten monitors free, including the domain you forgot expires next month.