 
  
Even if you want to run DNS or NIS during normal operation, you want to
have some subset of all hostnames in /etc/hosts nevertheless.
For one, you want to have some sort of name resolution even when no
network interfaces are running, for example during boot time.  This is
not only a matter of convenience, but also allows you to use symbolic
hostnames in your rc.inet scripts. Thus, when changing
IP-addresses, you only have to copy an updated hosts file to all
machines and reboot, rather than having to edit a large number of
rc files separately.  Usually, you will put all local hostnames
and addresses in hosts, adding those of any gateways and NIS
servers if used. 
Also, during initial testing, you should make sure your resolver only uses information from the hosts file. Your DNS or NIS software may come with sample files that may produce strange results when being used. To make all applications use /etc/hosts exclusively when looking up the IP-address of a host, you have to edit the /etc/host.conf file. Comment out any lines that begin with the keyword order by preceding them with a hash sign, and insert the line
           order hosts
 
The configuration of the resolver library will be covered in detail
in chapter- .
.
The hosts file contains one entry per line, consisting of an IP-address, a hostname, and an optional list of aliases for the hostname. The fields are separated by spaces or tabs, and the address field must begin in column one. Anything following a hash sign (#) is regarded as a comment and is ignored.
Hostnames can be either fully qualified, or relative to the local domain. For vale, you would usually enter the the fully qualified name, vale.vbrew.com, and vale by itself in the hosts file, so that it is known by both its official name and the shorter local name.
This is an example how a hosts file at the Virtual Brewery might look. Two special names are included, vlager-if1 and vlager-if2 that give the addresses for both interfaces used on vlager.
           #
           # Hosts file for Virtual Brewery/Virtual Winery
           #
           # IP            local       fully qualified domain name
           #
           127.0.0.1       localhost
           #
           191.72.1.1      vlager      vlager.vbrew.com
           191.72.1.1      vlager-if1
           191.72.1.2      vstout      vstout.vbrew.com
           191.72.1.3      vale        vale.vbrew.com
           #
           191.72.2.1      vlager-if2
           191.72.2.2      vbeaujolais  vbeaujolais.vbrew.com
           191.72.2.3      vbardolino   vbardolino.vbrew.com
           191.72.2.4      vchianti     vchianti.vbrew.com
Just as with a host's IP-address, you sometimes would like to use a
symbolic name for network numbers, too. Therefore, the hosts file
has a companion called /etc/networks that maps network names to
network numbers and vice versa. At the Virtual Brewery, we might install
a networks file like this: 
           # /etc/networks for the Virtual Brewery
           brew-net      191.72.1.0
           wine-net      191.72.2.0
 
