Notes on DHCP ARP

RFC 2131 (the DHCP specification) defined a special type of ARP request that could be used to probe the network whenever an IP address had been assigned from DHCP, in case another device on the network was already using that IP address. This is an important service, since DHCP allows multiple devices to share an IP address, although those devices are not supposed to use the same IP address at the same time. In order to keep problems to a minimum, the use of the DHCP ARP probe allows a device to verify that no other devices are using the IP address before this device starts to do so.

The DHCP ARP packet looks like a regular ARP request packet, except that the Source Protocol Address field of the request is set to 0.0.0.0. This is done to prevent the ARP caches on other devices from being updated with any new information, since that only happens when the Source Protocol Address field contains an IP address that is already in the cache. If the DHCP client issued a regular ARP request (or a Gratuitous ARP request) for the assigned IP address using that same address in the Source Protocol Address field, then the other network devices would update their ARP caches to show the sender’s hardware address, which would cause problems if another device on the network was still using that IP address (whether or not such usage was legitimate).

Figure 3.20 shows the host Fungi issuing a DHCP ARP request to the network for the IP address of 192.168.20.60 (which is the IP address ...

Get Internet Core Protocols: The Definitive Guide now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.