Dynamic Host Configuration Protocol
Minor Aspects
(Some minor (but important) issues and problems concerning the
DHCP protocol.)
DHCP and Domain Names
DHCP, in his current definition, doesn't interact with
with the Domain Name System.
Therefore, when a client computer gets a new (Dynamic) IP
address from the DHCP server,
the DNS server isn't automatically notified,
and no automatic name-address rebinding takes place
(between the new IP address and the old name).
This leads to inconsistency with respect to the domain names given to
machines.
Researchers are currently working on ways for DHCP
to interact with the DNS. Waiting for that to happen,
some sites have developed their own
nonstandard mechanisms to change the DNS database.
Chicken and Egg Problems
The server and the client are interchanging frames during the
configuration process. But how can they do that if the
client has no IP address yet?
The client's answer is simply to forward the request using
an all-1's destination address (local-net broadcast) all-0's source address
(this computer).
The server's answer can be one of two:
- Send the frame using the hardware address (if they're on the same physical network).
- Broadcast the request too.
If the client does know his IP address (e.g. it was manually configured)
he will put it the 'ciaddr' field and the server will respond to that address.
Random backoff algorithm
A problem can occur if a lot of clients try to
access the same server at once (e.g., after a power failure).
To avoid the server being flooded with requests, each client waits a random amount
of time before transmitting a request.
Once the client has got his IP address
and the server's IP address
he saves them on a permanent storage (caching).
He uses the server's address for subsequent calls and
tries to validate his IP address, on the next reboot.
Security
DHCP is built directly on UDP and IP which are as yet inherently
insecure. Furthermore, DHCP is generally intended to make
maintenance of remote and/or diskless hosts easier. While perhaps
not impossible, configuring such hosts with passwords or keys may be
difficult and inconvenient. Therefore, DHCP in its current form is
quite insecure.
About the authors