protocol_analysis(协议分析)

上传人:飞****9 文档编号:129562543 上传时间:2020-04-23 格式:DOC 页数:23 大小:493.50KB
返回 下载 相关 举报
protocol_analysis(协议分析)_第1页
第1页 / 共23页
protocol_analysis(协议分析)_第2页
第2页 / 共23页
protocol_analysis(协议分析)_第3页
第3页 / 共23页
protocol_analysis(协议分析)_第4页
第4页 / 共23页
protocol_analysis(协议分析)_第5页
第5页 / 共23页
点击查看更多>>
资源描述

《protocol_analysis(协议分析)》由会员分享,可在线阅读,更多相关《protocol_analysis(协议分析)(23页珍藏版)》请在金锄头文库上搜索。

1、协议分析 ARP协议解码详解一、 ARP协议简介ARP,全称Address Resolution Protocol,中文名为地址解析协议,它工作在数据链路层,在本层和硬件接口联系,同时对上层提供服务。IP数据包常通过以太网发送,以太网设备并不识别32位IP地址,它们是以48位以太网地址传输以太网数据包。因此,必须把IP目的地址转换成以太网目的地址。在以太网中,一个主机要和另一个主机进行直接通信,必须要知道目标主机的MAC地址。但这个目标MAC地址是如何获得的呢?它就是通过地址解析协议获得的。ARP协议用于将网络中的IP地址解析为的硬件地址(MAC地址),以保证通信的顺利进行。1. ARP和RA

2、RP报头结构ARP和RARP使用相同的报头结构,如图1所示。硬件类型协议类型硬件地址长度协议长度操作类型发送方的硬件地址(0-3字节)源物理地址(4-5字节)源IP地址(0-1字节)源IP地址(2-3字节)目标硬件地址(0-1字节)目标硬件地址(2-5字节)目标IP地址(0-3字节)(图1ARP/RARP报头结构)l 硬件类型字段指明了发送方想知道的硬件接口类型,以太网的值为1;l 协议类型字段指明了发送方提供的高层协议类型,IP为0800(16进制);l 硬件地址长度和协议长度指明了硬件地址和高层协议地址的长度,这样ARP报文就可以在任意硬件和任意协议的网络中使用;l 操作字段用来表示这个报

3、文的类型,ARP请求为1,ARP响应为2,RARP请求为3,RARP响应为4;l 发送方的硬件地址(0-3字节):源主机硬件地址的前3个字节;l 发送方的硬件地址(4-5字节):源主机硬件地址的后3个字节;l 发送方IP(0-1字节):源主机硬件地址的前2个字节;l 发送方IP(2-3字节):源主机硬件地址的后2个字节;l 目的硬件地址(0-1字节):目的主机硬件地址的前2个字节;l 目的硬件地址(2-5字节):目的主机硬件地址的后4个字节;l 目的IP(0-3字节):目的主机的IP地址。2. ARP和RARP的工作原理ARP的工作原理如下:1. 首先,每台主机都会在自己的ARP缓冲区 (AR

4、P Cache)中建立一个 ARP列表,以表示IP地址和MAC地址的对应关系。 2. 当源主机需要将一个数据包要发送到目的主机时,会首先检查自己 ARP列表中是否存在该 IP地址对应的MAC地址,如果有就直接将数据包发送到这个MAC地址;如果没有,就向本地网段发起一个ARP请求的广播包,查询此目的主机对应的MAC地址。此ARP请求数据包里包括源主机的IP地址、硬件地址、以及目的主机的IP地址。3. 网络中所有的主机收到这个ARP请求后,会检查数据包中的目的IP是否和自己的IP地址一致。如果不相同就忽略此数据包;如果相同,该主机首先将发送端的MAC地址和IP地址添加到自己的ARP列表中,如果AR

5、P表中已经存在该IP的信息,则将其覆盖,然后给源主机发送一个 ARP响应数据包,告诉对方自己是它需要查找的MAC地址; 4. 源主机收到这个ARP响应数据包后,将得到的目的主机的IP地址和MAC地址添加到自己的ARP列表中,并利用此信息开始数据的传输。如果源主机一直没有收到ARP响应数据包,表示ARP查询失败。RARP的工作原理如下:1. 发送主机发送一个本地的RARP广播,在此广播包中,声明自己的MAC地址并且请求任何收到此请求的RARP服务器分配一个IP地址;2. 本地网段上的RARP服务器收到此请求后,检查其RARP列表,查找该MAC地址对应的IP地址;3. 如果存在,RARP服务器就给

6、源主机发送一个响应数据包并将此IP地址提供给对方主机使用;4. 如果不存在,RARP服务器对此不做任何的响应;5. 源主机收到从RARP服务器的响应信息,就利用得到的IP地址进行通讯;如果一直没有收到RARP服务器的响应信息,表示初始化失败。二、 解码详解了解了ARP和RARP协议的报头结构和工作原理后,我们使用科来网络分析系统抓取ARP包,其详细解码,如图1,(图1科来网络分析系统中ARP请求包详细解码)图1显示是一个ARP的请求包的解码,下面我们来详细说明:l 硬件类型:1,表示硬件借口类型为以太网类型l 协议类型:0x0800,表示发送方提供的高层协议类型是IPl 硬件地址长度:表示硬件

7、地址长度为6字节=48位l 协议地址长度:表示IP地址长度为4字节=32位l 操作类型:1,表示ARP请求l 源物理地址:00:14:85:CA:F5:22l 源IP地址:192.168.0.92l 目标物理地址:00:00:00:00:00:00l 目标IP地址:192.168.0.208ARP回应包和RARP的包类似,我们在这里就不再重复说明。协议分析 DHCP协议解码详解一、 DHCP协议简介DHCP,全称是DynamicHostConfigurationProtocol中文名为动态主机配置协议,它的前身是BOOTP,它工作在OSI的应用层,是一种帮助计算机从指定的DHCP服务器获取它们

8、的配置信息的自举协议。DHCP使用客户端/服务器模式,请求配置信息的计算机叫做DHCP客户端,而提供信息的叫做DHCP的服务器。DHCP为客户端分配地址的方法有三种:手工配置、自动配置、动态配置。DHCP最重要的功能就是动态分配。除了IP地址,DHCP分组还为客户端提供其他的配置信息,比如子网掩码。这使得客户端无需用户动手就能自动配置连接网络。1. DHCP的工作流程发现阶段,即DHCP客户机寻找DHCP服务器的阶段。DHCP客户机以广播方式(因为DHCP服务器的IP地址对于客户机来说是未知的)发送DHCPdiscover发现信息来寻找DHCP服务器,即向地址255.255.255.255发送

9、特定的广播信息。网络上每一台安装了TCP/IP协议的主机都会接收到这种广播信息,但只有DHCP服务器才会做出响应。提供阶段,即DHCP服务器提供IP地址的阶段。在网络中接收到DHCPdiscover发现信息的DHCP服务器都会做出响应,它从尚未出租的IP地址中挑选一个分配给DHCP客户机,向DHCP客户机发送一个包含出租的IP地址和其他设置的DHCPoffer提供信息。选择阶段,即DHCP客户机选择某台DHCP服务器提供的IP地址的阶段。如果有多台DHCP服务器向DHCP客户机发来的DHCPoffer提供信息,则DHCP客户机只接受第一个收到的DHCPoffer提供信息,然后它就以广播方式回答

10、一个DHCPrequest请求信息,该信息中包含向它所选定的DHCP服务器请求IP地址的内容。之所以要以广播方式回答,是为了通知所有的DHCP服务器,他将选择某台DHCP服务器所提供的IP地址。确认阶段,即DHCP服务器确认所提供的IP地址的阶段。当DHCP服务器收到DHCP客户机回答的DHCPrequest请求信息之后,它便向DHCP客户机发送一个包含它所提供的IP地址和其他设置的DHCPACK确认信息,告诉DHCP客户机可以使用它所提供的IP地址。然后DHCP客户机便将其TCP/IP协议与网卡绑定,另外,除DHCP客户机选中的服务器外,其他的DHCP服务器都将收回曾提供的IP地址。重新登录

11、,以后DHCP客户机每次重新登录网络时,就不需要再发送DHCPdiscover发现信息了,而是直接发送包含前一次所分配的IP地址的DHCPrequest请求信息。当DHCP服务器收到这一信息后,它会尝试让DHCP客户机继续使用原来的IP地址,并回答一个DHCPACK确认信息。如果此IP地址已无法再分配给原来的DHCP客户机使用时(比如此IP地址已分配给其它DHCP客户机使用),则DHCP服务器给DHCP客户机回答一个DHCPNACK否认信息。当原来的DHCP客户机收到此DHCPNACK否认信息后,它就必须重新发送DHCPdiscover发现信息来请求新的IP地址。更新租约,DHCP服务器向DH

12、CP客户机出租的IP地址一般都有一个租借期限,期满后DHCP服务器便会收回出租的IP地址。如果DHCP客户机要延长其IP租约,则必须更新其IP租约。DHCP客户机启动时和IP租约期限过一半时,DHCP客户机都会自动向DHCP服务器发送更新其IP租约的信息。2. DHCP的报文格式我们来介绍一下DHCP的报文格式,如图1,OP(1)Htype(1)Hlen(1)Hops(1)Transaction ID(4)Seconds(2)Flags(2)Ciaddr(4)Yiaddr(4)Siaddr(4)Giaddr(4)Chaddr(16)Sname(64)File(128)Options(varia

13、ble)(图1 DHCP的 报文格式)l OP:若是client送给server的封包,设为1,反向为2;l Htype:硬件类别,ethernet为1;l Hlen:硬件长度,ethernet为6;l Hops:若数据包需经过router传送,每站加1,若在同一网内,为0;l Transaction ID:事务ID,是个随机数,用于客户和服务器之间匹配请求和相应消息;l Seconds:由用户指定的时间,指开始地址获取和更新进行后的时间;l Flags:从0-15bits,最左一bit为1时表示server将以广播方式传送封包给 client,其余尚未使用;l Ciaddr:用户IP地址;l

14、 Yiaddr:客户IP地址;l Siaddr:用于bootstrap过程中的IP地址;l Giaddr:转发代理(网关)IP地址;l Chaddr:client的硬件地址;l Sname:可选server的名称,以0x00结尾;l File:启动文件名;l Options:,厂商标识,可选的参数字段二、 解码信息通过DHCP的 工作流程,我们知道从DHCP服务器获取配置信息的4个阶段中,DHCP客户端会出现有4种报文(DHCPDISCOVERY,DHCPOFFER,DHCPREQUEST,DHCPACK)。我们分别来看看4报文的解码内容:1. 发现阶段使用科来网络分析系统捕获DHCP DIS

15、COVERY 数据包,如图2,(图2 DHCP DISCOVERY数据包解码)由图2可以看到DHCP DISCOVERY包的解码信息,由于DHCP是BOOTP的以个扩展,DHCP兼容BOOTP,我们可以看到BOOTP和DHCP的解码。2. 提供阶段使用科来网络分析系统捕获DHCP OFFER数据包,如图3,(图3 DHCP OFFER数据包解码)3. 选择阶段使用科来网络分析系统捕获DHCP REQUEST数据包,如图4,(图4 DHCP REQUEST数据包解码)4. 确认阶段使用科来网络分析系统捕获DHCP ACK数据包,如图5,(图5 DHCP ACK数据包解码)以上为DHCP工作的4种数据包,每种数据包都是有区别的。协议分析 ICMP协议解码详解一、 ICMP协议简介ICMP全称Internet Control Message Protocol,中文名为因特网控制报文协议。它工作在OSI的网络层,向数据通讯中的源主机报告错误。ICMP可以实现故障隔离和故障恢复。网络本身是不可靠的,在网络传输过程中,可能会发生许多突发事件并导致数据传输失败。网络层的IP协议是一个无连接的协议,它不会处理网

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 学术论文 > 管理论文

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号