DHCP
Dynamic Host Configuration Protocol (DHCP) is a network administration protocol that automatically assigns dynamic IP addresses. The intention is to replace the need for manual configuration of static IP addresses across a network.
Contents
Design
A client broadcasts on a network, asking for the primary DHCP server to reply. This is the discovery phase.
The DHCP server (which traditionally listens on port 67) then replies with an IP lease offer, to which the client (which should be listening on port 68) replies with an IP lease request. Finally the server replies with an IP lease acknowledgement, closing the connection.
For large networks (i.e. with multiple subnets), where clients are not necessarily able to broadcast directly to the primary DHCP server, a relay agent (typically one per subnet) may route the broadcast. DHCP servers and relay agents typically communicate both listening on port 67.
Implementations
Servers