The Internet Protocol document[1] defines names, addresses, and routes as follows:
[1] RFC 791, Internet Protocol, Jon Postel, ISI, 1981, page 7.
A name indicates what we seek. An address indicates where it is. A route indicates how to get there.
Names, addresses, and routes all require the network administrator's attention. Routes and addresses were covered in the previous chapter. This section discusses names and how they are disseminated throughout the network. Every network interface attached to a TCP/IP network is identified by a unique 32-bit IP address. A name (called a hostname) can be assigned to any device that has an IP address. Names are assigned to devices because, compared to numeric Internet addresses, names are easier to remember and type correctly. Names aren't required by the network software, but they do make it easier for humans to use the network.
In most cases, hostnames and numeric addresses can be used interchangeably. A user wishing to telnet to the workstation at IP address 172.16.12.2 can enter:
% telnet 172.16.12.2
or use the hostname associated with that address and enter the equivalent command:
% telnet rodent.wrotethebook.com
Whether a command is entered with an address or a hostname, the network connection always takes place based on the IP address. The system converts the hostname to an address before the network connection is made. The network administrator is responsible for assigning names and addresses and storing them in the database used for the conversion.
Translating names into addresses isn't simply a "local" issue. The command telnet rodent.wrotethebook.com is expected to work correctly on every host that's connected to the network. If rodent.wrotethebook.com is connected to the Internet, hosts all over the world should be able to translate the name rodent.wrotethebook.com into the proper address. Therefore, some facility must exist for disseminating the hostname information to all hosts on the network.
There are two common methods for translating names into addresses. The older method simply looks up the hostname in a table called the host table.[2] The newer technique uses a distributed database system called the Domain Name System (DNS) to translate names to addresses. We'll examine the host table first.
[2] Sun's Network Information Service (NIS) is an improved technique for accessing the host table. NIS is discussed later in this chapter.