DHCP - Message Types

DHCP is an intricate and complex protocol with a multitude of options and capabilities. Other than the fundamental DORA process, DHCP is able to deliver many more capabilities. In order to do so, it uses various message types to communicate between DHCP server and client.

There are eight core DHCP message types and ten secondary message types, all of which are briefly described below:

Core DHCP message types

These core message types facilitate communication between the DHCP client and the DHCP server during the process of obtaining and managing IP address leases. The eight DHCP message types are:

  1. DHCPDISCOVER: Used by clients to initiate conversations with DHCP servers, broadcasting to find available servers. This message can be sent as a limited broadcast using the 255.255.255.255 address or as a directed broadcast. Since neither the MAC address nor the IP address of the DHCP server is known, this MUST be a broadcast.
  2. DHCPOFFER: Sent by DHCP servers in response to DHCPDISCOVER messages, offering IP address leases to clients. The offer can be sent either as a Layer 2 unicast or broadcast, since the MAC address of the originating client is known.
  3. DHCPREQUEST: Sent by clients to request or confirm the offer of an IP address from a specific server and to confirm an existing lease. This is always sent as a broadcast.
  4. DHCPACK: Sent by servers to acknowledge the DHCPREQUEST and to finalize the lease of an IP address to a client. Again, this may be sent as a broadcast or unicast, depending upon the capabilities of the client.
  5. DHCPNAK (Negative Acknowledgement): Sent by servers to indicate that a DHCPREQUEST is incorrect or invalid, typically due to a change in network conditions or if the client's lease has expired.
  6. DHCPRELEASE: Sent by clients to release an IP address lease, ending the DHCP lease agreement.
  7. DHCPINFORM: Sent by clients to obtain network configuration information, without needing to lease a new IP address.
  8. DHCPDECLINE: Sent by clients to indicate that the offered IP address is already in use on the network.

These message types allow for the dynamic allocation, management, and release of IPv4 or IPv6 addresses and associated configuration details in a network.

Secondary DHCP message types

The following secondary DHCP message types are specialized DHCP messages used for lease management, querying lease information, bulk data transfer, and secure communication in complex network environments. These message types are typically used in more complex DHCP setups or specialized scenarios, often involving network management, troubleshooting, and data synchronization across DHCP servers.

  1. DHCPFORCERENEW: This message is used by a DHCP server to force a client to renew its IP address lease. This is particularly useful for network reconfigurations.
  2. DHCPLEASEQUERY: This message type allows a DHCP server to provide information about active leases to other entities, typically in scenarios where IP address conflict resolution is needed.
  3. DHCPLEASEUNASSIGNED: This message type is used in the lease query process. It indicates that the IP address in question is known to the server but is not currently assigned to any client.
  4. DHCPLEASEUNKNOWN: This message indicates that the DHCP server has no knowledge of the IP address included in a DHCPLEASEQUERY message. It's part of the lease query mechanism.
  5. DHCPLEASEACTIVE: In response to a DHCPLEASEQUERY, this message indicates that the IP address is currently active and provides information about the lease.
  6. DHCPBULKLEASEQUERY: This is a type of DHCP message used for bulk data transfer. It's used in situations where a large amount of lease information needs to be transferred or queried.
  7. DHCPLEASEQUERYDONE: This message type signifies the completion of a series of DHCPLEASEQUERY messages, indicating that all relevant lease information has been transmitted.
  8. DHCPACTIVELEASEQUERY: Similar to DHCPLEASEQUERY, this message type is used to inquire about active leases, but it may have specific usage contexts or additional features.
  9. DHCPLEASEQUERYSTATUS: This message provides status information about a DHCPLEASEQUERY process, including any errors or issues encountered during the lease query operation.
  10. DHCPTLS: This message type might refer to a DHCP message that involves TLS (Transport Layer Security) for secure communication. The exact usage and specifications depend on the context and implementation.

Links:

https://forum.networklessons.com/t/introduction-to-dhcp/970/68?u=lagapidis

https://forum.networklessons.com/t/introduction-to-dhcp/970/70?u=lagapidis

https://networklessons.com/cisco/ccie-routing-switching/introduction-to-dhcp

https://datatracker.ietf.org/doc/html/rfc2132#section-9.6

https://datatracker.ietf.org/doc/html/rfc3203#section-4

https://datatracker.ietf.org/doc/html/rfc4388#section-6.1

https://datatracker.ietf.org/doc/html/rfc6926#section-6.2.1

https://datatracker.ietf.org/doc/html/rfc7724#section-5.2.1

https://en.wikipedia.org/wiki/Dynamic_Host_Configuration_Protocol#DHCP_message_types