Domain Names
It is not easy to remember IP addresses with the quad-notation, and so more human-friendly names are given to hosts on the network. Because such names must be unique, the domain name system used supports hierarchical names. Examples of such hostnames are www.wrox.com, msdn.microsoft.com, and kerberos.vienna.globalknowledge.com. These names don't have to have three parts, but reading from right to the left, the name starts with the top-level domain. These top-level domains are country-specific (such as .com.tw) or generic (such as .org) and are defined by the IANA (Internet Assigned Numbers Authority). The name appearing directly to the left of the top-level domain is the domain name. To the left of that name, the person or organization holding the domain is responsible for maintaining uniqueness.
The generic top-level domains are listed in this table. In recent years, some new top-level domain names have been added:
Domain Name
Description
.aero
Air Industry
.biz
Business
.com
Commercial Organizations
.coop
Cooperative Associations
.info
No restriction on usage
.museum
Museums
.name
Individuals
Domain Name
Description
.net
Networks
.org
Nonprofit Organizations
.pro
Professionals
.gov
United States Government
.edu
Educational Institutions
.mil
United States Military
.int
Organizations established by international treaties between governments
A detailed description of these generic top-level domains, and of the sponsors and registrars of the domains, can be found at the following URL: http://www.iana.org/gtld/gtld.htm.
Additional to the generic top-level domains, there is a domain name for every country:
Domain Name
Description
.at
Austria
.cc
Cocos (Keeling) Islands
.de
Germany
.fr
France
.tv
Tuvalu
.uk
United Kingdom
The complete list of the country domains is at http://www.iana.org/cctld/cctld-whois.htm.
Whois Service
The whois service provides the means for querying a registration service to find the person or organization that registered a specific domain, their contact information, registration addresses, and so on. Such a whois service is available at the web site http://www.internic.net.
Domain Name Servers
Host names are resolved using DNS (Domain Name Service) servers. These servers have a database of hostnames and alias names mapping names to IP addresses. DNS servers also register information for Mail Servers, ISDN numbers, mailbox names, and services.
In Windows, it is the TCP/IP settings that specify which DNS server is to be used for queries, and the command ipconfig /all shows the DNS servers that have been set up, along with other configuration settings. When a hostname is used to connect to a remote system, the DNS server is queried for the IP address. The DNS server will first check its own database and cache, and if that fails to resolve the name, the DNS server asks a DNS root server. There are several root servers (named a.root-servers.net through to m.root-servers.net) worldwide which can access DNS servers of the top-level domains. The DNS server of the top-level domain knows the DNS server for a specific sub-domain, and will return the IP address corresponding to a particular hostname. DNS servers store information not found in their database in a cache to speed up subsequent requests.
Nslookup
The nslookup command-line utility provides IP addresses for hostnames by querying the default DNS server. In the case shown in the screenshot below, the DNS server is WS01IS02.highway.telekom.at. When I ask this server for the IP address of www.microsoft.com, it returns the real name of the server, www.microsoft.akadns.net, six IP addresses configured for this server, and its alias www.microsoft.com:
This is a non-authoritative answer, meaning that this server is not responsible for the domain that was queried, and reads the information of this domain from its cache. Incidentally, this caching is the cause of many hostname lookup problems. A name server will only clear its DNS cache infrequently, with the effect that different servers will hold inconsistent information. It can take whole days for a change of an address to filter through the Internet. The nslookup command-line utility lets us set up a different DNS server for querying, so we can compare information from different servers.