网络协议分析实验指导书_第1页
网络协议分析实验指导书_第2页
网络协议分析实验指导书_第3页
网络协议分析实验指导书_第4页
网络协议分析实验指导书_第5页
已阅读5页,还剩119页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

《网络协议分析》实验指导书黄梅根编计算机专业实验中心2023年6月

前言《网络协议分析》课程是针对计算机网络工程专业的本科生而设立的一门课程,它具有很强的理论性和实践性。本实验指导书是专门为《网络协议分析》理论课程配套的、指导学生完毕相关实验及操作而编写的。本实验指导书按照TCP/IP的层次结构对网络互连中的重要协议进行分析,由下而上的设计了14个实验,涉及协议分析软件的使用、数据链路层协议分析、网络层协议分析、传输层协议分析、应用层协议分析等,共五个部分。希望学生们通过以上实验进一步加深对网络协议的理解和掌握协议分析的方法。根据不同的规定,可以在本指导书的范围内选择相应的实验内容,组合成满足不同需求的实验指南。如16学时的实验可采用:以太网链路层帧格式分析实验、ICMP协议分析实验、IP协议分析实验、ARP协议分析实验、TCP协议分析实验、UDP协议分析实验、FTP协议分析实验、HTTP协议分析实验等8个实验组合;8学时的实验可采用:以太网链路层帧格式分析实验、IP协议分析实验、TCP协议分析实验、FTP协议分析实验等4个实验组合;其余的实验可以作为任选实验或者课下作业。特别说明:1、本指导书中给出的实验网络物理模型,不需要学生动手搭建,所有网络物理模型都基于现有的实验室运营环境。2、本指导书中网络物理模型中所用到的互换机和路由器均为锐捷设备,这里只是为举例方便。假如改换为CISCO或者华为等的相应设备,不影响本实验的环节和结果。3、由于重邮计算机专业实验室的实验环境有限,本指导书中也有些实验暂时还不完全支持,如:VLAN802.1Q帧格式分析实验;有些实验中所需要的软件名称和版本与实际环境中稍有差别,不需更改;若有需要重新安装或者改用其它的软件代替的,应当根据当堂实验课的指导老师的安排来进行。4、实验中设备的ip地址以实际实验机器的ip地址为准,相应指导书中网络实验模型中的ip地址。

目录1.网络协议分析实验环境规定 42.网络协议分析器Ethereal 52.1Ethereal主窗口简介 52.2Ethereal菜单栏简介 72.3Ethereal的工具栏 72.4Ethereal的网络数据抓包过程 82.5由Ethereal协议窗口分析协议的格式 113.数据链路层协议分析 153.1以太网链路层帧格式分析实验 153.2VLAN802.1Q帧格式分析实验 184.网络层协议分析 244.1ICMP协议分析实验 244.2IP协议分析实验 304.3IP数据报分片实验 334.4ARP协议分析实验 355.传输层协议分析 385.1TCP协议分析实验 395.2UDP协议分析实验 446.应用层协议分析 476.1DNS协议分析实验 476.2FTP协议分析实验 526.3HTTP协议分析实验 606.4电子邮件相关协议分析实验 646.5TELNET协议分析实验 72

1.网络协议分析实验环境规定(1)本指导书按照TCP/IP的层次结构对网络互连中的重要协议进行分析。本章实验的基本思绪是使用协议分析工具从网络中截获数据报,对截获的数据报进行分析。通过实验,使学生了解计算机网络中数据传输的基本原理,进一步理解计算机网络协议的层次结构、协议的结构、重要功能和工作原理,以及协议之间是如何互相配合来完毕数据通信功能的。Windows环境下常用的协议分析工具有:SniferPro、Natxray、Iris、Ethereal以及Windows2023自带的网络监视器。本书选用Ethereal作为协议分析工具。(2)网络协议图2.网络协议分析器Ethereal网络协议分析器网络协议分析器Ethereal是目前最佳的、开放源码的、获得广泛应用的网络协议分析器,支持Linux和windows平台。在该系统中加入新的协议解析器十分简朴,自从1998年发布最早的Ethereal0.2版本发布以来,志愿者为Ethereal添加了大量新的协议解析器,如今Ethereal已经支持五百多种协议解析。其因素是Ehereal具有一个良好的可扩展性的设计结构,这样才干适应网络发展的需要不断加入新的协议解析器。本节以Ethereal0.10.14版本为依据。Ethereal的安装比较简朴,按下述网址下载,下载完Ethereal即可完毕安装。ftp:///软件及工具(登陆时,无密码。新版本Ethereal已经整合了winpcap,应用比较方便。)2.1Ethereal主窗口简介图1是抓包完毕后的Ethereal的主窗口。过滤栏以上是Ethereal自身的菜单,过滤栏以下是抓获的包通过度析后的显示信息。图1抓包完毕后的Ethereal主窗口其中:1.菜单栏通常用来启动Ethereal有关操作;2.工具栏提供菜单中常用项目的快速访问;3.过滤器栏提供一个途径,来直接控制当前所用的显示过滤器;4.包列表窗格显示当前抓包文献的所有包的摘要。包列表的每一行相应抓包文献中的一个包,不同报文有不同的颜色,但是没有明显的规律。假如你选择了一行,则更具体的信息显示在协议窗格和包字节数据窗格中。注意:在此窗格里单击某个包,就会在此外的第二个窗口里显示这个包的信息。当Ethereal解析一个包时,由协议解析器将信息放置到行列中去,比较高级协议会改写较低档协议的信息,你只能看到最高级协议的信息。例如,IP内部包具有TCP的Ethernet包,Ethernet解析器将写出它的数据(如Ethernet地址),而IP解析器将用自己的数据改写它(如IP地址),等等。在包列表窗格中的每一列代表抓获的一个包,每个包的摘要信息涉及:*No:抓包文献中包的编号。,即使已经用了一个显示过滤器也不会改变。*Time:包的时间戳,即抓获该包的时间,该时间戳的实际格式可以改变。*Source:包的源地址。*Destination:包的目的地址。*Protocol:包协议的缩写。*Info:包内容的附加信息,这是一种可用的上下文菜单(鼠标右键)。5.包协议窗格(包细节窗格)包协议窗格以更具体的格式显示从包列表窗格选中的协议和协议字段。包的协议和字段用树型格式显示,可以扩展和收缩。这是一种可用的上下文菜单,单击每行前的“+”就可以展开为以“-”开头的若干行,单击“-”又可以收缩。在每个协议行中,会显示一些指定的协议字段:(1)生成的字段:Ethereal自己会生成附加的协议字段(括号括起来者)。这些字段的信息是从抓包文献中已知的与其它字段的上下文推导出来的。例如,Ethereal分析每个TCP流的顺序号/确认号时,就会在TCP协议的[SEQ/ACK分析]中显示出来。(2)链接:假如Ethereal检测到抓包文献中存在着与其它包的关系,就会产生一个到其它包的链接。链接用蓝色显示,双击它,Ethereal就跳到相应的包。6.包字节窗格(十六进制数据窗格)包字节窗格以十六进制形式显示出从包列表窗格中选定的当前包的数据,并以高亮度显示在包协议窗格中选择的字段。在常用的十六进制区内,左边示出包数据的编号,中部为相应的十六进制示出包数据,右边为相应的ASCII字符。7.状态栏显示当前程序状态和抓获的数据的信息。通常左边显示相关信息的状态,右边显示包的当前数目。(a)(b)图2状态栏示例示例(a)图示出没有装载抓包文献,即Ethereal开始时的情况。(b)图为已经装载抓包文献时的状态栏。左边显示关于抓包文献的名字、大小、开始抓包通过的时间等信息。右边显示抓包文献中包的当前数目。显示的数值如下:*P:抓获包的数目;*D:当前正显示的包的数目;*M:已经标记的数目。2.2Ethereal菜单栏简介1.File文献菜单文献菜单涉及打开和合并抓包文献,所有或部分存储、打印、输出抓包文献,退出Ethereal。2.Edit编辑菜单编辑菜单涉及查询包,时间查询,标记或标记一个或多个包,设立你的选项(剪切,拷贝,粘贴当前不能实现)3.View视图菜单视图菜单控制抓抓获的包数据的显示,涉及对抓获包的着色,字型的缩放,协议窗格中协议树的压缩和展开。4.Go指向菜单以不同方式指向特定的包。5.Capture抓包菜单开始和停止抓包过程以及编辑抓包过滤器。6.Analyze分析菜单涉及的选项由操作显示过滤器,允许和不允许对协议解析,配置用户指定的译码器和跟踪一个TCP流。7.Statistics记录菜单显示各种记录窗口的菜单项,涉及已经抓到的包的摘要,显示协议的分层记录等等。8.Help帮助菜单涉及帮助用户的选项,诸如一些基本帮助,所支持的协议列表,手工页面,在线访问一些web页面,以及常用的对话框。2.3Ethereal的工具栏Ethereal工具栏提供主菜单中常用的选项的快速访问。工具栏不能由用户定制,但是如果屏幕空间需要显示更多的包数据,就可以用视图菜单将它隐蔽。作为菜单,只有当前程序被选用时该选项才是可用的,其它选项变成灰色(假如尚未装载数据就不能存入抓包文献)。图3为各种工具图标的名称。接口选项开始停止重开始打开存储为关闭重载打印查询包向后向前指定包到首包到末包包着色卷屏放大取消放大图3各种工具图标的名称*接口:单击此图标,出现一个抓包选项表对话框;*选项:引出一个抓包选项对话框;*开始:根据选项在最近时间开始抓包;*停止:停止当前运营的抓包过程;*重开始:为了方便起见,停止当前运营的抓包过程,重新开始;*打开:出现打开文献对话框,让你打开一个抓包文献来观测;*存储为:让你将当前的抓包文献存储为你希望的文献。弹出“SaveCaptureFileAs”对话框;*关闭:关闭当前的抓包文献,假如没有存储该包被会询问是否存储;*重载:允许重装当前的抓包文献;*打印:引出打印对话框,允许所有或部分打印包文献中的包;*查询包:引出查询一个包的对话框;*向后:在包历史中向回跳;*向前:在包历史中向前跳;*指定包:引出对话框,跳到指定编号的包;*到首包:跳到包文献中第一个包;*到末包:跳到包文献中最后一个包;*着色:对包列表中抓获的色,用不同颜色显示;*放大:放大打开的包数据(增大字型);*取消放大:取消包数据放大。2.4Ethereal的网络数据抓包过程Ethereal的抓包有如下特性:*可以从不同类别的网络硬件抓包,如Ethernet、TokenRing、ATM等;*停止抓包时不同的触发器相似:如抓获数据的总数、抓包时间,抓获包的数目;*抓包过程中同时显示编译后(解析)的包。*根据包过滤器的条件,从抓获的所有数据中进行过滤,减去符合条件的包。使用Ethereal进行网络协议分析时应当注意:必须有管理员权限才干开始抓包过程;必须选择对的的网络接口来抓获包数据;必须在网络的对的的位置抓包才干看到想看到的业务流量。1.通过抓包接口开始抓包.通过抓包接口开始抓包可以通过工具栏的接口选项,或者“Capture”菜单的“Interfaces”选项选择抓包菜单后,Etherea弹出抓包接口对话框,如图4所示。但需注意,作为抓包接口对话框,只在数据抓包前显示,会消耗很多系统资源,要尽快关闭对话框以防止过多的系统装载。图4抓包接口对话框图中Gnericdialupadapter为拨号适配器,第二行为快速以太网网卡。工具栏框中的各个选项叙述于下:*IP:Ethereal也许从这个接口分辨第一个IP地址,假如分辨不出地址,就会显示“unknown”,假如解析出不止一个IP地址,则只显示第一个;*Packets:从对话框打开后从该接口侦测到的包数。假如最近一秒没有侦测到包,则Packets变为灰色;*Packets/s:在最近一秒侦测到的包数,假如没有侦测到包,则在最近一秒变为灰色;*Stop:停止当前抓包运营;*Capture:运用最后抓包设立立即在该接口开始抓包;*Prepare:打开该接口的抓包选项对话框;*Close:关闭对话框。假如选择Capture,则立即开始抓包,并显示图5的抓包过程数据报文记录:图5抓包过程数据报文记录抓到足够的包后,单击Stop停止抓包。即可显示如图1的抓包完毕后的Ethereal主窗口。2.通过.通过capture菜单选项抓包Ethereal的抓包(capture)选项,如图6所示。图6Capture选项(1)单击Capture选抓包过滤器CaptureFilters...,弹出过滤器窗口,如图7所示。图7Capture过滤器选项(2)在Filter栏中选择某项过滤器名称,如“NoBroadcastandnoMulticast”或“TCPonly”,则在Filtername和Filterstring文本框中显示你的选项。也可以在Filtername框中键入过滤器名字,在Filterstring框中键入过滤器字符串,单击New,一个过滤器就建立好了。单击Capture选0ptions,弹出图8所示过滤器选项窗口,指明网络适配器,抓包模式,包字节限制,过滤条件等有关抓包的系统配置的启用和设立。图8过滤器选项窗口(3)Ehereal的抓包过滤器抓包过滤器用来只抓取你感爱好的包。假如你想抓取某些特定的数据包时,有两种方法可供选择。第一种方式是先定义好抓包过滤器,结果是只抓到你设定好的那些类型的数据包;第二种方式是,先把本机收到或者发出的包所有抓下来,再使用的显示过滤器,只显示你想要的那些类型的数据包,这种方式比较常用,建议实验时大家采用。(4)最后单击Start,即可开始抓包,并弹出本机收到的数据报文记录信息。此后的操作与通过接口抓包相同,单击Stop即可停止抓包,并显示对截获到的报文进行分析后的界面。2.5由Ethereal协议窗口分析协议的格式Ethereal抓包后的界面有三个部分,上部为报文列表窗口,显示的是对抓到的每个数据报文进行分析后的总结型信息,涉及编号、时间、源地址、目的地址、协议、信息。中部为协议树窗口,显示的是数据报文的协议信息。在报文列表窗口选择不同条目则协议树窗口的内容随之改变为相应的协议信息。下部为16进制报文窗口,可以显示报文在物理层的数据形式。在抓包完毕后,显示过滤器可以用来找到你感爱好的包,也可根据协议、是否存在某个域、域值、域值之间的关系来查找你感爱好的包。1..Etheral的显示过滤器可以使用下面的操作符来构造显示过滤器:eq==等于:如ip.addr==0ne!=不等于:如ip.addr!=0gt>大于:如frame.pkt_len>10lt<小于:如lt<frame.pkt_len<10ge>=大等于:如frame.pkt_len>=10le<=小等于:如frame.pkt_len<=10也可以使用下面的逻辑操作符将表达式组合起来:and&&逻辑与:如ip.addr=0&&tcp.flag.finor||逻辑或:如ip.addr=0||ip.addr=1xor^^异或:如tr.dst[0:3]==0.6.29xortr.src[0:3]==not!逻辑非:如!llc例如:你想抓取IP地址是0的主机所收或发的所有的HTTP报文,则显示过滤器(Filter)为:ip.addr=0andhttp图9组合过滤器设立注意:当在Filter的输入,显示绿色背景时(图9上图)说明表达式是对的的,显示红色背景时(图9下图)说明表达式是错误的。又例如,你只想查看使用tcp协议的包,在Ethereal窗口Filter栏中输入tcp,然后回车,Ethereal就会只显示tcp协议的包。2.实例分析下面的分析示例是通过上网查询“TCP/IP”,然后运营ethereal抓包。抓包过程为:单击Capture-按默认过滤器-Start-抓包2分钟-Stop,获得图10的结果。图10上网查询抓包结果由于Ethereal已经对抓包结果做了分析,所以,通过协议窗口可以获得IP协议数据报格式和TCP协议报文格式的具体数据。在图10中,各个窗口都可以用拖拉方法拉大或缩小,即可与十六进制窗口相结合,清楚地看到各个字段的数据。其方法如下:(1)最初协议窗口显示了协议信息,单击第一条信息,则十六进制窗口的中相应的信息变为黑底白字,如图11所示:图11单击frame11494字节改变颜色(2)每条信息头部有一个“+”号,单击“+”则变为“-”,具体的协议信息即展开并显示在协议窗口内,图12所示为Internetprotocol协议展开的图示:图12单击IP协议的展开图由图12可见,IP协议源地址为6,目的地址为89,版本为IPV4,报头长度为20字节。相应的十六进制数据为450005c8a570400034065c72dbef581a3d86cdb0。协议窗口中尚有3个带“+”(3)TCP协议的展开图13TCP协议的展开图图13为TCP协议的展开图,由图可见源端标语为http(80),相应的十六进制为0050,目的端标语为4579,顺序号为0,下一顺序号为1440,确认号为0,报头长20字节,其后还可以看到保存位和6个控制位的设立情况等等。TCP/IP协议的报文格式此处没有列出,请读者自己对照,即可得知Ethereal已经对抓包结果做了准确的分析。3.数据链路层协议分析TCP/IP协议栈分为四层,从下往上依次为网络接口层、网际层、传输层和应用层,而网络接口层没有专门的协议,而是使用连接在Internet网上的各通信子网自身所固有的协议。如以太网(Ethernet)的802.3协议、令牌环网(TokenRing)的802.5协议、分组互换网的X.25协议等。目前Ethernet网得到了广泛的应用,它几乎成为局域网代名词。因此,这一部分将对以太网链路层的帧格式和802.1Q帧格式进行分析验证,使学生初步了解TCP/IP链路层的重要协议以及这些协议的重要用途和帧结构。3.1以太网链路层帧格式分析实验1.以太网简介IEEE802参考模型把数据链路层分为逻辑链路控制子层(LLC,LogicalLinkControl)和介质访问控制子层(MAC,MediaAccessControl)。与各种传输介质有关的控制问题都放在MAC层中,而与传输介质无关的问题都放在LLC层。因此,局域网对LLC子层是透明的,只有具体到MAC子层才干发现所连接的是什么标准的局域网。IEEE802.3是一种基带总线局域网,最初是由美国施乐(Xerox)于1975年研制成功的,并以曾经在历史上表达传播电磁波的以太(Ether)来命名。1981年,施乐公司、数字设备公司(Digital)和英特尔(Intel)联合提出了以太网的规约。1982年修改为第二版,即DIXEthernetV2,成为世界上第一个局域网产品的规范。这个标准后来成为IEEE802.3标准的基础。在802.3中使用1坚持的CSMA/CD(CarrierSenseMultipleAccesswithCollisionDetection)协议。现在流行的以太网的MAC子层的帧结构有两种标准,一种是802.3标准,另一种是DIXEthernetV2标准。图14802.3和EthernetV2MAC帧结构图14画出了两种标准的MAC帧结构。它们都是由五个字段组成。MAC帧的前两个字段分别是目的地址字段和源地址字段,长度是2或6字节。但在IEEE802.3标准规定对10Mb/s的基带以太网则使用6字节的地址字段。两种标准的重要区别在于第三个字段(2字节)。在802.3标准中,这个字段是长度字段,它指后面的数据字段的字节数,数据字段就是LLC子层交下来的LLC帧,其最小长度46字节,最大长度1500字节。在EthernetV2标准中,这个字段是类型字段,它指出LLC层使用的协议类型。由于数据字段的最大长度为1500字节,因此,以太网V2标准中将各种协议的代码规定为大于1500的数值,这样就不至于发生误解,并借此实现兼容。最后一个字段是一个长度为4字节的帧校验序列FCS,它对前四个字段进行循环冗余(CRC)校验。为了使发送方和接受方同步,MAC帧在总线上传输时还需要增长7个字节的前同步码字段和1字节的起始定界符(它们是由硬件生成的),其中前同步码是1和0的交替序列,供接受方进行比特同步之用;紧跟在前同步码之后的起始定界符为10101011,接受方一旦接收到两个连续的1后,就知道后面的信息就是MAC帧了。需要注意的是前同步码、起始定界符和MAC帧中的FCS字段在网卡接受MAC帧时已经被取消,因此,在截获的数据报中看不到这些字段。注意:由于802.3标准在MAC帧中封装802.2帧,相比EthernetV2增长了8个字节的开销,并且实践表白,这样做过于繁琐,使得其在实际中很少得到使用。因此,本节实验中重点分析EthernetV2MAC帧格式,802.3MAC帧不作具体讨论。2.实验环境与说明(1)实验目的了解EthernetV2标准规定的MAC帧结构,初步了解TCP/IP的重要协议和协议的层次结构。(2)实验设备和连接实验设备和连接图如图15所示,一台锐捷S2126G互换机连接了2台PC机,分别命名为PC1、PC2,互换机命名为Switch。图15Ethernet链路层帧结构实验连接图(3)实验分组每四名同学为一组,其中每两人一小组,每小组各自独立完毕实验。3.实验环节环节1:按照如图15所示连接好设备,配置PC1和PC2的IP地址;(编者注:实验室中任何一台PC都可以作为模型中的PC1或PC2。)环节2:在:PC1和PC2上运营Ethereal截获报文,为了只截获和实验内容有关的报文,将Ethereal的CaptrueFilter设立为“NoBroadcastandnoMulticast”;环节3:在:PC1的“运营”对话框中输入命令“Ping02”,单击“拟定”环节4:停止截获报文:将结果保存为MAC-学号,并对截获的报文进行分析:1)列出截获的报文中的协议类型,观测这些协议之间的关系。________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________2)在网络课程学习中,EthernetV2规定以太网的MAC层的报文格式分为7字节的前导符、1字节的帧首定界、6字节的目的MAC地址、6字节的源MAC地址、2字节的类型、46~1500字节的数据字段和4字节的帧尾校验字段。分析一个EthernetV2帧,查看这个帧由几部分组成,缺少了哪几部分?为什么?________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________环节5:在:PC1和PC2上运营Ethereal截获报文,然后进入PC1的Windows命令行窗口,执行如下命令:netsend02Hello这是PC1向PC2发送消息的命令,等到PC2显示器上显示收到消息后,终止截获报文。注意PC1和PC2的信使服务应启动。找到发送消息的报文并进行分析,查看主窗口中数据报文列表窗口和协议树窗口信息,填写下表:表1报文分析此报文类型此报文的基本信息(数据报文列表窗口中的Information项的内容)EthernetII协议树中Source字段值Destination字段值InternetProtocol协议树中Source字段值Destination字段值UserDatagramProtocol协议树中Source字段值Destination字段值应用层协议树协议名称包含Hello的字段值3.2VLAN802.1Q帧格式分析实验1.IEEE802.1Q介绍我们知道VLAN具有控制网络广播、提高网络性能;分隔网段、保证网络安全;简化网络管理、提高组网灵活性的功能。VLAN划分的方法有很多种,其中基于端口的静态VLAN是划分虚拟局域网最简朴也是最有效的方法。基于端口的VLAN(PortVLAN)将互换机按照端口的VLANID指定实现了逻辑划分,广播域被限定在相同VLAN的端口集合中,不同VLAN间不能直接通信。当使用多台互换机分别配置VLAN后,可以使用Trunk(干道)方式实现跨互换机的VLAN内部连通,互换机的Trunk端口不从属于某个VLAN,而是可以承载所有VLAN的帧。这种实现跨互换机的VLAN技术在初期使用帧过滤,而目前的国际标准规定采用帧标记。跨互换机的VLAN实现使得网络管理的逻辑结构可以完全不受实际物理连接的限制,极大地提高了组网的灵活性。1996年3月,IEEE802.1InternetWorking委员会结束了对VLAN初期标准的修订工作,统一了Frame-Tagging(帧标记)方式中不同厂商的标签格式,制定IEEE802.1QVLAN标准,进一步完善了VLAN的体系结构。如图16所示,IEEE802.1Q使用4Byte的标记头来定义Tag(标记)。Tag头中涉及2Byte的VPID(VLANProtocolIdentifier)和2Byte的VCI(VLANControlInformation)。图16802.1Q帧格式其中:*VPID为0X8100,标记该数据帧承载IEEE802.1Q的Tag信息;*VCI包含组件:*3bits用户优先级;*1bitsCFT(CanonicalFormatIndicator),默认值为0(表达以太网);*12bits的VID(VLANIdentifier),VLAN标记符;注意:互换机可以配置的VLAN数量因设备而异,实验室的S2126/S3550/S3760最多支持250个VLAN(VLANID:1~4094),其中VLAN1是不可删除的默认VLAN(设备管理)。图16比较了以太网帧格式和802.1Q帧格式,注意802.1Q帧中的FCS为加入802.1Q帧标记后重新运用CRC校验后的检测序列。IEEE802.1Q协议使跨互换机的相同VLAN端口间通信成为也许。基于802.1QTagVLAN用VID来划分不同VLAN,当数据帧通过互换机的时候,互换机根据帧中Tag头的VID信息来辨认它们所在的VLAN(若帧中无Tag头,则应用帧所通过端口的默认VID来辨认它们所在的VLAN。这使得所有属于该VLAN的数据帧,不管是单播帧、组播帧还是广播帧,都将被限制在该逻辑VLAN中传输。图17TagVLAN内通信如图17所示,两台S2126互换机分别划分出VLAN1和VLAN2,分别设立级联口为Trunk模式。PC1和PC3属于VLAN1,PC2和PC4属于VLAN2。PC2和PC4通信必须跨两台互换机。当PC2发出数据时,在没有进入互换机端口之间,数据帧头部并没有被加入Tag标记,是标准的以太帧格式;当数据帧进入互换机端口后,数据头部一方面被加入该端口所属的VID,这时互换机就按照目的地址转发,在VID=2的广播域中传送该帧。但第一台互换机并没有直接连接PC4,因此数据只能发往通向潜在PC4连接的级联端口,该口是Taged口,当数据从Taged端口转发时,即加入Tag标记(VID=2),使用802.1Q的封装格式;第二台互换机在由级联口接受时可以根据Tag标记而将该帧在VLAN2上广播出去,根据MAC地址连接PC4的端口就会收到该数据帧;该端口将去掉Tag标记后,转发数据帧至PC4。由此就实现了跨互换机的VLAN内通信,同理,PC1和PC3之间也可以实现数据通信。2.镜像在图17中,IEEE802.1Q帧在互换机的Taged端口之间,PC机使用以太帧,在PC机上运营的Ethereal是无法捕获IEEE802.1Q数据帧的。为了抓到和分析IEEE802.1Q数据帧,我们在实验中可以通过镜像的手段来捕获IEEE802.1Q数据帧。在网络维护和故障排除的过程中,我们一方面会根据已有的网络现象进行故障分析和判断,但假如掌握的信息局限性,或者是网络需要进一步监控时,镜像就成为一种重要的数据监控方法。镜像分为两种:一种是端口镜像,另一种是流镜像。端口镜像是指将某些指定端口(出或入方向)的数据流量映射到监控端口,以便集中使用数据捕获软件进行数据分析。流镜像则是指按照一定的数据流分类规则对数据进行镜像,然后将属于指定流的所有数据映射到监控端口,以便进行数据分析。在锐捷S2126/S3550互换机上配置镜像的命令为:monitorsession。monitorsession用于创建一个SPAN会话并指定目的端口(监控口)和源端口(被监控口)。使用该命令的no选项删除会话或者单独删除源端口或目的端口。其格式如下:monitorsessionsession_number{sourceinterfaceinterface-id[,|-][both|rx|tx]|destinationinterfaceinterface-id}nomonitorsessionsession_number[sourceinterfaceinterface-id[,|-][both|rx|tx]|destinationinterfaceinterface-id]有关格式规定参见表2所示。表2monitorsession的语法描述下面这个例子说明了如何创建一个SPAN会话:会话1。假如原先已经设立过该会话,请一方面将当前会话1的配置清除掉,然后设立端口1的帧映射到端口8。Switch(config)#nomonitorsession1Switch(config)#monitorsession1sourceinterfacefastEthernet1/1bothSwitch(config)#monitorsession1destinationinterfacefastEthernet1/83.实验环境与说明(1)实验目的了解IEEE802.1Q标准规定的帧结构,了解VLAN帧标记的方法。(2)实验设备和连接实验设备和连接图如图18所示,一台锐捷S2126G互换机连接一台S3550,S2126同时连接了2台PC机,分别命名为PC1、PC2。图18802.1Q帧格式分析实验连接图(3)实验分组每四名同学为一组,其中每两人一小组,每小组各自独立完毕实验。4.实验环节环节1:按照如图18所示连接好设备;环节2:完毕互换机S3550和S2126的相关配置,规定如下:*在S2126和S3550上创建VLAN10和VLAN20;*将S2126的F0/1指定为VLAN10,F0/2指定为VLAN20;*通过三层互换机S3550实现PC1和PC2的连通;*通过端口镜像,使得PC3可以监控S2126的F0/4。关于互换机VLAN和SVI的配置由于在第三章实验中已经做过,这里不再反复。为保证实验的顺利,同学可以参考下面的配置:①S2126的配置的配置::Switch(config)#hostnameS2126!配置设备名为S2126S2126(config)#vlan10!启用Vlan10S2126(config-vlan)#nameTest10S2126(config-vlan)#exitS2126(config)#vlan20!启用Vlan20S2126(config-vlan)#nameTest20S2126(config-vlan)#exitS2126(config)#interfacefastEthernet0/1S2126(config-if)#switchportaccessvlan10!指定F0/1端口为Vlan10S2126(config-if)#interfacefastEthernet0/2S2126(config-if)#switchportaccessvlan20!指定F0/2端口为Vlan10S2126(config-if)#interfacefastEthernet0/4S2126(config-if)#switchportmodetrunk!配置F0/4为Tagged端口S2126(config-if)#exitS2126(config)#monitorsession1sourceinterfacefastEthernet0/4both!镜像源端口S2126(config)#monitorsession1destinationinterfacefastEthernet0/3!镜像目的端口S2126(config)#end②S3550的配置的配置::Switch(config)#hostnameS3550!配置设备名为S3550S3550(config)#vlan10!启用Vlan10S3550(config-vlan)#nameTest10S3550(config-vlan)#exitS3550(config)#vlan20!启用Vlan20S3550(config-vlan)#nameTest20S3550(config-vlan)#exitS3550(config)#interfacefastEthernet0/4S3550(config-if)#switchportmodetrunk!配置F0/4为Tagged端口S3550(config-if)#exitS3550(config)#interfacevlan10!配置SVI端口S3550(config-if)#ipaddressS3550(config-if)#noshutdownS3550(config-if)#exitS3550(config)#interfacevlan20!配置SVI端口S3550(config-if)#ipaddressS3550(config-if)#noshutdownS3550(config-if)#end③PC1和和PC2的配置的配置::按照下表规定配置PC1和PC2。表3PC1和PC2的TCP/IP属性PC1PC2IP地址0IP地址0子网掩码子网掩码网关网关环节3:在PC3上运营Ethereal截获报文;环节4:在PC1的“运营”对话框中输入命令“Ping0”,单击“拟定”环节5:停止截获报文,将结果保存并对截获的报文进行分析:图19IEEE802.1Q抓包结果图19显示了通过PC3监控到的互换机Trunk口的数据流量,分析这些数据包并回答下列问题:1)S2126配置monitorsession1,是端口镜像还是流镜像?___________________________________2)观测捕获的ICMP数据报,你会发现每组4个,共有4组。为什么会这样?_________________________________________________________________________________________________________________________________________________________________________________________________________________________________________3)选择其中一组ICMP数据报,分析并完毕下表。表4报文分析ICMPEcho(ping)Request1源IP目的IP源MAC目的MACVLANIDICMPEcho(ping)Request2源IP目的IP源MAC目的MACVLANIDICMPEcho(ping)Reply1源IP目的IP源MAC目的MACVLANIDICMPEcho(ping)Reply2源IP目的IP源MAC目的MACVLANID4)请就表4的内容说明上述报文的执行过程。_________________________________________________________________________________________________________________________________________________________________________________________________________________________________________4.网络层协议分析该层是网络互联层,负责相邻计算机之间的通信。该层上的重要协议是IP协议,此外,这一层还涉及三个子协议:ICMP协议、ARP协议和RARP协议。*互联网控制信息协议(ICMP,InternetControlMessageProtocol)ICMP是TCP/IP协议簇的的一个子协议,它和IP协议属于同一层,但ICMP数据报是被封装在IP数据报中发送的。ICMP协议通常被用于在IP主机、路由器之间传递控制消息。控制消息是指网络通不通、主机是否可达、路由是否可用等网络自身的消息。这些控制消息虽然并不传输用户数据,但是对于用户数据的传递起着重要的作用。该协议经常被用作调试和监视网络。*网际协议(IP,InternetProtocol)这个协议是TCP/IP协议中最重要的协议之一,他负责解决来之传输层的分组发送请求和输入的数据报文。该层以上各层的协议都要使用IP协议。*地址解析协议(ARP)和反地址解析协议(RARP,ReverseAddressResolutionProtocol)它们分别负责实现从IP地址到物理地址(如以太网网卡MAC地址)和从物理地址到IP地址的映射。4.1ICMP协议分析实验ICMP协议介绍ICMP(InternetControlMessageProtocol)是因特网控制报文协议[RFC792]的缩写,是因特网的标准协议。ICMP允许路由器或主机报告差错情况和提供有关信息,用以调试、监视网络。(1)ICMP的报文格式图20ICMP回送请求和应答报文格式在网络中,ICMP报文将封装在IP数据报中进行传输。由于ICMP的报文类型很多,且又有各自的代码,因此,ICMP并没有一个统一的报文格式供所有ICMP信息使用,不同的ICMP类别分别有不同的报文字段。ICMP报文只在前4个字节有统一的格式,即类型、代码和校验和3个字段。接着的4个字节的内容与ICMP报文类型有关。图20描述了ICMP的回送请求和应答报文格式,ICMP报文分为首部和数据区两大部分。其中:*类型:一个字节,表达ICMP消息的类型,内容参见表5;*代码:一个字节,用于进一步区分某种类型的几种不同情况;*校验和:两个字节,提供对整个ICMP报文的校验和;(2)ICMP的报文类型ICMP报文的种类可以分为ICMP差错报告报文和ICMP询问报文两种,表5列出了已定义的几种ICMP消息。表5ICMP消息及类型码类型的值ICMP消息类型类型的值ICMP消息类型0回送(Echo)应答12参数犯错报告3目的站点不可达13时间戳(Timestamp)请求4源站点克制(Sourcequench)14时间戳(Timestamp)应答5路由重定向(Redirect)15信息请求8回送请求16信息应答9路由器询问17地址掩码(Addressmask)请求10路由器通告18地址掩码(Addressmask)应答11超时报告其中差错报告报文重要有目的站点不可达、源站点克制、超时、参数问题和路由重定向5种;ICMP询问报文有回送请求和应答、时间戳请求和应答、地址掩码请求和应答以及路由器询问和通告4种。(3)ICMP常见的消息类型下面介绍几种常用的ICMP消息类型。*目的站点不可达(3)产生“目的站点不可达”的因素有多种。在路由器不知道如何到达目的网络、数据报指定的源路由不稳定、路由器必须将一个设立了不可分段标志的数据报分段等情况下,路由器都会返回此消息。假如由于指明的协议模块或进程端口未被激活而导致目的主机的IP不能传送数据报,这时目的主机也会向源主机发送“目的站点不可达”的消息。为了进一步区分同一类型信息中的几种不同情况,在ICMP报文格式中引入了代码字段,该类型常见信息代码及其意义如下:表6ICMP类型3的常见代码代码描述解决代码描述解决0网络不可达;无路由到达主机1主机不可达;无路由到达主机2协议不可用;连接被拒绝3端口不可达;连接被拒绝4需分段但DF值为0;报文太长5源路由失败;无路由到达主机*源站点克制(4)此消息类型提供了流控制的一种基本形式。当数据报到达得太快,路由器或主机来不及解决时,这些数据报就必须被丢弃。丢弃数据报的计算机就会发一条“源站点克制”的ICMP报文。“源站点克制”消息的接受者就会减少向该消息发送站点发送数据报的速度。*回送请求(8)和回送应答(0)这两种ICMP消息提供了一种用于拟定两台计算机之间是否可以进行通信的机制。当一个主机或路由器向一个特定的目的主机发出ICMP回送请求报文时,该报文的接受者应当向源主机发送ICMP回送应答报文。*时间戳请求(15)和时间戳应答(16)这两种消息提供了一种对网络延迟进行取样的机制。时间戳请求的发送者在其报文的信息字段中写入发送消息的时间。接受者在发送时间戳之后添加一个接受时间戳,并作为时间戳应答消息报文返回。*地址掩码请求(17)和地址掩码应答(18)主机可以用“地址掩码请求”消息来查找其所连接网络的子网掩码。主机在网络上广播请求,并等待路由器的包含子网掩码的“地址掩码应答”消息报文的到来。*超时报告(11)当一个数据报的TTL值到达0时,路由器将会给源主机发送超时报文。2.基于ICMP的应用程序目前网络中常用的基于ICMP的应用程序重要有ping命令和tracert命令。(1)ping命令Ping命令是调试网络常用的工具之一。它通过发出ICMPEcho请求报文并监听其回应来检测网络的连通性。图21显示了Ethereal捕获的ICMPEcho请求报文和应答报文。图21ICMPEcho请求报文和应答报文Ping命令只有在安装了TCP/IP协议之后才可以使用,其命令格式如下:ping[-t][-a][-ncount][-lsize][-f][-iTTL][-vTOS][-rcount][-scount][[-jhost-list]|[-khost-list]][-wtimeout]target_name这里对实验中也许用到的参数解释如下:*-t:用户所在主机不断向目的主机发送回送请求报文,直到用户中断;*-ncount:指定要Ping多少次,具体次数由后面的count来指定,缺省值为4;*-lsize:指定发送到目的主机的数据包的大小,默认为32字节,最大值是65,527;*-wtimeout:指定超时间隔,单位为毫秒;*target_name:指定要ping的远程计算机。(2)Traceroute命令Traceroute命令用来获得从本地计算机到目的主机的途径信息。在MSWindows中该命令为Tracert,而UNIX系统中为Traceroute。Tracert先发送TTL为1的回显请求报文,并在随后的每次发送过程将TTL递增1,直到目的响应或TTL达成最大值,从而拟定路由。它所返回的信息要比ping命令具体得多,它把您送出的到某一站点的请求包,所走的所有路由均告诉您,并且告诉您通过该路由的IP是多少,通过该IP的时延是多少。Tracert命令同样要在安装了TCP/IP协议之后才可以使用,其命令格式为:tracert[-d][-hmaximum_hops][-jcomputer-list][-wtimeout]target_name参数含义为:*-d:不解析目的主机的名称;*-h:指定搜索到目的地址的最大跳跃数;*-j:按照主机列表中的地址释放源路由;*-w:指定超时时间间隔,程序默认的时间单位是毫秒。3.实验环境与说明(1)实验目的掌握ping和tracert命令的使用方法,了解ICMP协议报文类型及其作用。执行ping和tracert命令,分别截获报文,分析截获的ICMP报文类型和ICMP报文格式,理解ICMP协议的作用。(2)实验设备和连接实验设备和连接图如图22所示,一台锐捷R1760路由器连接2台PC机,分别命名为PC1、PC2。图22ICMP协议分析实验连接图(3)实验分组每四名同学为一组,其中每两人一小组,每小组各自独立完毕实验。4.实验环节环节1:按照如图22所示连接好设备;环节2:完毕路由器和PC1、PC2的相关配置;(编者注:实验室中任何一台PC都可以作为模型中的PC1。PC2用25等另一网段机器代理即可。)路由器的配置参考如下:router#configureterminalrouter(config)#interfacefastEthernet1/0router(config-if)#ipaddressrouter(config-if)#noshutdownrouter(config-if)#interfacefastEthernet1/1router(config-if)#ipaddressrouter(config-if)#noshutdownPC1和PC2的IP地址、子网掩码、网关按照图中有关参数配置。环节3:分别在PC1和PC2上运营Ethereal,开始截获报文,为了只截获和实验内容有关的报文,将Ethereal的CaptrueFilter设立为“NoBroadcastandnoMulticast”;环节4:在PC1上以PC2为目的主机,在命令行窗口执行Ping命令;请写出执行的命令:_____________________________________________________环节5:停止截获报文,将截获的结果保存为ICMP-1-学号,分析截获的结果,回答下列问题:1)您截获几个ICMP报文?分别属于那种类型?__________________________________________________________________________________________________________________________________________________________2)分析截获的ICMP报文,查看表7中规定的字段值,填入表中。表7ICMP报文分析报文号源IP目的IPICMP报文格式类型代码标记序列号3)分析在上表中哪个字段保证了回送请求报文和回送应答报文的一一相应,仔细体会Ping命令的作用。_________________________________________________________________________________________________________________________________________________________________________________________________________________________________________环节6:在PC1上运营Ethereal开始截获报文;环节7:在PC1上执行Tracert命令,向一个本网络中不存在的主机发送数据报,如:Tracert00;环节8:停止截获报文,将截获的结果保存为ICMP-2-学号,分析截获的报文,回答下列问题:1)截获了报文中哪几种ICMP报文?其类型码和代码各为多少?_________________________________________________________________________________________________________________________________________________________________________________________________________________________________________2)在截获的报文中,超时报告报文的源地址是多少?这个源地址指定设备和PC1有何关系?_________________________________________________________________________________________________________________________________________________________________________________________________________________________________________3)通过对两次截获的ICMP报文进行综合分析,仔细体会ICMP协议在网络中的作用。_________________________________________________________________________________________________________________________________________________________________________________________________________________________________________4.2IP协议分析实验1.IP协议介绍(1)IP地址的编址方法IP地址是为每个连接在互联网上的主机分派的唯一辨认的32位标记符。IP地址的编址方法共经历了三个阶段:*分类的IP地址这是一种基于分类的两级IP地址编址的方法。表8IP地址的分类IP地址类型第一字节十进制范围二进制固定最高位二进制网络位二进制主机位A类1-12608位24位B类128-1911016位16位C类192-22311024位8位D类224-2391110组播地址E类240-2541111保存实验使用如表8所示,IP地址分为A,B,C,D,E五类,其中A、B、C类地址为可分派主机地址,而D类地址为组播地址,E类地址保存以备将来的特殊使用。IP地址采用点分十进制方

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论