Skip to content
Cloudzyro
Troubleshooting

DNS_PROBE_FINISHED_NXDOMAIN: what it means and how to fix it

Kofi Agyem

, Founder and CEO, CloudzyroPublished · 6 min read

On this page
  1. 1. The short answer
  2. 2. What you'll see
  3. 3. What causes it
  4. 4. Fixes for visitors, quickest first
  5. 5. Fixes for site owners
  6. 6. How to check
  7. 7. Sources

DNS_PROBE_FINISHED_NXDOMAIN means DNS says the domain doesn't exist. Why it happens, quick fixes for visitors, and what site owners should check.

1. The short answer

DNS_PROBE_FINISHED_NXDOMAIN means Chrome asked DNS for the site's address and was told the name doesn't exist. NXDOMAIN stands for non-existent domain. Chrome then ran a quick test, the DNS probe, and found that DNS itself works, so the problem is that one name: a typo, an expired or unconfigured domain, or a stale answer cached on your device or network.

If other sites load and this one doesn't, check the spelling, flush your DNS cache and try another network. If it fails everywhere, the site's owner needs to fix the domain. New to DNS? Start with What is DNS?.

2. What you'll see

  • Chrome: This site can't be reached. example.com's server IP address could not be found. DNS_PROBE_FINISHED_NXDOMAIN.
  • Edge: Hmm... can't reach this page, with the same DNS_PROBE_FINISHED_NXDOMAIN code (Edge is built on Chromium).
  • Firefox: Hmm. We're having trouble finding that site. We can't connect to the server at example.com.
  • Safari: Safari Can't Find the Server.
  • Chrome on Android: often just ERR_NAME_NOT_RESOLVED, the same problem without the probe's verdict.

Under the hood, every one of these is the same thing: the lookup came back with response code 3, which RFC 1035 calls a name error and everyone else calls NXDOMAIN. Chrome first records the failure as ERR_NAME_NOT_RESOLVED, then probes your DNS setup. If the probe works, it relabels the error DNS_PROBE_FINISHED_NXDOMAIN. If the probe fails, you'd see DNS_PROBE_FINISHED_BAD_CONFIG or DNS_PROBE_FINISHED_NO_INTERNET instead.

3. What causes it

  • A typo. exmaple.com really doesn't exist. This is the most common cause by far.
  • The domain expired or isn't registered. An expired domain is removed from the DNS until it's renewed.
  • The domain is on hold. Registries remove domains with a clientHold or serverHold status from the DNS, for example when the owner didn't verify their email address after registering.
  • No record for that exact name. example.com may work while www.example.com has no record at all, or the other way round.
  • Broken nameservers. The domain points at nameservers that don't hold its records, for example after moving DNS providers without copying the zone.
  • A stale cached answer. Your device, router or resolver remembered a not-found answer from before the records existed.
  • A VPN, filter or security tool. Some DNS filters (parental controls, ad blockers like Pi-hole, company firewalls) answer NXDOMAIN for names they block.
  • Your hosts file. An old entry can override DNS for that name.

4. Fixes for visitors, quickest first

  1. Check the address. Look for a typo, a missing letter or the wrong ending (.co instead of .com).
  2. Reload, then try another device or network. Your phone on mobile data is a good test. If it works there, the problem is on your computer or network.
  3. Turn off your VPN, proxy or DNS filter for a moment and try again.
  4. Flush your DNS cache with the commands below, including Chrome's own cache.
  5. Restart your router. It keeps a DNS cache too.
  6. Switch to a public DNS resolver such as Cloudflare's 1.1.1.1 or Google's 8.8.8.8, in your computer's or router's network settings.
  7. Check your hosts file for an entry for the site: C:\Windows\System32\drivers\etc\hosts on Windows, /etc/hosts on a Mac or Linux. Delete any line for that name.
  8. Reset Windows networking if nothing else works: run netsh winsock reset and netsh int ip reset in an administrator Command Prompt, then restart.
# Windows (Command Prompt or PowerShell)
ipconfig /flushdns

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

# Linux with systemd-resolved (Ubuntu, Fedora and most others)
resolvectl flush-caches

# Chrome's own cache: open this address, then click Clear host cache
chrome://net-internals/#dns

If the site still fails on every device and network, it's not you. The domain itself has a problem, and the owner has to fix it.

5. Fixes for site owners

  1. Check the domain is registered and not expired. Look it up at ICANN Lookup or your registrar. Renew it if needed.
  2. Check its status. A clientHold or serverHold status means it's been taken out of the DNS. Your registrar can tell you why; an unverified registrant email is a common reason.
  3. Check the nameservers. Run dig NS example.com and make sure they're the servers where you edit your records. Editing records anywhere else does nothing.
  4. Check there's a record for the exact name visitors use. If people type www.example.com, you need a record for www, not just for the bare domain. See www vs non-www.
  5. Wait out cached not-found answers. If you looked the name up before adding its records, resolvers may remember the NXDOMAIN for the negative cache time set in your zone's SOA record. See DNS propagation.

For a site on Cloudzyro Sites & Apps, www (or your subdomain) needs a CNAME to domains.cloudzyro.app, and the bare domain an A record to 173.234.137.167, which forwards visitors to www over HTTPS. The full walkthrough is in How to point a domain at your site, and the site's Domains tab tells you what it found. A domain bought in Cloudzyro Domains gets its records set for you when you choose the site.

6. How to check

These commands show exactly what DNS says. dig is built into macOS and most Linux systems; nslookup works everywhere, including Windows.

# Look for "status: NXDOMAIN" in the header
dig www.example.com

# Ask public resolvers, to rule out your own
dig www.example.com @1.1.1.1
dig www.example.com @8.8.8.8

# Which nameservers the domain uses, and the whole chain from the root
dig NS example.com
dig +trace www.example.com

# Windows
nslookup www.example.com
nslookup www.example.com 1.1.1.1

Read the result like this. NXDOMAIN from every resolver means the name really doesn't exist in DNS: a typo, an expired domain or a missing record. NXDOMAIN only from your own resolver means your network is filtering or caching. An answer everywhere, but Chrome still fails points to your device's cache, hosts file or VPN. On Windows, nslookup's message for NXDOMAIN is Non-existent domain.

If dig +trace stops at the .com servers with no nameservers for your domain, the domain isn't delegated: it's expired, on hold or not registered.

7. Sources

Questions

What does DNS_PROBE_FINISHED_NXDOMAIN mean?
Chrome looked up the site's name and DNS answered that the name doesn't exist. NXDOMAIN is short for non-existent domain. Chrome then checked that your DNS works in general, so the problem is that one name.
Is DNS_PROBE_FINISHED_NXDOMAIN my fault?
Sometimes. A typo, a stale cache, a VPN or a filter on your network can cause it. But if the site's domain has expired or its DNS records are missing, only the site owner can fix it.
How do I fix it on Windows?
Check the spelling, then run ipconfig /flushdns in Command Prompt, restart your router, and try a public DNS resolver such as 1.1.1.1 or 8.8.8.8 in your network settings. If other sites work and this one still fails on every network, the problem is on the site's side.
How do I fix it on a Mac?
Check the spelling, run sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder in Terminal, turn off any VPN, and try another network such as your phone's hotspot.
Why does the site work on my phone but not my computer?
Each device and network keeps its own DNS answers and may use a different resolver. Your computer may have cached the not-found answer, or it may use a filter or VPN your phone doesn't. Flush its DNS cache and check its DNS settings.
I just bought my domain. Why do I see NXDOMAIN?
Either it has no records yet for the name you typed, or a resolver cached a not-found answer from before you added them. Add the records at your DNS provider and give it a few minutes. If you looked the name up before adding records, the cached not-found answer can last as long as the zone's negative cache time.
Can an expired domain cause DNS_PROBE_FINISHED_NXDOMAIN?
Yes. When a domain expires or a registry puts it on hold, it's taken out of the DNS, and every lookup for it returns NXDOMAIN until it's renewed or the hold is lifted.

Put your site online free

From your AI tool, Git or a zip, with every version kept.