Many declarations have scopes within which other declarations and statements can
be written. Most scopes are simply collections of statements and declarations that are
enclosed in braces. One exception is the global scope, which is the text of the
dhcpd.conf file that appears outside all pairs of braces. Chapter 14 describes how the
DHCP server evaluates scopes.
Statements fall into two major categories:
• Conditional statements
• Statements that define options or parameters
The server handles options in much the same way that it handles parameters. The
only difference between them is that parameters control what the server does, and
options tell the server what to send to the DHCP client. Chapter 20 describes how
conditional statements can be used.
Declarations can’t appear within conditional statements because conditional state-
ments are evaluated every time a packet is received, and declarations are evaluated
when the configuration is read, and they persist thereafter.
In cases where the syntax for a declaration or statement calls for an IP address, you
can specify a domain name instead. This can be very convenient, but there are some
things to be aware of when you specify a domain name instead of an IP address:
• Doing a DNS lookup can delay the DHCP server’s response to a DHCP client.
• The DHCP server does not notice updates to the domain name server when
they happen.
•ADNS lookup can return more than one IP address.
DHCP calls for IP addresses, not domain names, to be sent to clients. This means
that whenever you specify a domain name in the configuration file, the DHCP server
has to translate that domain name into an IP address. It does this by sending a DNS
lookup request to the domain name server and waiting for a response. Each DNS
lookup is processed sequentially. If the DHCP server has to do a lot of DNS lookups,
this can significantly delay its response to the client.
DNS lookups for statements in the DHCP configuration file are processed when the
DHCP server receives a request from a DHCP client. The DHCP server caches the
result of any DNS lookup for an hour, so if you only specify a few names in the
DHCP configuration file, the DHCP server won’t be delayed very much in doing DNS
lookups. This means, though, that there may be as much as an hour’s delay before
the DHCP server notices that a record has changed in the DNS.
File Organization 461
032 3273 App B 10/3/02 5:04 PM Page 461