DNS Configuration and Management Manual (G06.27+, H06.05+, J06.03+)

DNS and BIND Basics
HP DNS Configuration and Management Manual529432-003
A-5
Overview
Typically, the client resolver gives a DNS node name and requests as an answer the
node’s IP address, or the client resolver gives a DNS node name’s IP address and
requests as an answer the node’s name. However, the name server may have different
data it is seeking, such as addresses of other domain name servers.
When a DNS server receives a query for a name that is in a zone for which it is not
authoritative, it first checks its cache to see if it has already resolved the address being
queried. If the address has not been resolved, the DNS server checks the cache again
for the address of an authoritative name server for the domain. Finally, if it has no
name server information (based on previous queries), it checks the list of root name
servers that it derived from db.cache when the DNS server was started. This file lists
the name servers that are queried for a list of root servers. It then sends the query to
one of the root servers.
BIND functions in the following ways:
Top down approach
If the name server contacted has no information, that name server asks a root
name server for the information. The root name server refers the querying name
server to another name server closer to the answer. This process continues until
an answer is found.
Query approach
DNS name servers query other name servers anywhere in the name space to
obtain the answer to the query.
Referral and response approach
Queries are requests for a certain type of data attached to a particular domain
name. Referrals tell a name server to go query a different name server for the
answer. Responses provide the data requested or an error.
Consider the structure of the DNS name space shown in Figure A-1
on page A-2.
When a user logged in to host venus in the nmt.edu domain types,
telnet
indigo.div.inc.com
, the following events occur:
1. The telnet process calls the
gethostbyname routine to obtain the Internet
address of
indigo.div.inc.com.
2. The
gethostbyname routine invokes the BIND resolver, which consists of a set of
routines for querying name servers.
3. The resolver constructs a query and sends it to a name server. If the local host is
not running a name server, the local host must contain a file called /etc/resolv.conf,
which contains one or more Internet addresses for name servers that serve the
local domain. If the local host does not have an /etc/resolv.conf file, the resolver
sends the query to the local name server.