这里也可以看出来基于全局配置方式对比与基于接口要繁琐一点点。
开启抓包
改成自动获取
四个包,这个就是我们基础里面介绍到的。
(3)回顾DHCP流程
客户端默认情况下没有地址,二层、三层都以广播形式(二层源是自己的MAC,三层由于没有地址为0.0.0.0,四层UDP源是68、目的端口号是67),相当于就是在一个广播域内寻找DHCP服务器,客户端默认只有MAC地址信息,没有IP,想请求对应的信息,以option 55列出来(请求列表,通常是请求掩码、网关、DNS等等)
服务器以客户端支持的形式进行回应(在之前客户端flag写了支持单播),这里以单播的形式回应,所以会发现三层的目的地址回应里面不在是0.0.0.0了,0.0.0.0不是一个有效的单播,服务器只能以分配给客户端的IP作为目的地址进行回应,支持单播形式的客户端是可以处理这种报文的(虽然目前它没有地址),然后回应信息里面还包含了分配给客户端的IP,以及服务器所支持的信息,其实就是我们配置的,比如掩码、网关、DNS,其余没有配置在内的,虽然客户端请求了,但是服务器没有配置,自然就不会响应,另外一个就是时间,默认情况下、华为、思科、华三的设备租期是一天,也就是这个地址你获取后,可以使用一天,在50%、85%的时候都可以进行续约,来继续使用该地址。
客户端请求服务器支持的参数,包括地址信息,另外还包含了服务器的地址,这是因为如果网络中存在多个服务器,而目前的Request报文又是以广播形式方式的,客户端需要明确告诉是请求哪台服务器的,否则会出现错误的分配。
DHCP ACK:告诉客户端,你租用成功了
服务器最终会回应ACK,告诉客户端,这个地址以及参数你现在可以使用了,并且包含使用的时间跟续期时间,以及服务器的地址标识。
最终PC4获取到了自己的地址
实际中通过ipconfig /all,能看到的信息更多
(4)其他细节补充