networking

Stands for: Discover, Offer, Request, Acknowledgement

Shorthand for the four messages of a first DHCP lease: DHCPDISCOVER, DHCPOFFER, DHCPREQUEST and DHCPACK.

The word comes from Microsoft's DHCP troubleshooting guides; RFC 2131 only names the messages. A diagnosis starts with it: capture on the client and check that all four arrive, because the server commits the address only when it sends the DHCPACK.

The client broadcasts DHCPDISCOVER from source address 0 to 255.255.255.255 and UDP port 67. Each server may answer with a DHCPOFFER carrying an address in yiaddr; the choice among offers is left to the implementation, and ISC dhclient takes the first. The client then broadcasts a DHCPREQUEST naming the chosen server in the server identifier option and the offered address in the requested IP address option, which implicitly declines the other offers. That server commits the binding and answers DHCPACK with the lease time.

Option 53 tells the four apart, with values 1, 2, 3 and 5, and one transaction ID runs through them: the offer copies it from the discover and the request repeats it. Microsoft calls the exchange broadcast-based, but RFC 2131 broadcasts the offer and the acknowledgement only when the client sets the broadcast bit; otherwise the server unicasts them to the client's hardware address and the offered address.

Not every DHCPREQUEST is part of it: the same message confirms an address after a reboot and, at T1, half the lease by default, renews it by unicast to the server. A server that cannot satisfy a request answers DHCPNAK and the client starts again. In Wireshark the display filter dhcp shows the exchange, and dhcp.id with the transaction ID isolates one client.

Also known as: dora process, dhcp dora, discover offer request acknowledge

← All glossary entries