DHCP (Dynamic Host Configuration Protocol) is a communications protocol that network administrators use to centrally manage and automate the network configuration of devices attaching to an Internet Protocol (IP) network.
DHCP allows devices needing an IP address to request one when they are starting up, for example, rather than an address preassigned and manually configured on each device. With DHCP, if a device is moved from place to place, it will be assigned a new address in each location. Without DHCP, network administrators must not only manually configure each device with a valid IP address, but also reconfigure the device with a new IP address if it moves to a new location on the network. DHCP exists for both IPv4 and IPv6 (Internet Protocol version 6).
Devices reach out to the local network to discover any available DHCP server and request network configuration information. Servers manage pools of valid addresses and assign addresses out of those pools. DHCP uses the concept of leasing the amount of time a given IP address will be valid for a device. The lease time can vary depending on how long a user is likely to require the Internet connection at a particular location. Devices release addresses when their leases expire and request a renewal from the DHCP server if they are staying online. The DHCP server may assign them a new address rather than renewing an old one. The protocol also supports static addresses for computers like Web servers that need a permanent IP address.
Although DHCP is generally considered an addressing automation protocol, network administrators can use it to push out other network configuration information as well. For example, DHCP can push out a DNS (domain name system) server address, network time server address, host name for the device receiving configuration, a domain name, or a default gateway address.
DHCP is an extension of an earlier network IP management protocol, Bootstrap Protocol (BOOTP). DHCP is more advanced, and DHCP servers can handle BOOTP client requests if any BOOTP clients remain on a network segment.
DHCP is not a routable protocol; it is limited to a specific local area network (LAN). If network administrators want a given DHCP server to provide addressing to multiple subnets on a given network, they must configure DHCP relay services on the routers DHCP requests have to cross.
DHCP is not a secure protocol, as no mechanism is built in to allow clients and servers to authenticate each other. Both are vulnerable to deception (e.g., one computer can pretend to be another) and to attack (rogue clients can exhaust a server’s address pool).