What DNS Lookup Errors Actually Mean
When you type a URL and see an error instead of a page, your browser has reported the exact stage at which DNS resolution failed. These are not generic network errors — each error code corresponds to a specific failure mode in the DNS lookup chain. Understanding the distinction between them tells you immediately where to start troubleshooting.
DNS lookup failure does not always mean the website is down. In many cases the site is perfectly accessible from other devices or networks, and the problem is entirely local to your computer, your router, or your DNS configuration. Starting with the right diagnosis saves you from chasing the wrong fix.
DNS_PROBE_FINISHED_NXDOMAIN
DNS_PROBE_FINISHED_NXDOMAIN is Chrome's way of displaying an NXDOMAIN (Non-Existent Domain) response from a DNS resolver. The resolver was reachable and responded, but it told your browser that the domain does not exist in DNS.
The most common causes are: a typo in the domain name (e.g., gogle.com instead of google.com), the domain has expired and its DNS records have been removed, DNS propagation is still in progress after a recent domain creation or nameserver change, or your DNS server is returning incorrect responses due to misconfiguration. In rarer cases, ISP-level DNS hijacking redirects NXDOMAIN responses to search or advertising pages, which manifests differently but shares the same root cause.
To verify whether the problem is on your end: open your phone on mobile data and visit the same URL. If the site loads on mobile data but not on your computer, the issue is local. If the site also fails on mobile data, the domain likely has a genuine DNS problem — propagation delay, expired registration, or a broken DNS configuration at the domain owner's end.
ERR_NAME_NOT_RESOLVED and DNS_PROBE_FINISHED_NO_INTERNET
ERR_NAME_NOT_RESOLVED means Chrome could not contact the DNS server at all, or contacted it but received no usable response. Unlike NXDOMAIN — where the server answered "this domain doesn't exist" — this error means the resolver did not respond. Your configured DNS server may be unreachable, your network connection may be down, or a firewall rule may be blocking UDP port 53 (the DNS port).
DNS_PROBE_FINISHED_NO_INTERNET is similar but indicates that your device has no active network connection whatsoever. Check whether other applications can reach the internet. If nothing works, the problem is at the network level — your router, your ISP connection, or your network adapter — before DNS is even involved.
DNS_PROBE_FINISHED_BAD_CONFIG
DNS_PROBE_FINISHED_BAD_CONFIG indicates that Chrome detected a misconfigured network or DNS setup. This often appears when the DNS server address assigned to your network adapter is invalid or unreachable — for example, a DHCP lease that assigned a private IP as the DNS server, but that IP is not actually running a DNS service. It also appears when the router's DNS relay is broken or when a recently changed DNS server address was typed incorrectly.
The fix is to verify your DNS server address. On Windows, go to Network Connections, open your adapter's IPv4 properties, and check the DNS server field. On macOS, open System Settings, go to Network, select your connection, and click Details then DNS. Replace any questionable entries with a known-good public server such as 8.8.8.8 (Google) or 1.1.1.1 (Cloudflare).
Step-by-Step Fix Flow
Follow these steps in order, testing the site after each one to see if it resolves:
Step 1 — Verify the domain is reachable from elsewhere. Visit the same URL on your phone using mobile data (not Wi-Fi). This isolates whether the problem is on your device or on the site itself.
Step 2 — Flush your DNS cache. On Windows, open Command Prompt as Administrator and run ipconfig /flushdns. On macOS, open Terminal and run sudo dscacheutil -flushcache && sudo killall -HUP mDNSResponder. In Chrome specifically, navigate to chrome://net-internals/#dns and click "Clear host cache."
Step 3 — Change your DNS server. In your network adapter's IPv4 settings, set the preferred DNS to 8.8.8.8 and alternate to 8.8.4.4. On your router's admin page, you can set this globally for all devices. After changing DNS, flush the cache again.
Step 4 — Disable VPN or proxy. Disconnect any active VPN or proxy and retry. VPN DNS servers are sometimes unreachable or misconfigured, causing failures for domains the VPN's resolver cannot find.
Step 5 — Check the hosts file. On Windows, open C:\Windows\System32\drivers\etc\hosts in Notepad (as Administrator). On macOS/Linux, check /etc/hosts. Look for any entry that maps the failing domain to an incorrect IP or to 0.0.0.0 and remove it.
Step 6 — Restart your router. Power cycle the router by unplugging it for 30 seconds. DHCP leases sometimes assign a stale or broken DNS server address that a reboot clears.
Step 7 — Reset Winsock (Windows only). Open Command Prompt as Administrator and run netsh winsock reset followed by netsh int ip reset, then restart your computer. Winsock corruption can cause persistent DNS failures that flushing the cache alone does not fix.
Windows-Specific Commands
Windows provides several command-line tools for DNS troubleshooting. All of the following require Command Prompt opened as Administrator.
ipconfig /flushdns — clears the Windows DNS resolver cache immediately. You should see "Successfully flushed the DNS Resolver Cache."
ipconfig /displaydns — shows the current contents of the DNS cache so you can confirm an entry exists or has been cleared.
netsh winsock reset — resets the Windows Sockets (Winsock) catalog to its default state. Fixes corrupted socket layers that can interfere with DNS resolution. Requires a restart to take effect.
nslookup example.com 8.8.8.8 — queries the domain directly against Google's DNS server, bypassing your normal resolver. If this returns an answer but browsing fails, your configured DNS server is the problem.
macOS and Chrome-Specific Fixes
On macOS Ventura and Sonoma, the DNS flush command is sudo dscacheutil -flushcache && sudo killall -HUP mDNSResponder. You will be prompted for your password. The command produces no output on success — that is normal.
Chrome maintains its own internal DNS cache that is separate from the operating system cache. Even after flushing the OS cache, Chrome may still serve a stale result. Navigate to chrome://net-internals/#dns and click the "Clear host cache" button. You can also check chrome://net-internals/#sockets and flush socket pools there, which clears any cached connection state.
Firefox caches DNS records for 60 seconds by default. To clear it immediately, navigate to about:networking#dns and click "Clear DNS Cache."
When the Problem Is on the Website's Side
If the domain fails from multiple devices on different networks (mobile data, a friend's network, an online DNS checker like dig), the DNS problem is on the website's side. Common causes include: expired domain registration, a lapsed DNS hosting subscription that removed all records, a nameserver misconfiguration the domain owner introduced, or DNS propagation that is still in progress after a recent change. In these cases there is nothing you can do except wait or contact the site owner. DNS propagation after a nameserver change can take up to 48 hours, though most resolvers pick up changes within a few hours.
DNS Error Messages: Cause and Fix
| Error Message | Likely Cause | Primary Fix |
|---|---|---|
| DNS_PROBE_FINISHED_NXDOMAIN | Domain does not exist in DNS (typo, expired, propagation delay) | Flush DNS cache; change DNS server; verify domain is live |
| ERR_NAME_NOT_RESOLVED | Could not contact DNS server at all | Check network connection; change DNS to 8.8.8.8; restart router |
| DNS_PROBE_FINISHED_BAD_CONFIG | Misconfigured DNS server address in network adapter | Set DNS manually to 8.8.8.8 / 1.1.1.1 in adapter settings |
| DNS_PROBE_FINISHED_NO_INTERNET | No network connection at all | Check Wi-Fi / Ethernet; restart router and modem |
| SERVFAIL | DNS server encountered an error resolving the domain | Try a different DNS server; check if domain's nameservers are functional |
Frequently Asked Questions
What does DNS_PROBE_FINISHED_NXDOMAIN mean?
DNS_PROBE_FINISHED_NXDOMAIN means the DNS resolver returned an NXDOMAIN (Non-Existent Domain) response for the domain you requested. This indicates the domain name could not be found in DNS — either you mistyped the domain, the domain has expired, DNS propagation is still in progress after a recent change, or your DNS server is misconfigured and cannot resolve the domain correctly.
Why does a website work on my phone but not my computer?
If a website loads on your phone (on mobile data) but not on your computer, the problem is local to your computer or home network rather than the website itself. Your computer's DNS cache may have a stale or incorrect entry, your computer may be configured to use a different DNS server than your phone, or your hosts file may have an override entry blocking the domain. Try flushing your DNS cache first, then compare the DNS server settings on both devices.
How do I fix DNS lookup failed on Windows?
To fix DNS lookup failed on Windows: open Command Prompt as Administrator and run ipconfig /flushdns to clear the DNS cache. If that does not help, also run netsh winsock reset and restart your computer. Next, check your network adapter's DNS settings — go to Network Settings, find your adapter, open Properties, select Internet Protocol Version 4, and set the DNS server to 8.8.8.8 (primary) and 8.8.4.4 (secondary). Restart the adapter after changing the DNS server.
Can a VPN cause DNS lookup failures?
Yes, a VPN can cause DNS lookup failures in several ways. When a VPN is active, DNS queries may be routed through the VPN's DNS servers. If the VPN connection drops or the VPN DNS server is unreachable, resolution fails. Some VPNs also block certain domains or redirect queries to prevent DNS leaks. If you see DNS errors only when a VPN is connected, try disconnecting the VPN and testing, then reconnect and check the VPN's DNS settings.
Does flushing DNS cache fix DNS errors?
Flushing the DNS cache fixes DNS errors caused by stale or incorrect cached entries. If your cache contains an old IP address after a site migrated servers, or a cached NXDOMAIN for a domain that has since been created, flushing forces a fresh lookup and resolves the issue. However, if the DNS server itself cannot resolve the domain — because the domain does not exist or the DNS server is unreachable — flushing the cache will not help and you need to address the underlying cause.
What is the hosts file and can it cause DNS failures?
The hosts file is a local text file on your computer that maps hostnames to IP addresses. It is checked before DNS queries are sent. On Windows it is located at C:\Windows\System32\drivers\etc\hosts; on macOS and Linux at /etc/hosts. If an entry in the hosts file points a domain to an incorrect IP address or to 0.0.0.0 (a common ad-blocking technique), your browser will fail to connect to that domain even if DNS is working perfectly. Malware sometimes modifies the hosts file to redirect legitimate domains.