Wireshark实战分析之DHCP协议(二)

(1)DHCP报文格式

    Wireshark实战分析之DHCP协议(二)_第1张图片

      上图是DHCP的报文格式,我们接下来做详细分析

      op:  报文的操作类型。分为请求报文和响应报文。1:为请求报文,2为响应报文

      htype:  DHCP客户端的硬件地址类型。1代表以太网

      hlen: DHCP客户端的硬件地址长度。Ethernet为6

      hops: DHCP报文经过的DHCP中继的数目,默认为0.报文每次经过一个DHCP中继,该字段就会加1

      xid:  客户端发起一次请求的随机数。

      secs: DHCP客户端开始DHCP请求后所经过的时间。目前尚未使用,固定为0

      flags: DHCP服务器响应报文是采用单播还是广播方式发送。只使用第0比特位。0表示单播,1表示广播。其余比特为保留

      ciaddr: DHCP客户端的IP地址

      yiaddr: DHCP服务端分配给客户端的IP地址

     siaddr: DHCP服务端的IP地址

     giaddr: DHCP客户端发出请求报文后经过的第一个DHCP中继的IP地址,也就是网管IP地址

     chaddr: DHCP客户端的硬件地址,也就是MAC地址

     sname: 服务器的名称

     file: DHCP服务器为DHCP客户端指定的启动配置文件名称及路径信息

     options: 可选变长选项字段,包含报文的类型,有效租期,DNS服务器的IP地址等

(2)捕获DHCP报文数据

     因为DHCP只有当主机的IP地址过期或者重新启动系统时,才会重新获取IP地址。所以想要捕获DHCP数据报文,就必须重启网卡的方法来获取DHCP报文

    在运行中执行如下命令,即可释放当前的信息

   

    执行以上命令后,就可以释放当前使用的地址信息

    重新获取地址信息,执行如下命令:

   

   当然执行以上操作时,首先记得打开Wireshark过滤数据功能

   Wireshark实战分析之DHCP协议(二)_第2张图片

(3)分析DHCP发现数据包,对应的是94帧,可以明显的看到Info信息中显示的是: DHCP Discover

    Wireshark实战分析之DHCP协议(二)_第3张图片

     从以上的图中可以看到,客户端目前是没有IP地址的,发现阶段是以广播包的形式发送的。也就是网络上的DHCP服务器都是可以收到此数据包的。

     大家可能对后面的Option字段的值不是很明白,接下来看看option字段的值

      Wireshark实战分析之DHCP协议(二)_第4张图片

(4)分析DHCP提供阶段数据,对应的是99帧。

    Wireshark实战分析之DHCP协议(二)_第5张图片

     在发现阶段分析了Option的详细请求信息,那当然在提供阶段就需要分析对应的服务器分配给DHCP客户端的配置信息

    Wireshark实战分析之DHCP协议(二)_第6张图片

    这时候DHCP客户端已经收到DHCP服务器的数据包了,当然如果有多台DHCP服务器,就必须回复DHCP服务器确认用那台DHCP服务器。

(5)分析DHCP的选择阶段,DHCP服务器需要对提供的给自己IP的DHCP服务器做出相应的响应,对应的数据帧是100帧

Wireshark实战分析之DHCP协议(二)_第7张图片

(6)DHCP确认阶段(对应的是分析101帧)

   Wireshark实战分析之DHCP协议(二)_第8张图片

      从上图可以看出服务器分配客户端的IP地址为192.168.1.100. 关于服务器分配给客户端的IP的详细信息,需要详细分析option字段

     Wireshark实战分析之DHCP协议(二)_第9张图片


  以上就是DHCP的四个阶段

 

   

 

你可能感兴趣的:(Wireshark实战分析)