计算机网络实验2

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

计算机网络实验二协议数据的捕获和解析班级:2013211306姓名:黄明学号:2013211330日期:2015年6月18日实验二:协议数据的捕获和解析1.实验类别协议分析验证型2.实验内容和实验目的本次实验主要包含下列内容:1)使用Wireshark软件捕获在使用ping命令时产生的ICMP消息;2)分析网络层IP包头格式,理解各字段的作用,对于分段和校验和进行验证;3)使用Wireshark软件捕获在使用ARP消息,分析其消息格式,理解其工作原理;4)使用Wireshark捕获DHCP消息,分析其消息序列,理解DHCP的功能和操作原理;5)使用Wireshark捕获TCP消息,分析TCP报文段头格式,理解连接建立和释放的原理,差错控制原理、序号和窗口管理的原理。通过本实验学生可以深入理解分层体系结构,理解和掌握TCP/IP协议栈的代表协议——IP、TCP、UDP、ICMP、ARP和DHCP协议的要点。3.实验组人数每组1人,独立完成数据捕获工作、进行分析并撰写实验报告。4.实验设备环境1台装有MSWindows系列操作系统的计算机,要求能够连接到Internet,并安装Wireshark软件。5.实验步骤5.1准备工作1.下载Wireshark软件并了解其功能和使用方法。2.确保计算机已经连接到网络。3.启动Wireshark1,设置捕获接口(Interface)为本机网卡,选中混杂模式(promiscuousmode)捕获选项,设置合适的捕获过滤器(CaptureFilter):对于ping命令,设置过滤器为icmp对于DHCP消息,设置过滤器为udpport67对于ARP消息,设置过滤器为arp对于通过网页浏览应用来捕获TCP消息,设置过滤器为tcpport804.开始捕获。5.2数据捕获5.2.1捕获ICMP协议数据1.运行ping命令(例如:cping192.168.0.1),远程主机地址可以是本机地址、网关路由器地址,也可以是域名(如)。将捕获到的数据保存为文件。2.使用Windows中ping命令的-l选项(例如:cping-l8000192.168.0.1),制作大于8000字节的IP包并发送,捕获后分析其分段传输的包结构。5.2.2捕获DHCP协议数据1.使用ipconfig命令释放计算机的IP地址(cipconfig-release);2.使用ipconfig命令重新申请IP地址(cipconfig-renew)。此时wireshark窗口中可以捕获到完整的DHCP地址分配的流程,将捕获到的数据保存为文件。5.2.3捕获ARP协议数据采用与7.2.2相同的方法释放IP地址并重新申请,在wireshark窗口中可以捕获到ARP请求和响应消息,保存为文件。5.2.4捕获TCP协议数据打开浏览器,输入一个页面内容较简单的网页的URL,如;网页全部显示后关闭浏览器。5.3协议分析运行Wireshark软件,打开所捕获的数据文件,完成下列分析工作:1.IP包头分析:对于采用ping命令-l选项捕获的ICMP消息,对承载ICMP消息的IP包进行分析,记录包头各字段的值,对照讲义和教材分析各字段的功能,并对于校验和和分段进行验证;2.ICMP消息分析:记录并分析ICMP消息中分析各字段的功能;3.DHCP消息分析:针对一次地址分配过程(TransactionID相同的4个消息),分析其通信过程,画出地址分配的消息序列图,并记录采用DHCP协议配置的各个参数。4.ARP消息分析:对照讲义理解ARP的操作过程,记录并分析消息中各字段的功能。5.TCP报头及消息分析:针对TCP连接建立、连接释放、数据和应答报文段,对照讲义和教材分析各字段的功能;针对一次完整的TCP通信过程,画出消息序列图,应包含连接建立、数据传送和连接释放阶段。上述分析工作应在实验报告中进行详细描述,具体要求参见第9节。5.4撰写实验报告按第9节的要求撰写实验报告,对于捕获到的数据进行认真分析,归纳各协议的工作原理和实现要点。6.实验步骤和实验结果6.1:IP协议分析分组格式:实验结果:1)采用ping命令-l选项捕获的TCP消息字段报文(16进制)内容包头长度45包头长度20字节服务类型00正常时延、吞吐量、可靠性总长度0028数据分组长40字节标识9d9d标识为40349标志40MF=0,DF=1,允许分片.片偏移4000片偏移量为0生存周期33生存周期为51秒协议06使用TCP协议首部校验和36b7IP头部校验和为36b7源地址da1e67ed源地址:218.30.103.237目标地址0ace26a2目标地址:10.206.38.1622)校验原理及分析:检验和算法可以分成两步来实现。首先在发送端,有以下三步:1.把即将发送的IP头部中的检验和设置为0,然后以16位为一个间隔,将IP头部分成许多个16位的字段;2.将第1步获得的所有字段进行二进制相加求和;3.把最终结果取反,就得到检验和,再将该值填充到IP头部。其次在接收端,也有相应的三步:1.把接收到的IP头部分成16位一个间隔的字段集合;2.所有字段进行二进制相加求和;3.将最终结果取反,判断该结果是否为0,若为0,则说明检验和正确,若不为0,则协议栈会丢掉这个包。计算:4500+0028+9d9d+4000+3306+36b7+da1e+67ed+0ace+26da=2fffd;2fffd+0002=2ffff;取反码得到0,校验正确。3)IP包分段原理:首先同一个数据报的所有分段包含同样的Identification(标识)值,同时每一个分段使用DF、MF和offset来表示该分段的信息。1.DF代表不分段(Don’tFragment),它让路由器不要分割该数据报,因为目标主机无法将分片重组回原来的数据报,而数据报在分段后,此位置0;2.MF表示更多的分段(MoreFragment),除了最后一个分段以外其他所有的分段必须设置这一位,将其置1,最后一个分段置0;3.Fragmentoffset分段偏移域指明了该分段在当前数据报中的什么位置上。除了一个数据包的最后一个分段以外,其他所有的分段必须是8字节的倍数,这里8字节是基本分段单位。由截获的数据报来看,一共六段,除第一段offset为0外,其他各段偏移量为1480的倍数,也即前边每一段数据报(除包头)的长度,1480也为8的倍数,由此指明了各段在当前数据包中的位置。同时,除最后一段MF为0外,其他各段MF为1,表明各段不是一个完整的数据报,而是分割之后形成的分段。6.1ICMP分组分组格式:0001020304050607080910111213141516171819202122232425262728293031ip头部(20字节)类型(0、8)代码(0)校验和标识符序列号选项(若有)实验结果:1)ICMP功能:ICMP是(InternetControlMessageProtocol)Internet控制器报文协议。他是TCP/IP协议族的一个子协议,用于在IP主机、路由器之间传递控制消息。对IP报文传输时出现的差错、拥塞、路由改变、以及路由器或主机信息的获取等情况,向源端主机提交报告,由源主机采取相应措施,改进传输质量。2)各字段功能:3.DCHP协议分析分组格式:字段报文解释类型Type:0Echo响应代码Code:0Echo响应校验和checksum:0xf3cb校验和为0xf3cb校验正确标识符Identifier(BE):1Identifier(LE):256标识符序列号Sequencenumber(BE):41Sequencenumber(LE):10496序列号实验结果:1)各字段功能OP:若是client送给server的封包,设为1,反向为2。HTYPE:硬件类别,Ethernet为1。HLEN:硬件地址长度,Ethernet为6。HOPS:若封包需经过router传送,每站加1,若在同一内,为0。TRANSACTIONID:DHCPREQUEST时产生的数值,以作DHCPREPLY时的依据。SECONDS:Client端启动时间(秒)。FLAGS:从0到15共16bits,最左一bit为1时表示server将以广播方式传送封包给client,其余尚未使用。Ciaddr:要是client端想继续使用之前取得之IP地址,则列于这里。Yiaddr:从server送回client之DHCPOFFER与DHCPACK封包中,此栏填写分配给client的IP地址。Siaddr:若client需要透过网络开机,从server送出之DHCPOFFER、DHCPACK、DHCPNACK封包中,此栏填写开机程序代码所在server之地址。Giaddr:若需跨网域进行DHCP发放,此栏为relayagent的地址,否则为0。Chaddr:Client之硬件地址。Sname:Server之名称字符串,以0x00结尾。File:若client需要透过网络开机,此栏将指出开机程序名称,稍后以TFTP传送。Options:允许厂商定议选项(Vendor-SpecificArea),以提供更多的设定信息查看DHCP的四次握手获得IP地址,缺省路由DNS等参数的过程。在DOS窗口执行命令ipconfig/release先释放已经申请的IP地址。2)1.执行ipconfig/renew更新所有适配器,由于本地主机没有被分配到IP地址,并且也不知道DHCP服务器的地址,所以发送DHCPDiscover报文时,源地址为0.0.0.0,目的地址为255.255.255.255。本地网络上的所有主机都能收到DHCPDiscover报文。2.只有DHCP服务器收到这个DHCP,Discover报文后,向网络广播DHCPOffer报文作为回复。3.本地主机(0.0.0.0)收到DHCPOffer报文后,向DHCP服务器发送DHCPRequest报文用户申请发送DHCPdiscoverDHCP广播发送DHCPoffer用户收到DHCPoffer,并发送一个DHCPrequest来申请租用时间DHCP服务器发送DHCPACK分配给客户一个IP地址4.DHCP(10.3.9.2)服务器收到DHCPRequest报文后,回复DHCPACK报文,给本地主机分配一个IP地址。本地主机就得到了一个临时IP地址(10.8.168.30)。至此四次握手完成。在我捕获到的消息中,DHCPsever由路由器充当,无DHCPrelay,因为在同一网段内。4.ARP协议分析ARP分组格式:实验结果:本地局域网内的主机用广播的方式发送ARP报文,来获取彼此的硬件地址。ARP基本功能:在以太网协议中规定,同一局域网中的一台主机要和另一台主机迚行直接通信,必须要知道目标主机的MAC地址。而在TCP/IP协议栈中,网络层和传输层只关心目标主机的IP地址。这就导致在以太网中使用IP协议时,数据链路层的以太网协议接到上层IP协议提供的数据中,只包含目的主机的IP地址。于是需要一种方法,根据目的主机的IP地址,获得其MAC地址。这就是ARP协议要做的事情。所谓地址解析(addressresolution)就是主机在发送帧前将目标IP地址转换成目标MAC地址的过程。ARP报文的格式:①硬件类型:指明硬件的类型,以太网是1。②协议类型:指明发送者映射到数据链路标识的网络层协议的类型;IP对应0x0800。③硬件地址长度:也就是MAC地址的长度,单位是字节,这里是6。④协议地址长度:网络层地址的长度,即IP地址长度,单位是字节。⑤操作:指明是ARP请求、还是ARP应答。5、TCP协议分析1)TCP报文段的首部各字段的功能,以表格的方式总结每个字段的名字、长度和功能。源端口和目的端口域标明了一个连接的两个端点(16位)+(16位)序列号发送TCP包的序列(32位)确认号指定下一个期望的字节(32位)TCP头长度指明在头部TCP头

1 / 26
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功