Section: Linux Programmer's Manual (7)
Updated: 2008-06-11
Index Return to Main Contents


hostname - hostname resolution description  


Hostnames are domains, where a domain is a hierarchical, dot-separated list of subdomains; for example, the machine monet, in the Berkeley subdomain of the EDU subdomain of the Internet would be represented as


(with no trailing dot).

Hostnames are often used with network client and server programs, which must generally translate the name to an address for use. (This task is generally performed by either getaddrinfo(3) or the obsolete gethostbyname(3).) Hostnames are resolved by the Internet name resolver in the following fashion.

If the name consists of a single component, that is, contains no dot, and if the environment variable HOSTALIASES is set to the name of a file, that file is searched for any string matching the input hostname. The file should consist of lines made up of two white-space separated strings, the first of which is the hostname alias, and the second of which is the complete hostname to be substituted for that alias. If a case-insensitive match is found between the hostname to be resolved and the first field of a line in the file, the substituted name is looked up with no further processing.

If the input name ends with a trailing dot, the trailing dot is removed, and the remaining name is looked up with no further processing.

If the input name does not end with a trailing dot, it is looked up by searching through a list of domains until a match is found. The default search list includes first the local domain, then its parent domains with at least 2 name components (longest first). For example, in the domain CS.Berkeley.EDU, the name lithium.CChem will be checked first as lithium.CChem.CS.Berkeley.EDU and then as lithium.CChem.Berkeley.EDU. Lithium.CChem.EDU will not be tried, as there is only one component remaining from the local domain. The search path can be changed from the default by a system-wide configuration file (see resolver(5)).  


gethostbyname(3), resolver(5), mailaddr(7), named(8)  


This page is part of release 3.21 of the Linux man-pages project. A description of the project, and information about reporting bugs, can be found at






Subscribe to Comments Feed

Upcoming Linux Foundation Courses

  1. LFS220 Linux System Administration
    30 Nov » 03 Dec - Virtual
  2. LFS416 Linux Security
    07 Dec » 10 Dec - Virtual
  3. LFD411 Embedded Linux Development
    07 Dec » 11 Dec - Atlanta

View All Upcoming Courses

Check out the Friday Funnies

Sign Up For the Newsletter

Who we are ?

The Linux Foundation is a non-profit consortium dedicated to the growth of Linux.

More About the foundation...

Frequent Questions

Linux Training / Board