Bv9ARM.5.html revision 717cea5293cb62626b9fe5cdd70e4cfa3cacae26
0c27b3fe77ac1d5094ba3521e8142d9e7973133fMark Andrews<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML EXPERIMENTAL 970324//EN">
0c27b3fe77ac1d5094ba3521e8142d9e7973133fMark Andrews<META NAME="GENERATOR" CONTENT="Adobe FrameMaker 5.5/HTML Export Filter">
421d4a06479e61fbdc35087f3c4abc9fe65ad72aEvan Hunt<TITLE> Section 5. The BIND 9 Lightweight Resolver</TITLE></HEAD>
421d4a06479e61fbdc35087f3c4abc9fe65ad72aEvan HuntThe BIND 9 Lightweight Resolver</H1>
421d4a06479e61fbdc35087f3c4abc9fe65ad72aEvan Hunt5.1 The Lightweight Resolver Library</H3>
421d4a06479e61fbdc35087f3c4abc9fe65ad72aEvan HuntTraditionally applications have been linked with a stub resolver library that sends recursive DNS queries to a local caching name server.</P>
421d4a06479e61fbdc35087f3c4abc9fe65ad72aEvan HuntIPv6 introduces new complexity into the resolution process, such as following A6 chains and DNAME records, and simultaneous lookup of IPv4 and IPv6 addresses. These are hard or impossible to implement in a traditional stub resolver.</P>
Instead, BIND 9 provides resolution services to local clients using a combination of a lightweight resolver library and a resolver daemon process running on the local host. These communicate using a simple UDP-based protocol, the "lightweight resolver protocol" that is distinct from and simpler than the full DNS protocol.</P>
To use the lightweight resolver interface, the system must run the resolver daemon <CODE CLASS="Program-Process">
Applications using the lightweight resolver library will make UDP requests to the IPv4 loopback address (127.0.0.1) on port 921. The daemon will try to find the answer to the questions "what are the addresses for host <EM CLASS="URL">
The daemon currently only looks in the DNS, but in the future it may use other sources such as <EM CLASS="grammar_literal">
daemon is essentially a stripped-down, caching-only name server that answers requests using the lightweight resolver protocol rather than the DNS protocol. Because it needs to run on each host, it is designed to require no or minimal configuration. It uses the name servers listed on <CODE CLASS="Program-Process">