DHCP (Dynamic Host Configuration Protocol)
DHCP (Dynamic Host Configuration Protocol) is a protocol that lets network
administrators manage centrally and automate the assignment of Internet Protocol
(IP) addresses in an organization's network. If a machine uses Internet's set of
protocol (TCP/IP), each machine that can connect to the Internet needs a unique IP
address. When an organization sets up its computer users with a connection to the
Internet, an IP address must be assigned to each machine. Without DHCP, the IP
address must be entered manually at each computer and, if computers move to
another location in another part of the network, a new IP address must be entered.
DHCP lets a network administrator supervise and distribute IP addresses from a
central point and automatically sends a new IP address when a computer is plugged
into a different place in the network.
IP Address Allocation Mechanism
DHCP supports three mechanisms for IP address allocation.
Automatic allocation: DHCP assigns a permanent IP address to a host.
Dynamic allocation: DHCP assigns an IP address to a host for a limited
period of time (or until the host explicitly relinquishes the address).
Manual allocation: Host's IP address is assigned by the network
administrator, and DHCP is used simply to convey the assigned address to
the host. A particular network will use one or more of these mechanisms,
depending on the policies of the network administrator.
Messages Used by DHCP
DHCP Discover - Client broadcast to locate available servers. It is assumed
atleast one of the servers will have resources to fulfill the request.( may
include additional pointers to specific services required eg. particular
subnet, minimum time limit etc ).
DHCP Offer - Server to client in response to DHCP Discover with offer of
configration parameters.
DHCP Request - Client broadcast to servers requesting offered parameters
from one server and implicitly declining offers from all others.( also
important in case of lease renewal if the alloted time is about to expire ).
DHCP Decline - Client to server indicating configration parameters
invalid.
DHCP Release - Client to server relinquishing network address and
cancelling current lease.( in case of a graceful shut down DHCP server is
sent a DHCP Release by the host machine).
DHCP Ack - Server to client with configration parameters, including
committed Network address.
DHCP Nack - Server to client refusing request for configratin parameters
(eg. requested network address already allocated).
Timers Used
Note that lease time is the time specified by the server for which the services have
been provided to the client.
Lease Renewal Timer - When this timer expires machine will ask the
server for more time sending a DHCP Request.
Lease Rebinding Timer - Whenever this timer expires, we have not been
receiving any response from the server and so we can assume the server is
down. Thus send a DHCP Request to all the servers using IP Broadcast
facility. This is only point of difference between Lease renewal and
rebinding.
Lease Expiry Timer - Whenever this timer expires, the system will have to
start crashing as the host does not have a valid IP address in the network.