lwresd.docbook revision f5d30e2864e048a42c4dc1134993ae7efdb5d6c3
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.0//EN"
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra "http://www.oasis-open.org/docbook/xml/4.0/docbookx.dtd"
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra [<!ENTITY mdash "—">]>
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra - Copyright (C) 2004, 2005 Internet Systems Consortium, Inc. ("ISC")
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra - Copyright (C) 2000, 2001 Internet Software Consortium.
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra - Permission to use, copy, modify, and distribute this software for any
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra - purpose with or without fee is hereby granted, provided that the above
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra - copyright notice and this permission notice appear in all copies.
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra - THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra - REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra - AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra - INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra - LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra - OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra - PERFORMANCE OF THIS SOFTWARE.
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra<!-- $Id: lwresd.docbook,v 1.10 2005/05/13 01:35:40 marka Exp $ -->
0dc2366f7b9f9f36e10909b1e95edbf2a261c2acVenugopal Iyer <refentryinfo>
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra </refentryinfo>
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra <refentrytitle><application>lwresd</application></refentrytitle>
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra <refname><application>lwresd</application></refname>
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra <refpurpose>lightweight resolver daemon</refpurpose>
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra </refnamediv>
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra <holder>Internet Systems Consortium, Inc. ("ISC")</holder>
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra <holder>Internet Software Consortium.</holder>
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra <refsynopsisdiv>
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra <cmdsynopsis>
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra <arg><option>-C <replaceable class="parameter">config-file</replaceable></option></arg>
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra <arg><option>-d <replaceable class="parameter">debug-level</replaceable></option></arg>
0eb090a7674ebcdcb1c35501097edeb5f2395459Saurabh Misra <arg><option>-i <replaceable class="parameter">pid-file</replaceable></option></arg>
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra <arg><option>-n <replaceable class="parameter">#cpus</replaceable></option></arg>
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra <arg><option>-P <replaceable class="parameter">port</replaceable></option></arg>
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra <arg><option>-p <replaceable class="parameter">port</replaceable></option></arg>
0eb090a7674ebcdcb1c35501097edeb5f2395459Saurabh Misra <arg><option>-t <replaceable class="parameter">directory</replaceable></option></arg>
0eb090a7674ebcdcb1c35501097edeb5f2395459Saurabh Misra <arg><option>-u <replaceable class="parameter">user</replaceable></option></arg>
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra </cmdsynopsis>
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra </refsynopsisdiv>
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra is the daemon providing name lookup
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra services to clients that use the BIND 9 lightweight resolver
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra library. It is essentially a stripped-down, caching-only name
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra server that answers queries using the BIND 9 lightweight
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra resolver protocol rather than the DNS protocol.
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra listens for resolver queries on a
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra UDP port on the IPv4 loopback interface, 127.0.0.1. This
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra means that <command>lwresd</command> can only be used by
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra processes running on the local machine. By default UDP port
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra number 921 is used for lightweight resolver requests and
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra Incoming lightweight resolver requests are decoded by the
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra server which then resolves them using the DNS protocol. When
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra the DNS lookup completes, <command>lwresd</command> encodes
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra the answers in the lightweight resolver format and returns
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra them to the client that made the request.
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra If <filename>/etc/resolv.conf</filename> contains any
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra <option>nameserver</option> entries, <command>lwresd</command>
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra sends recursive DNS queries to those servers. This is similar
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra to the use of forwarders in a caching name server. If no
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra <option>nameserver</option> entries are present, or if
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra forwarding fails, <command>lwresd</command> resolves the
0eb090a7674ebcdcb1c35501097edeb5f2395459Saurabh Misra queries autonomously starting at the root name servers, using
0eb090a7674ebcdcb1c35501097edeb5f2395459Saurabh Misra a built-in list of root server hints.
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra <variablelist>
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra <varlistentry>
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra <term>-C <replaceable class="parameter">config-file</replaceable></term>
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra Use <replaceable class="parameter">config-file</replaceable> as the
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra configuration file instead of the default,
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra </varlistentry>
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra <varlistentry>
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra <term>-d <replaceable class="parameter">debug-level</replaceable></term>
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra Set the daemon's debug level to <replaceable class="parameter">debug-level</replaceable>.
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra Debugging traces from <command>lwresd</command> become
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra more verbose as the debug level increases.
0eb090a7674ebcdcb1c35501097edeb5f2395459Saurabh Misra </varlistentry>
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra <varlistentry>
0eb090a7674ebcdcb1c35501097edeb5f2395459Saurabh Misra Run the server in the foreground (i.e. do not daemonize).
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra </varlistentry>
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra <varlistentry>
0eb090a7674ebcdcb1c35501097edeb5f2395459Saurabh Misra Run the server in the foreground and force all logging
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra </varlistentry>
0eb090a7674ebcdcb1c35501097edeb5f2395459Saurabh Misra <varlistentry>
0eb090a7674ebcdcb1c35501097edeb5f2395459Saurabh Misra <term>-n <replaceable class="parameter">#cpus</replaceable></term>
0eb090a7674ebcdcb1c35501097edeb5f2395459Saurabh Misra Create <replaceable class="parameter">#cpus</replaceable> worker threads
0eb090a7674ebcdcb1c35501097edeb5f2395459Saurabh Misra to take advantage of multiple CPUs. If not specified,
0eb090a7674ebcdcb1c35501097edeb5f2395459Saurabh Misra <command>lwresd</command> will try to determine the
0eb090a7674ebcdcb1c35501097edeb5f2395459Saurabh Misra number of CPUs present and create one thread per CPU.
0eb090a7674ebcdcb1c35501097edeb5f2395459Saurabh Misra If it is unable to determine the number of CPUs, a
0eb090a7674ebcdcb1c35501097edeb5f2395459Saurabh Misra single worker thread will be created.
0eb090a7674ebcdcb1c35501097edeb5f2395459Saurabh Misra </varlistentry>
0eb090a7674ebcdcb1c35501097edeb5f2395459Saurabh Misra <varlistentry>
0eb090a7674ebcdcb1c35501097edeb5f2395459Saurabh Misra <term>-P <replaceable class="parameter">port</replaceable></term>
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra Listen for lightweight resolver queries on port
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra <replaceable class="parameter">port</replaceable>. If
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra not specified, the default is port 921.
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra </varlistentry>
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra <varlistentry>
0eb090a7674ebcdcb1c35501097edeb5f2395459Saurabh Misra <term>-p <replaceable class="parameter">port</replaceable></term>
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra Send DNS lookups to port <replaceable class="parameter">port</replaceable>. If not
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra specified, the default is port 53. This provides a
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra way of testing the lightweight resolver daemon with a
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra name server that listens for queries on a non-standard
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra </varlistentry>
0eb090a7674ebcdcb1c35501097edeb5f2395459Saurabh Misra <varlistentry>
0eb090a7674ebcdcb1c35501097edeb5f2395459Saurabh Misra Write memory usage statistics to <filename>stdout</filename>
0eb090a7674ebcdcb1c35501097edeb5f2395459Saurabh Misra This option is mainly of interest to BIND 9 developers
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra and may be removed or changed in a future release.
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra </varlistentry>
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra <varlistentry>
0dc2366f7b9f9f36e10909b1e95edbf2a261c2acVenugopal Iyer <term>-t <replaceable class="parameter">directory</replaceable></term>
0dc2366f7b9f9f36e10909b1e95edbf2a261c2acVenugopal Iyer to <replaceable class="parameter">directory</replaceable> after
0dc2366f7b9f9f36e10909b1e95edbf2a261c2acVenugopal Iyer processing the command line arguments, but before
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra reading the configuration file.
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra This option should be used in conjunction with the
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra <option>-u</option> option, as chrooting a process
0dc2366f7b9f9f36e10909b1e95edbf2a261c2acVenugopal Iyer running as root doesn't enhance security on most
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra systems; the way <function>chroot()</function> is
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra defined allows a process with root privileges to
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra escape a chroot jail.
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra </varlistentry>
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra <varlistentry>
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra <term>-u <replaceable class="parameter">user</replaceable></term>
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra to <replaceable class="parameter">user</replaceable> after completing
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra privileged operations, such as creating sockets that
0dc2366f7b9f9f36e10909b1e95edbf2a261c2acVenugopal Iyer listen on privileged ports.
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra </varlistentry>
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra <varlistentry>
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra Report the version number and exit.
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra </varlistentry>
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra </variablelist>
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra <variablelist>
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra <varlistentry>
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra <term><filename>/etc/resolv.conf</filename></term>
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra The default configuration file.
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra </varlistentry>
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra <varlistentry>
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra <term><filename>/var/run/lwresd.pid</filename></term>
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra The default process-id file.
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra </varlistentry>
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra </variablelist>
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra <refentrytitle>named</refentrytitle><manvolnum>8</manvolnum>
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra </citerefentry>,
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra <citerefentry>
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra <refentrytitle>lwres</refentrytitle><manvolnum>3</manvolnum>
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra </citerefentry>,
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra <citerefentry>
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra <refentrytitle>resolver</refentrytitle><manvolnum>5</manvolnum>
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra </citerefentry>.
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra <para><corpauthor>Internet Systems Consortium</corpauthor>
015a6ef6781cc3ceba8ad3bfbae98449b6002a1fSaurabh Misra - Local variables: