.\" Hey, Emacs! This is an -*- nroff -*- source file.
.\" Copyright (c) 2000 Manoj Srivastava <srivasta@debian.org>
.\"
.\" This is free documentation; you can redistribute it and/or
.\" modify it under the terms of the GNU General Public License as
.\" published by the Free Software Foundation; either version 2 of
.\" the License, or (at your option) any later version.
.\"
.\" The GNU General Public License's references to "object code"
.\" and "executables" are to be interpreted as the output of any
.\" document formatting or typesetting system, including
.\" intermediate and printed output.
.\"
.\" This manual is distributed in the hope that it will be useful,
.\" but WITHOUT ANY WARRANTY; without even the implied warranty of
.\" MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
.\" GNU General Public License for more details.
.\"
.\" You should have received a copy of the GNU General Public
.\" License along with this manual; if not, write to the Free
.\" Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139,
.\" USA.
.\"
.\" Minor polishing, aeb
.\" Modified, 2002-06-16, Mike Coleman
.\"
.TH HOSTS 5 2002-06-16 "Linux" "Linux Programmer's Manual"
.SH NAME
hosts \- The static table lookup for hostnames
.SH SYNOPSIS
.B /etc/hosts
.SH DESCRIPTION
This manual page describes the format of the
.I /etc/hosts
file.
This file is a simple text file that associates IP addresses
with hostnames, one line per IP address.
For each host a single
line should be present with the following information:
.RS
.PP
IP_address canonical_hostname [aliases...]
.RE
.PP
Fields of the entry are separated by any number of blanks and/or
tab characters.
Text from a "#" character until the end of the line is
a comment, and is ignored.
Host names may contain only alphanumeric
characters, minus signs ("\-"), and periods (".").
They must begin with an
alphabetic character and end with an alphanumeric character.
Optional aliases provide for name changes, alternate spellings,
shorter hostnames, or generic hostnames (for example,
.IR localhost ).
.PP
The Berkeley Internet Name Domain (BIND) Server implements the
Internet name server for Unix systems.
It augments or replaces the
.I /etc/hosts
file or hostname lookup, and frees a host from relying on
.I /etc/hosts
being up to date and complete.
.PP
In modern systems, even though the host table has been superseded by
DNS, it is still widely used for:
.TP
.B bootstrapping
Most systems have a small host table containing the name and address
information for important hosts on the local network.
This is useful
when DNS is not running, for example during system bootup.
.TP
.B NIS
Sites that use NIS use the host table as input to the NIS host
database.
Even though NIS can be used with DNS, most NIS sites still
use the host table with an entry for all local hosts as a backup.
.TP
.B isolated nodes
Very small sites that are isolated from the network use the host table
instead of DNS.
If the local information rarely changes, and the
network is not connected to the Internet, DNS offers little
advantage.
.SH FILES
.I /etc/hosts
.SH NOTES
Modifications to this file normally take effect immediately,
except in cases where the file is cached by applications.
.SS "Historical Notes"
RFC\ 952 gave the original format for the host table, though it has
since changed.

Before the advent of DNS, the host table was the only way of resolving
hostnames on the fledgling Internet.
Indeed, this file could be
created from the official host data base maintained at the Network
Information Control Center (NIC), though local changes were often
required to bring it up to date regarding unofficial aliases and/or
unknown hosts.
The NIC no longer maintains the hosts.txt files,
though looking around at the time of writing (circa 2000), there are
historical hosts.txt files on the WWW.
I just found three, from 92,
94, and 95.
.SH EXAMPLE
.nf
127.0.0.1       localhost
192.168.1.10    foo.mydomain.org       foo
192.168.1.13    bar.mydomain.org       bar
146.82.138.7    master.debian.org      master
209.237.226.90  www.opensource.org
.fi
.SH "SEE ALSO"
.BR hostname (1),
.BR resolver (3),
.BR resolver (5),
.BR hostname (7),
.BR named (8),
Internet RFC\ 952
.\" .SH AUTHOR
.\" This manual page was written by Manoj Srivastava <srivasta@debian.org>,
.\" for the Debian GNU/Linux system.
.SH COLOPHON
This page is part of release 3.22 of the Linux
.I man-pages
project.
A description of the project,
and information about reporting bugs,
can be found at
http://www.kernel.org/doc/man-pages/.
