A client of our today was having difficulty browsing the Internet. One of the possibilities was a problem with DNS. So, I put together a quick DNS troubleshooting flowchart.

This is by no means a comprehensive troubleshooting chart but it is a very effective tool that will help you focus your attention when you are having difficulties accessing a website and you think that the problem may be with DNS either on your network or with your Internet service provider.

Ping DNS Server?

Check to see if the DNS server is even available through a ping. First, determine your DNS server by typing in the following in a command prompt:

ipconfig /all

and search for DNS servers to determine the IP address of your DNS server.

Next, ping the DNS server IP address. So, if your DNS server IP address is 192.168.0.1, you would enter:

ping 192.168.0.1

If you get a response back, your DNS server is accessible. If not, there are a few potential problems:

  1. DNS server is down
  2. Internet is down (when DNS is provided by Internet provider)
  3. DHCP is giving out the wrong DNS name
  4. DNS server is set statically and is wrong

Can You Ping?

If you can ping your DNS server, next check to see if you can ping a website on the Internet. I typically use google.com. Type the following command into a command prompt:

ping google.com

You should get a ping response. If you get something like:

Ping request could not find host google.com. Please check the name and try again.

this could indicate that you have a DNS issue but it warrants further investigation.

Can You Telnet?

If you can ping, check to see if you can Telnet to the website. Type into a command prompt:

telnet google.com 80

If your command prompt goes blank, port 80 is working fine. (Press CTRL+C and then ENTER twice to get out of the box.)

If you get something like:

Connecting To google.com...Could not open connection to the host, on port 80: Connect failed

there are a number of potential issues:

  1. Port 80 is blocked
  2. Your IP address is being blocked by the server
  3. The website is down

You can also try to connect on other ports such as port 25 on an external mail server.

HOSTS File Entry?

Your HOSTS file is like a local copy of DNS. If there is an entry in the hosts file that points to a different IP address for a domain name, then it will never get to the the DNS to find the website.

You can open and check your HOSTS file by typing the following at a command prompt:

notepad %windir%\SYSTEM32\DRIVERS\ETC\HOSTS

This will present you with a next file much like this:

# Copyright (c) 1993-1999 Microsoft Corp.
#
# This is a sample HOSTS file used by Microsoft TCP/IP for Windows.
#
# This file contains the mappings of IP addresses to host names. Each
# entry should be kept on an individual line. The IP address should
# be placed in the first column followed by the corresponding host name.
# The IP address and the host name should be separated by at least one
# space.
#
# Additionally, comments (such as these) may be inserted on individual
# lines or following the machine name denoted by a '#' symbol.
#
# For example:
#
# 102.54.94.97 rhino.acme.com # source server
# 38.25.63.10 x.acme.com # x client host

127.0.0.1 localhost

The last entry is the only entry that should be in a typical home computer. If you have any entries that coincide with the website that you are looking at, this could be your problem.

Clear Web Browser and DNS Cache

Both your web browser and your computer have a cache which stores information about DNS. If you are getting strange results from the tests, try clearing the web browser cache and the DNS cache.

The web browser cache can be found in the options window. To delete the DNS cache, simply type the following command prompt command:

ipconfig /flushdns

Conclusion

Hopefully this will help you to determine if you are running into DNS issues. Of course, DNS is only one small part of your entire network but this is a good start.

If you found this post useful, why don't you buy me a cup of coffee to show your gratitude?