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 function is generally performed by the library routine gethostbyname(3N).) 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 a 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 there is at least one dot in the name, then the name is first tried as is. The number of dots to cause this action is configurable by setting the threshold using the ndots option in /etc/resolv.conf (the default value is 1). If the name ends with a dot, the trailing dot is removed, and the remaining name is looked up (regardless of the setting of the ndots option) and no further processing is done.
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. If neither the search option in the /etc/resolv.conf file or the LOCAL-DOMAIN environment variable is used, then the search list of domains contains only the full domain specified by the domain option in etc/resolv.conf or the domain used in the local hostname hostname and resolver. For example, if the domain option is set to ``SJ.Yoyodyne.com'', then only ``SJ.Yoyodyne.com'' will be in the search list and will be the only domain appended to the partial hostname. For example, ``yaya'' makes ``yaya.SJ.Yoyodyne.com'' the only name to be tried using the search list.
If the search option is used in /etc/resolv.conf or the environment variable, LOCALDOMAIN is set by the user, then the search list will include what is set by these methods. For example, if the search line was
search SJ.Yoyodyne.com Eng.Yoyodyne.com Yoyodyne.comthen the partial hostname (such as ``yaya'' will be tried with each domain name appended (in the same order specified). The resulting hostnames that would be tried are:
The environment variable LOCALDOMAIN overrides the search and domain options, and if both search and domain option are present in the resolver configuration file, then only the last one listed is used.
If the name was not previously tried ``as is'' (that is, it fell below the ndots threshold or did not contain a dot), then the name originally specified is tried.
RFC 1035, RFC 1178