DHCP报文精细分析加上wireshark抓包.docx
- 文档编号:23664710
- 上传时间:2023-05-19
- 格式:DOCX
- 页数:12
- 大小:586.38KB
DHCP报文精细分析加上wireshark抓包.docx
《DHCP报文精细分析加上wireshark抓包.docx》由会员分享,可在线阅读,更多相关《DHCP报文精细分析加上wireshark抓包.docx(12页珍藏版)》请在冰豆网上搜索。
DHCP报文精细分析加上wireshark抓包
DHCP的过程需要有个服务器,所以我装了一个windowsserver2003虚拟机,这样XP和板子就可以自动获取到IP地址了。
在windows下面,开始抓报文时,首先打开wireshark,然后在cmd中执行ipconfig/release命令的作用是用来释放IP,如果这个命令执行失败,需要在网络连接中将本地连接设成自动获取。
在释放Ip后执行的更新IP命令ipconfig/renew将发起一个DHCP过程,分析从这里开始。
现在,客户机没有地址,它就会发出一个DHCPDiscover报文,该报文是广播报文,所有的具有DHCPServer功能的服务器都会收到该报文。
dhcp有8种类型的报文,每种报文的格式相同,只是报文中的某些字段取值不同。
dhcp报文格式基于bootp(引导程序协议)的报文格式
1、Bootrecordtype为1时表示是Client的请求,为2时表示是Server的应答。
2、HardwareaddresstypeClient的网络硬件地址类型,1表示Client的网络硬件是10MB的以太网类型
3、HardwareaddresslengthClient的网络硬件地址长度,6表示Client的网络硬件地址长度是6bytes(即以太网类型的6bytes的MAC地址)。
MAC地址,也叫硬件地址,是由48比特/bit长(6字节/byte,1byte=8bits),16进制的数字组成.0-23位叫做组织唯一标志符(organizationallyunique,是识别LAN(局域网)节点的标识。
24-47位是由厂家自己分配.其中第40位是组播地址标志位
4、HOPS跳数,即经过的中继数,表示当前的DHCP报文经过的DHCPRELAY(中级)的数目,每经过一个DHCP中继,此字段就会加1,此字段的作用是限制DHCP报文不要经过太多的DHCPRELAY,协议规定,当“hops”大于4(现在也有规定为16)时,这个DHCP报文就不能再进行处理,而是丢弃。
5、Transactionid事务ID,Client每次发送DHCP请求报文时选择的随机数,用来匹配server的响应报文是对哪个请求报文的响应。
Client会丢弃“ID”不匹配的响应报文。
可以总结一下:
第一个报文Relase的TransactionID:
0x50488e40
第二个报文discover的TransactionID:
0x71936d7d
第三个报文offer的TransactionID:
0x71936d7d
第四个报文Requst的TransactionID:
0x71936d7d
第五个报文ack的TransactionID:
0x71936d7d
.[træn'zækʃən处理,办理,执行
6、Elapsedboottime秒数,用来表示client开始DHCP请求后的时间流逝秒数
D.J.[i'læps](时间)消逝,过去elapsed–经过
7、flags标志,在BOOTP中此字段是保留不用的,在DHCP协议中也只使用了其左边的最高位。
8、Clientself-assignedIPaddress客户机IP地址
9、ClientIPaddressserver分配给client的IP地址
10、NextServertouseinbootstrap服务器IP地址
11、RelayAgentDHCP中继代理IP地址
12、Clienthardwareaddress客户机硬件地址MAC
13、Clienthardwareaddresspadding客户机硬件MAC填充地址
14、Hostname服务器的主机名
15、BootfilenameClient的启动配置文件名
16、Magiccookie是魔术使用cookie是服务器可以知道该用户是否合法用户以及是否需要重新登录
17、
Dhcpmessagetypecode=53,length=1,value=1-8,此字段表示DHCP报文类型
18、
DHCPsever的报文的类型
19、
客户端的报文的类型
完整的DHCP请求过程:
客户端释放PC的IP地址ipconfigrelease
1、DHCPRelease报文
2、客户端广播发送DHCPdiscover报文,请求申请IP地址
下面的这是UDP的这上的DHCP,客户端发启的bootpc端口是68,目标端口是67
3、所有被广播到的服务器收到DHCPDISCOVER报文后都会发送DHCPoffer报文,向客户机提供IP地址供其选择(cisco用单播来实现)Tp-link使用的是组播实现
4、客户机收到服务器提供的IP地址后会从中选择一个,然后广播发送DHCPrequest报文,告诉服务器选择了IP地址,并拒绝其他服务器的IP地址。
客户端还没有IP地址用广播
5、服务器收到DHCPREQUEST确认数据报之后也会回答客户机,即发送DHCPACK报文。
没有被选中的服务器就将自己提供的IP地址收回。
cisco用得也是广播
DHCP客户端发起的就UDP68端口,而DHCPserver发起的是67的端口。
1客户端发出的IP租用请求报文:
dhcpdiscover:
此为client开始DHCP过程中的第一个请求报文
DHCP客户机初如化TCP/IP,通过UDP端口68向网络中发送一个DHCPDISCOVER,请求租用IP地址。
该广播包中的源IP地址为0.0.0.0,目标IP地址为255.255.255.255;包中还包含客户机的MAC地址和计算机名。
2DHCP回应的IP租用提供报文:
dhcpoffer :
此为server对dhcpdiscover报文的响应报文
任何接收到DHCPDISCOVER广播包并且能够提供IP地址的DHCP服务器,都会通过UDP67给客户机回应一个DHCPOFFER广播包,提供一个IP地址。
该广播包的源IP地址为DHCP服务器IP,目标IP地址为255.255.255.255;包中还包含提供的IP地址、子网掩码,网关,DNS及租期等信息。
3客户选择IP租用报文:
dhcprequst :
此为client对dhcpoffer报文的响应
客户机从不止一台DHCP服务器接收到提供之后,会选择第一个收到的DHCPOFFER包,并向网络中广播一个DHCPREQUEST消息包,表明自己已经接受了一个DHCP服务器提供的IP地址。
该广播包中包含所接爱的IP地址和服务器的IP地址。
所有其他的DHCP服务器撤消它们的提供以便将IP地址提供下一次IP租用请求。
4DHCP服务器发出IP租用确认报文:
dhcpack :
server对dhcprequst报文的响应,client收到此报文后才真正获得了IP地址和相关配置信息。
被客户机选择的DHCP服务器在收到DHCPREQUEST广播后,会广播返回给客户机一个DHCPACK消息包,表明已经接受客户机的选择,并将这一IP地址的合法租用以及其他的配置信息都放入该广播包发给客户机。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- DHCP 报文 精细 分析 加上 wireshark