通过抓包分析,DHCP四个包都为广播包,并且DHCP服务器为了防止地址冲突,在分配给DHCP客户端地址前,还发出arp包,如果是DHCP中继情况,则发出icmp包。
1.DHCP客户端发出DHCP Discover广播包:
二层:源MAC---客户端的mac,目标MAC---FFFF.FFFF.FFFF 三层:源 IP---0.0.0.0, 目标 IP---255.255.255.2552.DHCP收到DHCP Discover广播包,从地址池中选出从低到高选出地址,并发出arp包: 二层:源MAC---DHCP服务的mac,目标MAC---FFFF.FFFF.FFFF3.如果未收到arp的回应包,则准备将这个地址分配给客户端,否则会发出第二个ARP包:4.DHCP客户端继续发出DHCP Discover广播包: 二层:源MAC---客户端的mac,目标MAC---FFFF.FFFF.FFFF 三层:源 IP---0.0.0.0, 目标 IP---255.255.255.2555.DHCP服务器回应DHCP Offer广播包: 二层:源MAC---DHCP服务器的MAC,目标MAC---FFFF.FFFF.FFFF 三层:源 IP---DHCP服务器的IP, 目标 IP---255.255.255.2556.DHCP客户端回应DHCP Request广播包: 二层:源MAC---DHCP客户端的MAC,目标MAC---FFFF.FFFF.FFFF 三层:源 IP---0.0.0.0, 目标 IP---255.255.255.2557.DHCP服务器回应DHCP ACK广播包: 二层:源MAC---DHCP服务器的MAC,目标MAC---FFFF.FFFF.FFFF 三层:源 IP---DHCP服务器的IP, 目标 IP---255.255.255.2558.DHCP客户端收到DHCP ACK广播包,发出无理arp,确认该IP可用,否则会继续DHCP服务器申请IP: 二层:源MAC---DHCP客户端的mac,目标MAC---FFFF.FFFF.FFFF