hosts(4) File Formats hosts(4)
hosts - host name database
The hosts file is a local database that associates the names of hosts
with their Internet Protocol (IP) addresses. The hosts file can be used
in conjunction with, or instead of, other hosts databases, including
the Domain Name System (DNS), the NIS hosts map, the NIS+ hosts table,
or information from an LDAP server. Programs use library interfaces to
access information in the hosts file.
The hosts file has one entry for each IP address of each host. If a
host has more than one IP address, it will have one entry for each, on
consecutive lines. The format of each line is:
IP-address official-host-name nicknames...
Items are separated by any number of SPACE and/or TAB characters. The
first item on a line is the host's IP address. The second entry is the
host's official name. Subsequent entries on the same line are alterna-
tive names for the same machine, or "nicknames." Nicknames are
For a host with more than one IP address, consecutive entries for these
addresses may contain the same or differing nicknames. Different nick-
names are useful for assigning distinct names to different addresses.
A call to gethostbyname(3NSL) returns a hostent structure containing
the union of all addresses and nicknames from each line containing a
matching official name or nickname.
A `#' indicates the beginning of a comment; characters up to the end of
the line are not interpreted by routines that search the file.
Network addresses are written in the conventional "decimal dot" nota-
tion and interpreted using the inet_addr routine from the Internet
address manipulation library, inet(3SOCKET).
This interface supports host names as defined in Internet RFC 952 which
A "name" (Net, Host, Gateway, or Domain name) is a text string
up to 24 characters drawn from the alphabet (A-Z), digits (0-9),
minus sign (-), and period (.). Note that periods are only
allowed when they serve to delimit components of "domain style
names". (See RFC 921, "Domain Name System Implementation Sched-
ule," for background). No blank or space characters are permit-
ted as part of a name. No distinction is made between uppercase
and lowercase. The first character must be an alpha character
[or a digit. (RFC 1123 relaxed RFC 952's limitation of the first
character to only alpha characters.)] The last character must
not be a minus sign or period.
Although the interface accepts host names longer than 24 characters for
the host portion (exclusive of the domain component), choosing names
for hosts that adhere to the 24 character restriction will insure maxi-
mum interoperability on the Internet.
A host which serves as a GATEWAY should have "-GATEWAY" or "-GW" as
part of its name. Hosts which do not serve as Internet gateways should
not use "-GATEWAY" and "-GW" as part of their names. A host which is a
TAC should have "-TAC" as the last part of its host name, if it is a
DoD host. Single character names or nicknames are not allowed.
Example 1: Example of a typical line from the hosts file.
Here is a typical line from the hosts file:
188.8.131.52 gaia # John Smith
gethostbyname(3NSL), inet(3SOCKET), nsswitch.conf(4), resolv.conf(4)
/etc/inet/hosts is the official SVR4 name of the hosts file. The sym-
bolic link /etc/hosts exists for BSD compatibility.
SunOS 5.10 15 Dec 2004 hosts(4)