xref: /minix3/external/bsd/bind/dist/doc/arm/Bv9ARM.ch05.html (revision 00b67f09dd46474d133c95011a48590a8e8f94c7)
1*00b67f09SDavid van Moolenbroek<!--
2*00b67f09SDavid van Moolenbroek - Copyright (C) 2004-2015 Internet Systems Consortium, Inc. ("ISC")
3*00b67f09SDavid van Moolenbroek - Copyright (C) 2000-2003 Internet Software Consortium.
4*00b67f09SDavid van Moolenbroek -
5*00b67f09SDavid van Moolenbroek - Permission to use, copy, modify, and/or distribute this software for any
6*00b67f09SDavid van Moolenbroek - purpose with or without fee is hereby granted, provided that the above
7*00b67f09SDavid van Moolenbroek - copyright notice and this permission notice appear in all copies.
8*00b67f09SDavid van Moolenbroek -
9*00b67f09SDavid van Moolenbroek - THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
10*00b67f09SDavid van Moolenbroek - REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
11*00b67f09SDavid van Moolenbroek - AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
12*00b67f09SDavid van Moolenbroek - INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
13*00b67f09SDavid van Moolenbroek - LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
14*00b67f09SDavid van Moolenbroek - OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
15*00b67f09SDavid van Moolenbroek - PERFORMANCE OF THIS SOFTWARE.
16*00b67f09SDavid van Moolenbroek-->
17*00b67f09SDavid van Moolenbroek<!-- Id -->
18*00b67f09SDavid van Moolenbroek<html>
19*00b67f09SDavid van Moolenbroek<head>
20*00b67f09SDavid van Moolenbroek<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
21*00b67f09SDavid van Moolenbroek<title>Chapter�5.�The BIND 9 Lightweight Resolver</title>
22*00b67f09SDavid van Moolenbroek<meta name="generator" content="DocBook XSL Stylesheets V1.71.1">
23*00b67f09SDavid van Moolenbroek<link rel="start" href="Bv9ARM.html" title="BIND 9 Administrator Reference Manual">
24*00b67f09SDavid van Moolenbroek<link rel="up" href="Bv9ARM.html" title="BIND 9 Administrator Reference Manual">
25*00b67f09SDavid van Moolenbroek<link rel="prev" href="Bv9ARM.ch04.html" title="Chapter�4.�Advanced DNS Features">
26*00b67f09SDavid van Moolenbroek<link rel="next" href="Bv9ARM.ch06.html" title="Chapter�6.�BIND 9 Configuration Reference">
27*00b67f09SDavid van Moolenbroek</head>
28*00b67f09SDavid van Moolenbroek<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
29*00b67f09SDavid van Moolenbroek<div class="navheader">
30*00b67f09SDavid van Moolenbroek<table width="100%" summary="Navigation header">
31*00b67f09SDavid van Moolenbroek<tr><th colspan="3" align="center">Chapter�5.�The <acronym class="acronym">BIND</acronym> 9 Lightweight Resolver</th></tr>
32*00b67f09SDavid van Moolenbroek<tr>
33*00b67f09SDavid van Moolenbroek<td width="20%" align="left">
34*00b67f09SDavid van Moolenbroek<a accesskey="p" href="Bv9ARM.ch04.html">Prev</a>�</td>
35*00b67f09SDavid van Moolenbroek<th width="60%" align="center">�</th>
36*00b67f09SDavid van Moolenbroek<td width="20%" align="right">�<a accesskey="n" href="Bv9ARM.ch06.html">Next</a>
37*00b67f09SDavid van Moolenbroek</td>
38*00b67f09SDavid van Moolenbroek</tr>
39*00b67f09SDavid van Moolenbroek</table>
40*00b67f09SDavid van Moolenbroek<hr>
41*00b67f09SDavid van Moolenbroek</div>
42*00b67f09SDavid van Moolenbroek<div class="chapter" lang="en">
43*00b67f09SDavid van Moolenbroek<div class="titlepage"><div><div><h2 class="title">
44*00b67f09SDavid van Moolenbroek<a name="Bv9ARM.ch05"></a>Chapter�5.�The <acronym class="acronym">BIND</acronym> 9 Lightweight Resolver</h2></div></div></div>
45*00b67f09SDavid van Moolenbroek<div class="toc">
46*00b67f09SDavid van Moolenbroek<p><b>Table of Contents</b></p>
47*00b67f09SDavid van Moolenbroek<dl>
48*00b67f09SDavid van Moolenbroek<dt><span class="sect1"><a href="Bv9ARM.ch05.html#id2571844">The Lightweight Resolver Library</a></span></dt>
49*00b67f09SDavid van Moolenbroek<dt><span class="sect1"><a href="Bv9ARM.ch05.html#lwresd">Running a Resolver Daemon</a></span></dt>
50*00b67f09SDavid van Moolenbroek</dl>
51*00b67f09SDavid van Moolenbroek</div>
52*00b67f09SDavid van Moolenbroek<div class="sect1" lang="en">
53*00b67f09SDavid van Moolenbroek<div class="titlepage"><div><div><h2 class="title" style="clear: both">
54*00b67f09SDavid van Moolenbroek<a name="id2571844"></a>The Lightweight Resolver Library</h2></div></div></div>
55*00b67f09SDavid van Moolenbroek<p>
56*00b67f09SDavid van Moolenbroek        Traditionally applications have been linked with a stub resolver
57*00b67f09SDavid van Moolenbroek        library that sends recursive DNS queries to a local caching name
58*00b67f09SDavid van Moolenbroek        server.
59*00b67f09SDavid van Moolenbroek      </p>
60*00b67f09SDavid van Moolenbroek<p>
61*00b67f09SDavid van Moolenbroek        IPv6 once introduced new complexity into the resolution process,
62*00b67f09SDavid van Moolenbroek        such as following A6 chains and DNAME records, and simultaneous
63*00b67f09SDavid van Moolenbroek        lookup of IPv4 and IPv6 addresses.  Though most of the complexity was
64*00b67f09SDavid van Moolenbroek        then removed, these are hard or impossible
65*00b67f09SDavid van Moolenbroek        to implement in a traditional stub resolver.
66*00b67f09SDavid van Moolenbroek      </p>
67*00b67f09SDavid van Moolenbroek<p>
68*00b67f09SDavid van Moolenbroek        <acronym class="acronym">BIND</acronym> 9 therefore can also provide resolution
69*00b67f09SDavid van Moolenbroek        services to local clients
70*00b67f09SDavid van Moolenbroek        using a combination of a lightweight resolver library and a resolver
71*00b67f09SDavid van Moolenbroek        daemon process running on the local host.  These communicate using
72*00b67f09SDavid van Moolenbroek        a simple UDP-based protocol, the "lightweight resolver protocol"
73*00b67f09SDavid van Moolenbroek        that is distinct from and simpler than the full DNS protocol.
74*00b67f09SDavid van Moolenbroek      </p>
75*00b67f09SDavid van Moolenbroek</div>
76*00b67f09SDavid van Moolenbroek<div class="sect1" lang="en">
77*00b67f09SDavid van Moolenbroek<div class="titlepage"><div><div><h2 class="title" style="clear: both">
78*00b67f09SDavid van Moolenbroek<a name="lwresd"></a>Running a Resolver Daemon</h2></div></div></div>
79*00b67f09SDavid van Moolenbroek<p>
80*00b67f09SDavid van Moolenbroek        To use the lightweight resolver interface, the system must
81*00b67f09SDavid van Moolenbroek        run the resolver daemon <span><strong class="command">lwresd</strong></span> or a
82*00b67f09SDavid van Moolenbroek        local
83*00b67f09SDavid van Moolenbroek        name server configured with a <span><strong class="command">lwres</strong></span>
84*00b67f09SDavid van Moolenbroek        statement.
85*00b67f09SDavid van Moolenbroek      </p>
86*00b67f09SDavid van Moolenbroek<p>
87*00b67f09SDavid van Moolenbroek        By default, applications using the lightweight resolver library will
88*00b67f09SDavid van Moolenbroek        make
89*00b67f09SDavid van Moolenbroek        UDP requests to the IPv4 loopback address (127.0.0.1) on port 921.
90*00b67f09SDavid van Moolenbroek        The
91*00b67f09SDavid van Moolenbroek        address can be overridden by <span><strong class="command">lwserver</strong></span>
92*00b67f09SDavid van Moolenbroek        lines in
93*00b67f09SDavid van Moolenbroek        <code class="filename">/etc/resolv.conf</code>.
94*00b67f09SDavid van Moolenbroek      </p>
95*00b67f09SDavid van Moolenbroek<p>
96*00b67f09SDavid van Moolenbroek        The daemon currently only looks in the DNS, but in the future
97*00b67f09SDavid van Moolenbroek        it may use other sources such as <code class="filename">/etc/hosts</code>,
98*00b67f09SDavid van Moolenbroek        NIS, etc.
99*00b67f09SDavid van Moolenbroek      </p>
100*00b67f09SDavid van Moolenbroek<p>
101*00b67f09SDavid van Moolenbroek        The <span><strong class="command">lwresd</strong></span> daemon is essentially a
102*00b67f09SDavid van Moolenbroek        caching-only name server that responds to requests using the
103*00b67f09SDavid van Moolenbroek        lightweight
104*00b67f09SDavid van Moolenbroek        resolver protocol rather than the DNS protocol.  Because it needs
105*00b67f09SDavid van Moolenbroek        to run on each host, it is designed to require no or minimal
106*00b67f09SDavid van Moolenbroek        configuration.
107*00b67f09SDavid van Moolenbroek        Unless configured otherwise, it uses the name servers listed on
108*00b67f09SDavid van Moolenbroek        <span><strong class="command">nameserver</strong></span> lines in <code class="filename">/etc/resolv.conf</code>
109*00b67f09SDavid van Moolenbroek        as forwarders, but is also capable of doing the resolution
110*00b67f09SDavid van Moolenbroek        autonomously if
111*00b67f09SDavid van Moolenbroek        none are specified.
112*00b67f09SDavid van Moolenbroek      </p>
113*00b67f09SDavid van Moolenbroek<p>
114*00b67f09SDavid van Moolenbroek        The <span><strong class="command">lwresd</strong></span> daemon may also be
115*00b67f09SDavid van Moolenbroek        configured with a
116*00b67f09SDavid van Moolenbroek        <code class="filename">named.conf</code> style configuration file,
117*00b67f09SDavid van Moolenbroek        in
118*00b67f09SDavid van Moolenbroek        <code class="filename">/etc/lwresd.conf</code> by default.  A name
119*00b67f09SDavid van Moolenbroek        server may also
120*00b67f09SDavid van Moolenbroek        be configured to act as a lightweight resolver daemon using the
121*00b67f09SDavid van Moolenbroek        <span><strong class="command">lwres</strong></span> statement in <code class="filename">named.conf</code>.
122*00b67f09SDavid van Moolenbroek      </p>
123*00b67f09SDavid van Moolenbroek</div>
124*00b67f09SDavid van Moolenbroek</div>
125*00b67f09SDavid van Moolenbroek<div class="navfooter">
126*00b67f09SDavid van Moolenbroek<hr>
127*00b67f09SDavid van Moolenbroek<table width="100%" summary="Navigation footer">
128*00b67f09SDavid van Moolenbroek<tr>
129*00b67f09SDavid van Moolenbroek<td width="40%" align="left">
130*00b67f09SDavid van Moolenbroek<a accesskey="p" href="Bv9ARM.ch04.html">Prev</a>�</td>
131*00b67f09SDavid van Moolenbroek<td width="20%" align="center">�</td>
132*00b67f09SDavid van Moolenbroek<td width="40%" align="right">�<a accesskey="n" href="Bv9ARM.ch06.html">Next</a>
133*00b67f09SDavid van Moolenbroek</td>
134*00b67f09SDavid van Moolenbroek</tr>
135*00b67f09SDavid van Moolenbroek<tr>
136*00b67f09SDavid van Moolenbroek<td width="40%" align="left" valign="top">Chapter�4.�Advanced DNS Features�</td>
137*00b67f09SDavid van Moolenbroek<td width="20%" align="center"><a accesskey="h" href="Bv9ARM.html">Home</a></td>
138*00b67f09SDavid van Moolenbroek<td width="40%" align="right" valign="top">�Chapter�6.�<acronym class="acronym">BIND</acronym> 9 Configuration Reference</td>
139*00b67f09SDavid van Moolenbroek</tr>
140*00b67f09SDavid van Moolenbroek</table>
141*00b67f09SDavid van Moolenbroek</div>
142*00b67f09SDavid van Moolenbroek<p style="text-align: center;">BIND 9.10.2-P4</p>
143*00b67f09SDavid van Moolenbroek</body>
144*00b67f09SDavid van Moolenbroek</html>
145