Q1.DHCP 消息是通过TCP 还是UDP 发送的?
答:UDP。
Q2.请记录前四个DHCP包Discover/Offer/Request/ACK由客户端发送出去的时间。对每一个包,指出源与目标端口号,端口号与上述实验例子中给出的67,68 端口一致么?
答:
发送出去的时间源端口号目标端口号Discover16.971643 68 67
Offer16.972000 67 68
Request16.972233 68 67
ACK18.048123 67 68
上述实验例子中给出的67,68 端口一致
Q3.你主机的链路层(以太网)地址是什么?
答:由Q1截图可知:00:09:73:60:02:44。
Q4. Discover与Request 包之间依靠什么值的不同来加以区分?
答:通过对比两个包的DHCP协议部分,发现Discover包有Option 116:DHCP
Auto-Configuration,Request包有Option 54:Server identifier和Option 81:FQDN。
Q5.Transaction-Id 的值在这前四个DHCP 消息中是多少?在第二组Request/ACK DHCP
消息中又是多少?这个字段的目的是什么?
答:前四个都是0x951b8338,第二组Request/ACK DHCP消息中是0x0b284d96。
这个字段的目的是为了区分每组DHCP 的数据。
Q6. 一个主机通过DHCP 来获取IP 地址,但这个地址直到四条消息交换的最后才被确定。既然在此之前IP 地址都没有被设置,那么在获得IP 租用前,客户端IP 数据包使用的是什么值?在这四条消息中对每一个封装的IP 数据包指出它的源和目标IP 地址。
源IP 地址目标IP 地址
Discover0.0.0.0 255.255.255.255
Offer192.168.0.1 255.255.255.255
Request0.0.0.0 255.255.255.255
ACK192.168.0.1 255.255.255.255
Q7.你的DHCP 服务器的IP 地址是什么?
答:192.168.0.1
Q8.在DHCP Offer消息中如何看出DHCP服务器的IP地址?指出哪个DHCP消息包含了提供给你的IP 地址。
答:Option 54:Server Identifier看到DHCP服务器的IP地址,Your(client)IP address可以看到提供给你的IP 地址。
Q9.在上面的例图中主机和DHCP服务器之间不存在一个中继代理。这是由哪个值表现出来的?在你的实验中是否有中继代理?
答:没有中继代理,因为DHCP服务器和发送Offer包的IP地址一样。
Q10.说明DHCP Offer消息中的网关和掩码条目的作用。
答:供DHCP客户在最后收到ACK后启用IP配置时设置掩码和网关。
Q11.主机在DHCP Request消息里请求被提供一个IP地址,你获得了什么地址?
答:192.168.0.7
Q12.说明租用时间的作用。在你的实验中租用时间是多少?
答:租用期是DHCP得到的IP的有效使用期,当有效期过后,DHCP服务器回收该IP地址,有利于IP地址的充分利用。租用时间从ACK包中Option 51:IP Address Lease Time获得(关于租用时间为何显示如图,据说是因为sygate代理没设置好引起的)。
Q13.DHCP Release消息的作用是什么?DHCP服务器是否对收到的客户DHCP Release请求给出一个确认?如果客户的DHCP Release消息丢失会如何?
答:为了释放租用的IP地址;没有;服务器会在其租用时间超出后将其IP停用。
Q14.在你的Ethereal 窗口中删除“bootp”过滤字。在DHCP 包交换的过程中是否有收发ARP 包?如果有,解释这些ARP 包的用途。
答:有,通过广播查询IP是否冲突。
参考数据:bootp-1