text: When the early TCP/IP networks went online, users quickly realized that it was not healthy or efficient to attempt to remember the IP address of every computer on the network. The people at the research center were much too busy to have to remember whether Computer A in Building 6 had the address 100.12.8.14 or 100.12.8.18. Computer professionals are always looking for new ways to automate tasks. Each time a programmer had to write out a note by hand, you can bet she was wondering whether there was a way she could simply enter the name directly and let the computer take care of associating the name with an address.
  The hostname system was developed early in the history of TCP/IP. In this system, each computer is assigned an alphanumeric name called a hostname. If the operating system encounters an alphanumeric name where it is expecting an IP address, the operating system consults a hosts file (see Figure 11.1). The hosts file contains a list of hostname-to-IP-address associations. If the alphanumeric name is on the list of hostnames, the computer reads the IP address associated with the name. The computer then replaces the hostname in the command with the corresponding IP address and executes the command.
  The hosts file system worked well (and still does) on small local networks. However, this system becomes inefficient on larger networks. The host-to-address associations have to reside in a single file, and the search efficiency of that file diminishes as the file expands. In the ARPAnet days, a single master file called hosts.txt maintained a list of name-to-address associations, and local administrators had to continually update hosts.txt to stay current. Furthermore, the hosts name space was essentially flat. All nodes were equal, and the name resolution system could not make use of the efficient, hierarchical structure of the IP address space.
  Even if the ARPAnet engineers could have solved these problems, the hosts file system could never work with a huge network with millions of nodes like the Internet. The engineers knew they needed a hierarchical name resolution system that would
  Distribute the responsibility for name resolution among a group of special name resolution servers. The name resolution servers maintain the tables that define name-to-address associations. Other computers on the network query the name resolution servers for IP address host-to-name mapping information.
  Grant authority for local name resolution to a local administrator. In other words, instead of maintaining a centralized, master copy of all name-to-address pairs, let an administrator on Network A be responsible for name resolution on Network A, and let an admin of Network B configure name resolution for Network B. That way, the individuals responsible for any changes on a network are also responsible for making sure those changes are reflected in the name resolution infrastructure.
  These priorities led to the development of the domain name system (DNS). DNS is the name resolution method used on the Internet and is the source of common Internet names such as and. As you will learn later in this hour, DNS divides the namespace into hierarchical entities called domains. The domain name can be included with the hostname in what is called a fully qualified domain name (FQDN). For instance, a computer with the hostname maybe in the domain whitehouse.gov would have the FQDN maybe.whitehouse.gov.
  This hour describes hostname resolution and DNS name resolution. You'll also learn about NetBIOS, another popular name resolution system used on Microsoft networks.