|Home • Troubleshooting • Trouble Beyond the Modem • Nameserver - NSLookup|
DNS Nameservers - Nslookup
All devices that are connected to the Internet are assigned at least one IP (Internet Protocol) address. IP addresses are in "dotted-quad" format - 4 sets of numbers separated by periods (dots). Each number's value can be 0 through 255. While it's possible to access devices and servers connected to the Internet directly by IP address, it's often not practical or convenient to remember these addresses. However, for an actual connection to be made to a server, your computer must use an IP address.
Nameservers are responsible for looking up a domain name and returning the IP address - and it's all done behind the scenes. You enter a site - like www.modemsite.com - and your computer asks the nameserver for the IP address, then requests the page from the server at the IP address returned by the nameserver.
If there is a problem with the nameserver - either with the nameserver itself or the backbone connectivity to the nameserver, you'll get an error page or "server not found" page similar to what you'd get if you tried to access a website without having an Internet connection.
Isolating a problem to the nameserver - or connectivity to the nameserver - can be tricky: Newer versions of Windows keep the IP addresses returned by the nameserver in a cache for some amount of time so successive requests for the same domain name don't require a lookup each time it is accessed. By default, Windows also caches names that were not resolved successfully: this means that if a nameserver is intermittent, or connectivity to the nameserver is intermittent, a site not found remains not found until the cached entry expires. Because nameservers are so important, a primary and one or more alternate nameservers are assigned to your connection: if the primary nameserver fails to respond to a request, the alternates are queried. In addition, a local file on your PC can be enabled to override the nameserver for particular names. This page shows how to disable Windows caching of unresolved domain names.
In most cases, no matter what type of Internet connectivity you have (dial-up, broadband, wireless, etc.) the nameservers that you will use are assigned automatically. Windows does allow you to specify particular nameservers as part of the Connectoid - TCP/IP properties. (Whether a particular nameserver will accept requests from you depends upon how the nameserver is configured - a nameserver can be open to the public, or an ISP can prevent its nameservers from responding to requests that do not originate from its customers.)
Windows NT, 2000 and XP come with 2 important command-line utilities that can be useful in isolating and troubleshooting nameserver problems: nslookup (nameserver lookup) and ipconfig (which, among other things, allows you to flush your computer's DNS cache).
Nslookup can be run from the command prompt (DOS prompt) by typing nslookup. When this utility starts, an attempt is made to connect to your default nameserver. If the default and/or alternate nameservers cannot be reached, it is reported. After nslookup starts, the command prompt changes to > _. From this prompt, you can type in any website name (like www.modemsite.com) - a request is sent to the nameserver to resolve the name, and a report is returned. You can rapidly repeat the request (newer versions of Windows support repeating the last command by using the up-arrow, then enter), and if any timeouts occur, it's safe to assume there's a problem with the nameserver or connectivity to it, and you'll have similar (intermittent) problems reaching websites.
Nslookup has a number of options and commands - a help screen can be obtained by typing help at the nslookup prompt. One of the useful commands is to use a different nameserver - this can be accomplished by typing server x.x.x.x where x.x.x.x is the IP address of a valid nameserver.
IPCONFIG: The command
can be used to clear any cached DNS entries stored in your machine. This command is useful if there was a problem with reaching your nameserver that is intermittent or occurred only briefly: any sites you tried to access when the nameservers timed out by default remain in the cache as a negative result - and you'll continue not to have access to these sites even when the nameserver works again. But, ipconfig /flushdns removes everything from the cache - instead of an immediate no server found, an attempt will be made to resolve domain names again.
How it works in the real-world: Nearly all of the big, national ISPs operate only a few nameservers for all the locations they serve: you connect to a local number (POP), but there is no nameserver at the POP - it could be thousands of miles away and can be affected by all the problems that can occur in the Internet backbone. So, even though the remote access server at the POP you dialed into is working, a glitch in reaching the nameserver can make some sites appear to be down when they are not; a failure in the nameserver or in routing to the nameserver can make it appear that your connection is dead when it really isn't - you'd still be able to access most sites if you knew the IP address. A true local or small regional ISP that operates their own facilities is less likely to have this kind of problem - the ISP's nameserver will most likely be at the POP you dial into, or one near to you, preventing backbone/connectivity issues in reaching the nameserver. If the nameservers fail, the ISP is out of business and both you and they know it.
This is not the case with the big ISPs: where the issue is connectivity/routing to the nameserver, they probably won't know they have a problem, and even worse, are unlikely to have any means to accept a trouble report about the situation!