DHCP Offer
In
the IP section of the following capture excerpt, the source address is
now the DHCP server IP address, and the destination address is the
broadcast address 255.255.255.255. The DHCP section identifies the
packet as an offer. The DHCP: Your IP Address (Yiaddr) field contains
the IP address the server is offering to the client. Note that the DHCP:
Client Ethernet Address (Chaddr) field still contains the physical
address of the requesting client. Also, the DHCP Option Field section
shows the various options being sent by the server along with the IP
address. In this case, the server is sending the subnet mask, default
gateway (router), lease time, WINS server address (NetBIOS Name
Service), and the NetBIOS node type.
IP: ID = 0x3C30; Proto = UDP; Len: 328
IP: Version = 4 (0x4)
IP: Header Length = 20 (0x14)
IP: Service Type = 0 (0x0)
IP: Precedence = Routine
IP: ...0.... = Normal Delay
IP: ....0... = Normal Throughput
IP: .....0.. = Normal Reliability
IP: Total Length = 328 (0x148)
IP: Identification = 15408 (0x3C30)
IP: Flags Summary = 0 (0x0)
IP: .......0 = Last fragment in datagram
IP: ......0. = May fragment datagram if necessary
IP: Fragment Offset = 0 (0x0) bytes
IP: Time to Live = 128 (0x80)
IP: Protocol = UDP - User Datagram
IP: Checksum = 0x2FA8
IP: Source Address = 10.54.48.151
IP: Destination Address = 255.255.255.255
IP: Data: Number of data bytes remaining = 308 (0x0134)
DHCP: Offer (xid=21274A1D)
DHCP: Op Code (op) = 2 (0x2)
DHCP: Hardware Type (htype) = 1 (0x1) 10Mb Ethernet
DHCP: Hardware Address Length (hlen) = 6 (0x6)
DHCP: Hops (hops) = 0 (0x0)
DHCP: Transaction ID (xid) = 556223005 (0x21274A1D)
DHCP: Seconds (secs) = 0 (0x0)
DHCP: Flags (flags) = 0 (0x0)
DHCP: 0................ = No Broadcast
DHCP: Client IP Address (ciaddr) = 0.0.0.0
DHCP: Your IP Address (yiaddr) = 10.54.50.5
DHCP: Server IP Address (siaddr) = 0.0.0.0
DHCP: Relay IP Address (giaddr) = 0.0.0.0
DHCP: Client Ethernet Address (chaddr) = 08002B2ED85E
DHCP: Server Host Name (sname) = <Blank>
DHCP: Boot File Name (file) = <Blank>
DHCP: Magic Cookie = [OK]
DHCP: Option Field (options)
DHCP: DHCP Message Type = DHCP Offer
DHCP: Subnet Mask = 255.255.240.0
DHCP: Renewal Time Value (T1) = 8 Days, 0:00:00
DHCP: Rebinding Time Value (T2) = 14 Days, 0:00:00
DHCP: IP Address Lease Time = 16 Days, 0:00:00
DHCP: Server Identifier = 10.54.48.151
DHCP: Router = 10.54.48.1
DHCP: NetBIOS Name Service = 10.54.16.154
DHCP: NetBIOS Node Type = (Length: 1) 04
DHCP: End of this option field
DHCP Request
The client responds to the
DHCP Offer packet by sending a DHCP Request message. In the IP section
of the following capture, the source address of the client is still
0.0.0.0 and the destination for the packet is still 255.255.255.255. The
client retains 0.0.0.0 because the client hasn’t received approval from
the server to start using the address offered. The destination is still
broadcast because more than one DHCP server might have responded and
might be holding a reservation for an offer made to the client.
Broadcasting one particular requested address lets those
other DHCP servers know that they can release their offered addresses
and return them to their available pools. The DHCP section identifies
the packet as a request and verifies the offered address by using the
DHCP: Requested Address field. The DHCP: Server Identifier field in the
DHCP: Option Field section shows the IP address of the DHCP server
offering the lease.
IP: ID = 0x100; Proto = UDP; Len: 328
IP: Version = 4 (0x4)
IP: Header Length = 20 (0x14)
IP: Service Type = 0 (0x0)
IP: Precedence = Routine
IP: ...0.... = Normal Delay
IP: ....0... = Normal Throughput
IP: .....0.. = Normal Reliability
IP: Total Length = 328 (0x148)
IP: Identification = 256 (0x100)
IP: Flags Summary = 0 (0x0)
IP: .......0 = Last fragment in datagram
IP: ......0. = May fragment datagram if necessary
IP: Fragment Offset = 0 (0x0) bytes
IP: Time to Live = 128 (0x80)
IP: Protocol = UDP - User Datagram
IP: Checksum = 0x38A6
IP: Source Address = 0.0.0.0
IP: Destination Address = 255.255.255.255
IP: Data: Number of data bytes remaining = 308 (0x0134)
DHCP: Request (xid=21274A1D)
DHCP: Op Code (op) = 1 (0x1)
DHCP: Hardware Type (htype) = 1 (0x1) 10Mb Ethernet
DHCP: Hardware Address Length (hlen) = 6 (0x6)
DHCP: Hops (hops) = 0 (0x0)
DHCP: Transaction ID (xid) = 556223005 (0x21274A1D)
DHCP: Seconds (secs) = 0 (0x0)
DHCP: Flags (flags) = 0 (0x0)
DHCP: 0............... = No Broadcast
DHCP: Client IP Address (ciaddr) = 0.0.0.0
DHCP: Your IP Address (yiaddr) = 0.0.0.0
DHCP: Server IP Address (siaddr) = 0.0.0.0
DHCP: Relay IP Address (giaddr) = 0.0.0.0
DHCP: Client Ethernet Address (chaddr) = 08002B2ED85E
DHCP: Server Host Name (sname) = <Blank>
DHCP: Boot File Name (file) = <Blank>
DHCP: Magic Cookie = [OK]
DHCP: Option Field (options)
DHCP: DHCP Message Type = DHCP Request
DHCP: Client Identifier = (Type: 1) 08 00 2b 2e d8 5e
DHCP: Requested Address = 10.54.50.5
DHCP: Server Identifier = 10.54.48.151
DHCP: Host Name = CLIENT1
DHCP: Dynamic DNS updates = (Length: 26) 00 00 00 63 6f 6d ...
DHCP: Client Class information = (Length: 8) 4d 53 46 54 20 35 2e 30
DHCP: Parameter Request List = (Length: 7) 01 0f 03 2c 2e 2f 06
DHCP: End of this option field
If the client has
previously had a DHCP-assigned IP address, and the client is restarted,
the client specifically requests this previously leased IP address in
the DHCP Request packet. Microsoft clients populate DHCP Option Field
DHCP: Requested Address with the previously assigned address. Strictly
RFC-compliant clients populate the DHCP: Client IP Address (Ciaddr)
field with the address requested. The DHCP server accepts either. If the
server determines that the client can still use the address, it either
remains silent or sends an ACK of the DHCP Request message. If the
server determines that the client cannot have the address, it sends a
NACK.
Tip
The DHCP
Request message is the message
that requests dynamic updates from the DHCP server. Typically, the
Request message supplies the fully qualified domain name (FQDN) of the
client so that the DHCP server can then update the client’s PTR resource
record accordingly. One way to remember this point is to think of the
setting in the DHCP server properties dialog box: Update According To
Client Request. Well, here is the “Request.” |