When you boot up your controller, the DHCP client is invoked and requests configuration
information from a DHCP server when the configuration file is not present on the controller. If
the configuration file is present and the configuration includes the ip address
dhcp interface configuration command on specific routed interfaces, the
DHCP client is invoked and requests the IP address information for those interfaces.
This is the sequence of messages that are exchanged between the DHCP client and the DHCP server.
Figure 1. DHCP Client and Server Message Exchange
The client, Controller A, broadcasts a DHCPDISCOVER message to locate a DHCP server. The DHCP server offers configuration parameters (such as an IP address, subnet mask, gateway IP address, DNS IP address, a lease for the IP address, and so forth) to the client in a DHCPOFFER unicast message.
In a DHCPREQUEST broadcast message, the client returns a formal request for the offered configuration information to the DHCP server. The formal request is broadcast so that all other DHCP servers that received the DHCPDISCOVER broadcast message from the client can reclaim the IP addresses that they offered to the client.
The DHCP server confirms that the IP address has been allocated to the client by returning a DHCPACK unicast message to the client. With this message, the client and server are bound, and the client uses configuration information received from the server. The amount of information the controller receives depends on how you configure the DHCP server.
If the configuration parameters sent to the client in the DHCPOFFER unicast message are invalid (a configuration error exists), the client returns a DHCPDECLINE broadcast message to the DHCP server.
The DHCP server sends the client a DHCPNAK denial broadcast message, which means that the offered configuration parameters have not been assigned, that an error has occurred during the negotiation of the parameters, or that the client has been slow in responding to the DHCPOFFER message (the DHCP server assigned the parameters to another client).
A DHCP client might receive offers from multiple DHCP or BOOTP servers and can accept any of the offers; however, the client usually accepts the first offer it receives. The offer from the DHCP server is not a guarantee that the IP address is allocated to the client; however, the server usually reserves the address until the client has had a chance to formally request the address. If the controller accepts replies from a BOOTP server and configures itself, the controller broadcasts, instead of unicasts, TFTP requests to obtain the controller configuration file.
The DHCP hostname option allows a group of controllers to obtain hostnames and a standard configuration from the central management DHCP server. A client (controller) includes in its DCHPDISCOVER message an option 12 field used to request a hostname and other configuration parameters from the DHCP server. The configuration files on all clients are identical except for their DHCP-obtained hostnames.
If a client has a default hostname (the hostname
name global configuration command is not configured or the
no hostname global configuration command is entered to
remove the hostname), the DHCP hostname option is not included in the packet when you enter
the ip address dhcp interface configuration command. In this
case, if the client receives the DCHP hostname option from the DHCP interaction while
acquiring an IP address for an interface, the client accepts the DHCP hostname option and
sets the flag to show that the system now has a hostname configured.