resolv.conf(4) resolv.conf(4)
NAME
resolv.conf - resolver configuration file
/etc/resolv.conf
The resolver is a set of routines that provide access to the Internet Domain Name System. See resolver(3RESOLV). resolv.conf is a configu-
ration file that contains the information that is read by the resolver routines the first time they are invoked by a process. The file is
designed to be human readable and contains a list of keywords with values that provide various types of resolver information.
The resolv.conf file contains the following configuration directives:
nameserver Specifies the IPv4 or IPv6 Internet address of a name server that the resolver is to query. Up to MAXNS name
servers may be listed, one per keyword. See <resolv.h>. If there are multiple servers, the resolver library
queries them in the order listed. If no name server entries are present, the resolver library queries the name
server on the local machine. The resolver library follows the algorithm to try a name server until the query times
out. It then tries the name servers that follow, until each query times out. It repeats all the name servers until
a maximum number of retries are made.
domain Specifies the local domain name. Most queries for names within this domain can use short names relative to the
local domain. If no domain entry is present, the domain is determined from sysinfo(2) or from gethostname(3C).
(Everything after the first `.' is presumed to be the domain name.) If the host name does not contain a domain
part, the root domain is assumed. You can use the LOCALDOMAIN environment variable to override the domain name.
search The search list for host name lookup. The search list is normally determined from the local domain name. By
default, it contains only the local domain name. You can change the default behavior by listing the desired domain
search path following the search keyword, with spaces or tabs separating the names. Most resolver queries will be
attempted using each component of the search path in turn until a match is found. This process may be slow and will
generate a lot of network traffic if the servers for the listed domains are not local. Queries will time out if no
server is available for one of the domains.
The search list is currently limited to six domains and a total of 256 characters.
sortlistaddresslist Allows addresses returned by the libresolv-internal gethostbyname() to be sorted. A sortlist is specified by IP
address netmask pairs. The netmask is optional and defaults to the natural netmask of the net. The IP address and
optional network pairs are separated by slashes. Up to 10 pairs may be specified. For example:
sortlist 130.155.160.0/255.255.240.0 130.155.0.0
options Allows certain internal resolver variables to be modified. The syntax is
options option ...
where option is one of the following:
debug
Sets RES_DEBUG in the _res.options field.
ndots:n
Sets a threshold floor for the number of dots which must appear in a name given to res_query() before an ini-
tial absolute (as-is) query is performed. See resolver(3RESOLV). The default value for n is 1, which means that
if there are any dots in a name, the name is tried first as an absolute name before any search list elements
are appended to it.
timeout:n
retrans:n
Sets the amount of time the resolver will wait for a response from a remote name server before retrying the
query by means of a different name server. Measured in seconds, the default is RES_TIMEOUT. See <resolv.h>. The
timeout and retrans values are the starting point for an exponential back off procedure where the timeout is
doubled for every retransmit attempt.
attempts:n
retry:n
Sets the number of times the resolver will send a query to its name servers before giving up and returning an
error to the calling application.
The default is RES_DFLRETRY. See <resolv.h>.
rotate
Sets RES_ROTATE in _res.options. The name servers are queried round-robin from among those listed. The query
load is spread among all listed servers, rather than having all clients try the first listed server first every
time.
no-check-names
Sets RES_NOCHECKNAME in _res.options. This disables the modern BIND checking of incoming host names and mail
names for invalid characters such as underscore (_), non-ASCII, or control characters.
inet6
Sets RES_USE_INET6 in _res.options. In the Solaris BIND port, this has no effect on gethostbyname(3NSL). To
retrieve IPv6 addresses or IPv4 addresses, use getaddrinfo(3SOCKET) instead of setting inet6.
The domain and search keywords are mutually exclusive. If more than one instance of these keywords is present, the last instance takes
precedence.
You can override the search keyword of the system resolv.conf file on a per-process basis by setting the environment variable LOCALDOMAIN
to a space-separated list of search domains.
You can amend the options keyword of the system resolv.conf file on a per-process basis by setting the environment variable RES_OPTIONS to
a space-separated list of resolver options.
The keyword and value must appear on a single line. Start the line with the keyword, for example, nameserver, followed by the value, sepa-
rated by white space.
/etc/resolv.conf
See attributes(5) for descriptions of the following attributes:
+-----------------------------+-----------------------------+
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
+-----------------------------+-----------------------------+
|Interface Stability |Standard BIND 8.3.3 |
+-----------------------------+-----------------------------+
domainname(1M), sysinfo(2), gethostbyname(3NSL), getnameinfo(3SOCKET), getipnodebyname(3SOCKET), gethostname(3C), resolver(3RESOLV),
attributes(5)
Vixie, Paul, Dunlap, Keven J., Karels, Michael J. Name Server Operations Guide for BIND. Internet Software Consortium, 1996.
15 Dec 2004 resolv.conf(4)