How to fix DNS_PROBE_FINISHED_NXDOMAIN
How to fix DNS_PROBE_FINISHED_NXDOMAIN. In this post I’ll be talking about what this error means, what causes this error to be displayed, how to diagnose this problem, and how to fix DNS_PROBE_FINISHED_NXDOMAIN.
What you’ll see when the DNS_PROBE_FINISHED_NXDOMAIN problem occurs.
When you’re affected by this problem you’ll see either a screen saying “DNS_PROBE_FINISHED_NXDOMAIN” when you try to browse to your site:
What the DNS_PROBE_FINISHED_NXDOMAIN error means.
The DNS_PROBE_FINISHED_NXDOMAIN error means that your computer can’t tell where the request for your site should be sent. This is effectively what the “somesite.coms server IP address could not be found” part on the page (shown in the section above) means.
Websites exist on servers, and these servers have an IP address.
Your computer uses DNS to establish which server address the request for your site should be sent to.
It uses DNS to lookup the IP address of the server where the site being requested is held.
Consequently what the DNS_PROBE_FINISHED_NXDOMAIN error translates to is:
“A DNS problem is occuring when your computer tries to establish where the request for your site should be sent to, so it doesn’t know where to send the request for your site”.
There are quite a few components involved in the DNS lookup (there’s an in depth explanation of DNS and lookups on this post about DNS and how it works), and if there’s a problem with any of these components it can result in the S_PROBE_FINISHED_NXDOMAIN error being displayed.
What causes the DNS_PROBE_FINISHED_NXDOMAIN error.
There are multiple components involved in the DNS lookup, and if any of these have a problem, it will cause the DNS_PROBE_FINISHED_NXDOMAIN error. The components involved are:
- Your computer.
- Your ISP’s recursive DNS servers.
- The site’s domain.
- The nameservers set against the site’s domain.
- The Authoritative Nameservers held in the DNS zone of the site’s domain.
- The DNS zone of the domain.
In the list above, the components are listed in the order of how they’re effectively used from a site visitors perspective. You can find out more about the sequence of events in this post about how DNS works and what it does, but for the purpose of this post I’m going to list them in the order of it’s best to check. The order of checking makes more sense when it comes to diagnosing the cause of the DNS_PROBE_FINISHED_NXDOMAIN error.
Diagnosing the Cause of the DNS_PROBE_FINISHED_NXDOMAIN Error.
The order in which we’ll be checking the involved components is as follows:
- Your site’s domain.
- The nameservers set against your site’s domain.
- The Authoritative Nameservers held in the DNS zone of your site’s domain.
- The DNS zone of your domain.
- Your computer.
- Your ISP’s recursive DNS servers.
Now let’s take a look at each of these components and see what can be done to check to see if each has an issue.
The site’s domain.
You’ll need to know what a domain is for this next part.
The domain is the part of the site’s address without the https:// or www. parts. The address of this site is:
https://www.someguycalledralph.co.uk
So if we knock of the https:// and www. parts, we’re left with:
someguycalledralph.co.uk
So someguycalledralph.co.uk is the domain of this site.
If the site’s domain has expired or been suspended, this can cause the DNS_PROBE_FINISHED_NXDOMAIN error.
You can check a domain’s satus and expiry dates using a whois lookup tool such as:
It’s simpy a case of searching for the domain using one of these tools.
What you’re looking for in the whois lookup results are the expiry date, and the “Registration status” (for .uk domains), or the “Domain Status” for all other domains.
What you’re checking for here is that your domain hasn’t expired. You’d use the expiry date displayed in the whois lookup results to check this. If the expiry date is in the past, your domain has expired. The fix for this is below.
The “Registration status”, or the “Domain Status” might also mention that your domain has expired. If this is the case, the fix below is the same.
The “Registration status” (for .uk domains), or the “Domain Status” can cite other reasons that are problematic. Usually this will mention the word “suspended” if it’s a problem other than your domain expiring. The fix for this is below.
Most other domain status’ aren’t a problem, such as “Registered until expiry date.” or “clientTransferProhibited”, these just mean “this domain is OK” and “this domain is OK, but locked for transfer” respectively.
Fix: If the domain has expired:
It’s simply a case of renewing your domain to fix this issue. You’ll only be able to do this if you own the domain in question. You’ll need to contact your registrar to renew the domain.
Fix: If the domain is suspended:
You’ll have to contact your registrar to find out why the suspension has been put in place, and to be able to address the reason why.
Both of the fixes above can take up to 24 hours to come in to effect.
The Nameservers Set Against Your Site’s Domain.
When you carry out a whois lookup on your domain (as above), the nameservers set against the domain will be displayed:
These nameserver addresses need to resolve (be pointed to an IP address) in their own right.
There’s other tools you can use to check to see if friendly names resolve, my personal favourite is:
It’s simply a case of typing one of the nameserver addresses in to dnschecker.org and clicking the search button. What you should see when you do this are green ticks, like this:
As long as you see green ticks, the nameserver addresses themselves resolve, which is fine.
If, instead of green ticks, you see red x’s, this means that the nameservers themselves don’t resolve to an IP address. This effectively means that the nameservers (which tell the internet where your site is held) can’t be found to ask where your site is held.
Fix: Nameservers don’t resolve:
If you’re not using nameservers within your own domain (i.e. nameserver addresses that contain the domain of a site or a domain that you own), you can’t fix this yourself. You’ll need to speak to the party that operates the nameservers themselves. This is usually your hosting provider.
If you are using nameservers that contain the domain of your site or a domain that you own, the first thing to check is that the glue records are in place and correct. You’d check this in your registrar account where your domain is held. The second check is that the glue records point to the correct IP address (this is the IP address of the nameserver that contains the DNS zone for your domain), if you’re operating your own nameservers you should know what these addresses are, but if you’re using someone else’s nameservers, you’ll need to check with them to see if the glue record resolves to the correct IP address.
The Authoritative Nameservers held in the DNS zone of the site’s domain.
There’s yet another tool that you use to check these, which is:
Again, you simply search for your site’s domain in this tool, and check the section at the top:
As you can see in the screen shot above, we’ve got green ticks, and both friendly names and IP addresses listed for the authoritative nameservers, so this is all OK. In the example given above, both the domain’s nameserver records (the ones right at the top) and the authoritative namesevers (in the highlighted section) are the same. It’s possible these could be different, but that doesn’t mean there’s a problem. The part you’re checking for is that there are IP addresses listed agains the authoritative namesevers (a lack of these will cause the DNS_PROBE_FINISHED_NXDOMAIN error). This is because the authoritatvie nameservers don’t resolve, which causes a simlar issue to when the nameservers set at the central registry don’t resolve.
Fix: Authoritative Nameservers Don’t Resolve:
You’ll need to fix this in the DNS Zone manager for your domain.
You’ll need to add A records for the authoritative nameserver addresses to fix this problem.
You’ll need to know the IP address of valid nameservers to be able to point the A records to the right place. Let’s say you know that this is 1.2.3.4 .
If you look up your domain and see ns1.mydomain.com using into DNS (as above) but there isn’t an IP address against ns1.mydomain.com, then the DNS record you need to add is:
Name: ns1.mydomain.com
Type: A
TTL: 1440
Record: 1.2.3.4
After saving this change, it can take up to 24 hours for you to see the effect of the fix. This is due to DNS propagation.
The DNS zone of the domain.
Again, intodns.com can be used to check this.
In a DNS zone, different records do different things.
When looking up a DNS zone using intodns.com you’d do the lookup in exactly the same way (enter the domain in intidns.com and click “report”). The part that differs is the section of the report intodns.com generates that you’ll need to check.
In intodns.com resports, the site specific DNS records are right at the bottom:
in the screen shot above you can see there are green ticks, which means that my site’s domain resolves OK.
If you see red in this section, the site specific DNS records are missing from the DNS zone of the site’s domain.
Fix: Site Specific DNS Records Don’t Resolve:
You’ll need to fix this in the DNS Zone manager for your domain.
You’ll need to add A records for the site specific addresses to fix this problem.
You’ll also need to know the IP address of the server where the site is held as well. You can usually find this in the “stats on the “shared IP address” section of the main cPanel page (if you’re using cPanel), and it’s usually displayed in a similar manner for other types of control panel. If in doubt, you can check with your hosting provider.
Let’s say that you know the IP address of the server that holds your site is 5.6.7.8 and the address of the site is mysite.com then this means the DNS record you need to add is:
Name: mysite.com
Type: A
TTL: 1440
Record: 5.6.7.8
If the address of the site is actaully www.mysite.com then you also need to add a secondary record. You can do this in two different ways, the first is more advisable:
Name: www.mysite.com
Type: CNAME
TTL: 1440
Record: mysite.com
or
Name: www.mysite.com
Type: A
TTL: 1440
Record: 5.6.7.8
Again, after saving this change, it can take up to 24 hours for you to see the effect of the fix. This is due to DNS propagation.
Your Computer.
Let’s say you’ve worked through the above and haven’t found any problems. What then?
Well, you could be looking at a problem with your computer. Generally speaking, if you do have a problem with your computer no sites will load for you (so you won’t have been able to carry out the checks above).
The first thing to check is that your computer is connected to the internet. I know this sounds obvious, but you’d be surprised at how many people can’t access their site because they aren’t connected to the internet.
The next check to make is that the IP stack on your computer is OK. You can do this by pinging 127.0.0.1 using the command prompt (Windows) or the terminal (MacOS/Linux):
If you get replies back from 127.0.0.1 then you know the computer’s IP stack is OK.
If you don’t get replies when pinging 127.0.0.1 then your computer has an issue with the IP stack.
Fix: Computer’s IP Stack is Broken:
You could try reinstalling TCP/IP (if you know how) but if you don’t know how to do this, you’re going to need to enlist the services of someone who does.
Your ISP’s recursive DNS servers.
If your ISPs recursive DNS servers are problematic, this can cause the DNS_PROBE_FINISHED_NXDOMAIN error.
You can check to see if this is the case by pinging (again using the command prompt in Windows or the terminal in MacOS/Linux) both an IP address (8.8.8.8 is a good one to use to check) and a domain, such as google.com.
If you can ping the IP address you have a route to the outside world, but if you can’t ping a domain (you’ll see a “cannot resolve google.com” message instead of replies), then your ISP has some kind of DNS problem.
While you can’t actually fix this yourself you can work around it.
Fix: Problem With ISP’s Recursive DNS Servers:
You’d work around it by setting some specific DNS servers against the network adapter on your computer.
How you’d actually make this chcnage varies between operating systems and version. You’ll need to research this according to the operating system you’re using.
The DNS servers that can be used are:
Google IPv4:
8.8.8.8
8.8.4.4
Google IPv6:
2001:4860:4860::8888
2001:4860:4860::8844
Open DNS IPv4:
208.67.222.222
208.67.220.220
Open DNS IPv6:
2620:119:35::35
2620:119:53::53
By setting these DNS servers against your computer’s network adapter what you’re doing is configuring your computer to use some specific recursive DNS servers (rather than the ones your ISP provides automatically) to look up DNS records.
Consequently, if your ISP’s recursive DNS servers have a problem, setting the above tells your computer to use different DNS servers (that don’t have a problem).
In Conclusion.
- The DNS_PROBE_FINISHED_NXDOMAIN error means that the domain’s IP address can’t be established.
- There are multiple components involved in the DNS lookup used when establishing a domain’s IP address.
- A proble with any of the components involved in the DNS lookup can cause DNS_PROBE_FINISHED_NXDOMAIN error .
- The components involved in the DNS lookup need to be checked individually. There are a variety of tools that can be used to do this.
- Once the problematic component has been identified, a fix can be applied.
- Often the fixes will take up to 24 hours to come in to effect, due to DNS caching and propagation.