DHCP Message Types Reference
Quick reference for DHCPv4 and DHCPv6 message types — what each message means, when it appears, and how the two protocols line up.
DHCPv4 Messages
Section titled “DHCPv4 Messages”Message Table
Section titled “Message Table”| Type | Code | Direction | Description |
|---|---|---|---|
| DISCOVER | 1 | Client → Server | Client broadcasts to find available DHCP servers |
| OFFER | 2 | Server → Client | Server offers IP address configuration |
| REQUEST | 3 | Client → Server | Client requests offered configuration |
| DECLINE | 4 | Client → Server | Client indicates the offered address is already in use |
| ACK | 5 | Server → Client | Server confirms configuration |
| NAK | 6 | Server → Client | Server denies the configuration request |
| RELEASE | 7 | Client → Server | Client releases the assigned address |
| INFORM | 8 | Client → Server | Client requests configuration without an IP |
Normal Address Assignment (DORA)
Section titled “Normal Address Assignment (DORA)”ASCII fallback
Client Server | | |-------- DISCOVER ------------>| |<-------- OFFER ---------------| |-------- REQUEST ------------->| |<-------- ACK -----------------|Lease Renewal
Section titled “Lease Renewal”ASCII fallback
Client Server |-------- REQUEST ------------->| |<-------- ACK -----------------|Renewal Failure
Section titled “Renewal Failure”ASCII fallback
Client Server |-------- REQUEST ------------->| |<-------- NAK -----------------| |-------- DISCOVER ------------>| ... (new DORA cycle)Per-Message Notes
Section titled “Per-Message Notes”DISCOVER — source IP 0.0.0.0, destination 255.255.255.255. Usually carries the Parameter Request List (Option 55), Client Identifier (Option 61), and Hostname (Option 12).
OFFER — contains the offered IP address, lease time, server identifier, and the options the client requested.
REQUEST — appears in four flavours: selecting (accepting an offer), renewing (unicast to the assigned server), rebinding (broadcast when renewal fails), and init-reboot (after a host reboot with a remembered lease).
ACK — confirms the configuration with the full set of parameters.
NAK — rejects the request. Common causes: invalid requested address, client on the wrong subnet, administrative policy.
RELEASE — sent when a client shuts down or moves networks.
INFORM — used by hosts with statically assigned addresses that still need configuration parameters (DNS, NTP, etc.).
DHCPv6 Messages
Section titled “DHCPv6 Messages”Message Table
Section titled “Message Table”| Type | Code | Direction | Description |
|---|---|---|---|
| SOLICIT | 1 | Client → Server | Client seeks DHCP servers |
| ADVERTISE | 2 | Server → Client | Server responds to a solicit |
| REQUEST | 3 | Client → Server | Client requests configuration |
| CONFIRM | 4 | Client → Server | Client verifies its address is still valid |
| RENEW | 5 | Client → Server | Client renews addresses |
| REBIND | 6 | Client → Server | Client rebinds addresses when its server is unreachable |
| REPLY | 7 | Server → Client | Server provides configuration |
| RELEASE | 8 | Client → Server | Client releases addresses |
| DECLINE | 9 | Client → Server | Client declines an offered address |
| RECONFIGURE | 10 | Server → Client | Server triggers reconfiguration |
| INFORMATION-REQUEST | 11 | Client → Server | Client requests configuration only |
| RELAY-FORW | 12 | Relay → Server | Relay forwards a client message |
| RELAY-REPL | 13 | Server → Relay | Server replies via the relay |
Normal Address Assignment (SARR)
Section titled “Normal Address Assignment (SARR)”ASCII fallback
Client Server |-------- SOLICIT ------------->| |<-------- ADVERTISE -----------| |-------- REQUEST ------------->| |<-------- REPLY ---------------|Rapid Commit (2-Message Exchange)
Section titled “Rapid Commit (2-Message Exchange)”ASCII fallback
Client Server |-------- SOLICIT ------------->| | (rapid commit) | |<-------- REPLY ---------------|Lease Renewal
Section titled “Lease Renewal”ASCII fallback
Client Server |-------- RENEW --------------->| |<-------- REPLY ---------------|Per-Message Notes
Section titled “Per-Message Notes”SOLICIT — sent to ff02::1:2 (All_DHCP_Relay_Agents_and_Servers). Carries Client DUID (Option 1), IA_NA / IA_TA / IA_PD identity associations, and the Option Request list.
ADVERTISE — the server’s reply with its DUID, available addresses or prefixes, and configuration options.
REQUEST — the client picks a server and includes the chosen server’s DUID.
REPLY — provides the requested configuration.
RENEW vs REBIND:
| Message | When | Destination |
|---|---|---|
| RENEW | Before the T1 timer expires | Unicast to the assigned server |
| REBIND | After T1, before T2 — when RENEW gets no answer | Multicast to all servers |
CONFIRM — sent when a client reconnects to a network and wants to know whether its remembered address is still appropriate.
Relay Messages
Section titled “Relay Messages”DHCPv6 relays don’t translate client messages — they wrap them:
+------------------+| RELAY-FORW || - hop-count || - link-address || - peer-address || +------------+ || | Client Msg | || +------------+ |+------------------+The server unwraps the inner message, processes it, and sends a RELAY-REPL back the same way.
DHCPv4 vs DHCPv6 — Side by Side
Section titled “DHCPv4 vs DHCPv6 — Side by Side”| DHCPv4 | DHCPv6 | Purpose |
|---|---|---|
| DISCOVER | SOLICIT | Find servers |
| OFFER | ADVERTISE | Server’s first response |
| REQUEST | REQUEST | Request configuration |
| ACK | REPLY | Confirm configuration |
| NAK | (Status Code option in REPLY) | Deny request |
| RELEASE | RELEASE | Release addresses |
| DECLINE | DECLINE | Decline an offered address |
| INFORM | INFORMATION-REQUEST | Configuration only, no address |
Filtering by Message Type
Section titled “Filtering by Message Type”In automation rules, DHCP Stream filters, and processor rules, message types are referenced by their textual name.
DHCPv4:
msg_type equals DISCOVERmsg_type in DISCOVER,REQUEST,RENEWDHCPv6:
msg_type equals SOLICITmsg_type in SOLICIT,REQUEST,RENEW,REBINDRelated Topics
Section titled “Related Topics”- DHCP Stream — Real-time monitoring with message-type filters.
- Automation — Filtering by message type in automation rules.
- Glossary — Term definitions.