'\" te
.\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved.
.\" Copyright 1989 AT&T
.\" Copyright (c) 1983 Regents of the University of California.  All rights reserved.  The Berkeley software License Agreement  specifies the terms and conditions for redistribution.
.TH RESOLV.CONF 4 "Dec 15, 2004"
.SH NAME
resolv.conf \- resolver configuration file
.SH SYNOPSIS
.LP
.nf
\fB/etc/resolv.conf\fR
.fi

.SH DESCRIPTION
.sp
.LP
The \fBresolver\fR is a set of routines that provide access to the Internet
Domain Name System. See \fBresolver\fR(3RESOLV). \fBresolv.conf\fR is a
configuration file that contains the information that is read by the
\fBresolver\fR 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 \fBresolver\fR information.
.sp
.LP
The \fBresolv.conf\fR file contains the following configuration directives:
.sp
.ne 2
.na
\fB\fBnameserver\fR\fR
.ad
.RS 23n
Specifies the IPv4 or IPv6 Internet address of a name server that the resolver
is to query. Up to \fIMAXNS\fR name servers may be listed, one per keyword. See
<\fBresolv.h\fR>. 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.
.RE

.sp
.ne 2
.na
\fB\fBdomain\fR\fR
.ad
.RS 23n
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 \fBsysinfo\fR(2) or from \fBgethostname\fR(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 \fBLOCALDOMAIN\fR environment variable to override the domain name.
.RE

.sp
.ne 2
.na
\fB\fBsearch\fR\fR
.ad
.RS 23n
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
\fBresolver\fR 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.
.sp
The search list is currently limited to six domains and a total of 256
characters.
.RE

.sp
.ne 2
.na
\fB\fBsortlist\fR\fIaddresslist\fR\fR
.ad
.RS 23n
Allows addresses returned by the libresolv-internal \fBgethostbyname()\fR to be
sorted. A \fBsortlist\fR 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:
.sp
.in +2
.nf
sortlist 130.155.160.0/255.255.240.0 130.155.0.0
.fi
.in -2
.sp

.RE

.sp
.ne 2
.na
\fB\fBoptions\fR\fR
.ad
.RS 23n
Allows certain internal resolver variables to be modified. The syntax is
.sp
.in +2
.nf
options option ...
.fi
.in -2
.sp

where option is one of the following:
.sp
.ne 2
.na
\fB\fBdebug\fR\fR
.ad
.RS 18n
Sets \fBRES_DEBUG\fR in the \fB_res.options\fR field.
.RE

.sp
.ne 2
.na
\fB\fBndots:\fR\fIn\fR\fR
.ad
.RS 18n
Sets a threshold floor for the number of dots which must appear in a name given
to \fBres_query()\fR before an initial absolute (as-is) query is performed. See
\fBresolver\fR(3RESOLV). The default value for \fIn\fR 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.
.RE

.sp
.ne 2
.na
\fB\fBtimeout:\fR\fIn\fR\fR
.ad
.br
.na
\fB\fBretrans:\fR\fIn\fR\fR
.ad
.RS 18n
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 \fBRES_TIMEOUT\fR. See <\fBresolv.h\fR>.
The \fBtimeout\fR and \fBretrans\fR values are the starting point for an
exponential back off procedure where the \fBtimeout\fR is doubled for every
retransmit attempt.
.RE

.sp
.ne 2
.na
\fB\fBattempts:\fR\fIn\fR\fR
.ad
.br
.na
\fB\fBretry:\fR\fIn\fR\fR
.ad
.RS 18n
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 \fBRES_DFLRETRY\fR. See <\fBresolv.h\fR>.
.RE

.sp
.ne 2
.na
\fB\fBrotate\fR\fR
.ad
.RS 18n
Sets \fBRES_ROTATE\fR in \fB_res.options\fR. 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.
.RE

.sp
.ne 2
.na
\fB\fBno-check-names\fR\fR
.ad
.RS 18n
Sets \fBRES_NOCHECKNAME\fR in \fB_res.options\fR. This disables the modern BIND
checking of incoming host names and mail names for invalid characters such as
underscore (\fB_\fR), non-ASCII, or control characters.
.RE

.sp
.ne 2
.na
\fB\fBinet6\fR\fR
.ad
.RS 18n
Sets \fBRES_USE_INET6\fR in \fB_res.options\fR. In the Solaris BIND port, this
has no effect on \fBgethostbyname\fR(3NSL). To retrieve IPv6 addresses or IPv4
addresses, use \fBgetaddrinfo\fR(3SOCKET) instead of setting \fBinet6\fR.
.RE

.RE

.sp
.LP
The \fBdomain\fR and \fBsearch\fR keywords are mutually exclusive. If more than
one instance of these keywords is present, the last instance takes precedence.
.sp
.LP
You can override the \fBsearch\fR keyword of the system \fBresolv.conf\fR file
on a per-process basis by setting the environment variable \fBLOCALDOMAIN\fR to
a space-separated list of search domains.
.sp
.LP
You can amend the \fBoptions\fR keyword of the system \fBresolv.conf\fR file on
a per-process basis by setting the environment variable \fBRES_OPTIONS\fR to a
space-separated list of resolver options.
.sp
.LP
The keyword and value must appear on a single line. Start the line with the
keyword, for example, \fBnameserver\fR, followed by the value, separated by
white space.
.SH FILES
.sp
.ne 2
.na
\fB\fB/etc/resolv.conf\fR\fR
.ad
.RS 20n

.RE

.SH ATTRIBUTES
.sp
.LP
See \fBattributes\fR(5) for descriptions of the following attributes:
.sp

.sp
.TS
box;
c | c
l | l .
ATTRIBUTE TYPE	ATTRIBUTE VALUE
_
Interface Stability	Standard BIND 8.3.3
.TE

.SH SEE ALSO
.sp
.LP
\fBdomainname\fR(1M), \fBsysinfo\fR(2), \fBgethostbyname\fR(3NSL),
\fBgetnameinfo\fR(3SOCKET), \fBgetipnodebyname\fR(3SOCKET),
\fBgethostname\fR(3C), \fBresolver\fR(3RESOLV), \fBattributes\fR(5)
.sp
.LP
Vixie, Paul, Dunlap, Keven J., Karels, Michael J. \fIName Server Operations
Guide for BIND\fR. Internet Software Consortium, 1996.