DHCPDISCOVER
| UDPSrc=0.0.0.0
sPort=68 Dest=255.255.255.255 dPort=67
| OP
| HTYPE
| HLEN
| HOPS
| 0x01
| 0x01
| 0x06
| 0x00
| XID
| 0x3903F326
| SECS
| FLAGS
| 0x0000
| 0x0000
| CIADDR
| 0x00000000
| YIADDR
| 0x00000000
| SIADDR
| 0x00000000
| GIADDR
| 0x00000000
| CHADDR
| 0x00053C04
| 0x8D590000
| 0x00000000
| 0x00000000
| 192 octets of 0's. BOOTP legacy
| Magic Cookie
| 0x63825363
| DHCP Options
| DHCP option 53: DHCP Discover
| DHCP option 50: 192.168.1.100 requested
| DHCP 发现 (DISCOVER)[编辑]
客户在物理子网上发送广播来寻找可用的服务器。网络管理员可以配置一个本地路由来转发DHCP包给另一个子网上的DHCP服务器。该客户实现生成一个目的地址为255.255.255.255或者一个子网广播地址的UDP包。
客户也可以申请它使用的最后一个IP地址(在下面的例子里为192.168.1.100)。如果该客户所在的网络中此IP仍然可用,服务器就可以准许该申请。否则,就要看该服务器是授权的还是非授权的。 授权服务器会拒绝请求,使得客户立刻申请一个新的IP。非授权服务器仅仅忽略掉请求,导致一个客户端请求的超时,于是客户端就会放弃此请求而去申请一个新的IP地址。
| DHCPOFFER
| UDP Src=192.168.1.1
sPort=67 Dest=255.255.255.255 dPort=68
| OP
| HTYPE
| HLEN
| HOPS
| 0x02
| 0x01
| 0x06
| 0x00
| XID
| 0x3903F326
| SECS
| FLAGS
| 0x0000
| 0x0000
| CIADDR
| 0x00000000
| YIADDR
| 0xC0A80164
| SIADDR
| 0x00000000
| GIADDR
| 0x00000000
| CHADDR
| 0x00053C04
| 0x8D590000
| 0x00000000
| 0x00000000
| 192 octets of 0's. BOOTP legacy
| Magic Cookie
| 0x63825363
| DHCP Options
| DHCP option 53: DHCP Offer
| DHCP option 1: 255.255.255.0 subnet mask
| DHCP option 3: 192.168.1.1 router
| DHCP option 51: 1 day IP lease time
| DHCP option 54: 192.168.1.1 DHCP server
| DHCP提供 (OFFER)[编辑]
当DHCP服务器收到一个来自客户的IP租约请求时,它会提供一个IP租约。DHCP为客户保留一个IP地址,然后通过网络广播一个DHCPOFFER消息给客户。该消息包含客户的MAC地址、服务器提供的IP地址、子网掩码、租期以及提供IP的DHCP服务器的IP。
服务器基于在CHADDR字段指定的客户硬件地址来检查配置。这里的服务器,192.168.1.1,将IP地址指定于YIADDR字段。
| DHCPREQUEST
| UDP Src=0.0.0.0
sPort=68 Dest=255.255.255.255 dPort=67
| OP
| HTYPE
| HLEN
| HOPS
| 0x01
| 0x01
| 0x06
| 0x00
| XID
| 0x3903F326
| SECS
| FLAGS
| 0x0000
| 0x0000
| CIADDR
| 0x00000000
| YIADDR
| 0x00000000
| SIADDR
| 0x00000000
| GIADDR
| 0x00000000
| CHADDR
| 0x00053C04
| 0x8D590000
| 0x00000000
| 0x00000000
| 192 octets of 0's. BOOTP legacy
| Magic Cookie
| 0x63825363
| DHCP Options
| DHCP option 53: DHCP Request
| DHCP option 50: 192.168.1.100 requested
| DHCP option 54: 192.168.1.1 DHCP server.
| DHCP请求 (REQUEST)[编辑]
当客户PC收到一个IP租约提供时,它必须告诉所有其他的DHCP服务器它已经接受了一个租约提供。因此,该客户会发送一个DHCPREQUEST消息,其中包含提供租约的服务器的IP。当其他DHCP服务器收到了该消息后,它们会收回所有可能已提供给客户的租约。然后它们把曾经给客户保留的那个地址重新放回到可用地址池中,这样,它们就可以为其他计算机分配这个地址。任意数量的DHCP服务器都可以响应同一个IP租约请求,但是每一个客户网卡只能接受一个租约提供。
|