欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > DOC文档下载  

    网络协议分析实验指导书 .doc

    • 资源ID:2401108       资源大小:2.31MB        全文页数:49页
    • 资源格式: DOC        下载积分:8金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要8金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    网络协议分析实验指导书 .doc

    网络协议分析实验指导书ver0.01计算机与信息工程系 shhkun2014年9月前 言网络协议分析课程是针对计算机及网络工程专业的本科生而设置的一门课程,它具有很强的理论性和实践性。本实验指导书是专门为网络协议分析理论课程配套的、指导学生完成相关实验及操作而编写的。本实验指导书按照 TCP/IP的层次结构对网络互连中的主要协议进行分析,由下而上的设计了9个实验,涉及ARP协议分析、IP协议分析、ICMP协议分析、UDP协议分析、TCP协议分析、DHCP协议分析、DNS协议分析、HTTP协议分析、SMTP协议与POP3协议分析。在实验内容之前对实验采用的Wireshark软件进行了介绍。希望学生们通过以上实验进一步加深对网络协议的理解和掌握协议分析的方法。 特别说明:1、本指导书中给出的实验网络物理模型,不需要学生动手搭建,所有网络物理模型都基于现有的实验室运行环境。2、本指导书中实验内容的开展与实验室使用的交换机和路由器的品牌无关,实验指导书中指出实验品牌等,只是为了举例方便。3、实验中设备的ip地址以实际实验机器的ip地址为准,不同学生的IP地址应该不同。目 录 1.网络协议分析实验环境要求42.网络协议分析器Wireshark52.1 Wireshark 主窗口简介52.2 Wireshark 菜单栏简介62.3 Wireshark 的工具栏72.4 Wireshark 的网络数据抓包过程82.5 由Wireshark协议窗口分析协议的格式103.网络层协议分析11实验一 ARP协议分析12实验二 IP 协议分析15实验三 ICMP 协议分析194.传输层协议分析28实验四 UDP协议分析29实验五 TCP 协议分析315. 应用层协议分析34实验六 DHCP协议分析35实验七 DNS 协议分析37实验八 HTTP 协议分析39实验九 SMTP及POP3协议分析431.网络协议分析实验环境要求 (1)本指导书按照 TCP/IP的层次结构对网络互连中的主要协议进行分析。本章实验的基本思路是使用协议分析工具从网络中截获数据报,对截获的数据报进行分析。通过试验,使学生了解计算机网络中数据传输的基本原理,进一步理解计算机网络协议的层次结构、协议的结构、主要功能和工作原理,以及协议之间是如何相互配合来完成数据通信功能的。 Windows 环境下常用的协议分析工具有:Sniffer Pro、Natxray、Iris、Wireshark 以及Windows 2000 自带的网络监视器。本书选用Wireshark 1.4.9中文版 作为协议分析工具。 (2)网络协议图2.网络协议分析器Wireshark Wireshark(前称Wireshark)是一个网络封包分析软件。网络封包分析软件的功能是撷取网络封包,并尽可能显示出最为详细的网络封包资料。Wireshark使用WinPCAP作为接口,直接与网卡进行数据报文交换。2.1 Wireshark 主窗口简介图1 是抓包完成后的Wireshark 的主窗口。过滤栏以上是Wireshark 本身的菜单,过滤栏以下是抓获的包经过分析后的显示信息。 图1 抓包完成后的Wireshark 主窗口 其中: 1菜单栏通常用来启动Wireshark 有关操作; 2工具栏提供菜单中常用项目的快速访问; 3过滤器栏提供一个路径,来直接控制当前所用的显示过滤器; 4包列表窗格显示当前抓包文件的全部包的摘要。 包列表的每一行对应抓包文件中的一个包,不同报文有不同的颜色,但是没有明显的规 律。如果你选择了一行,则更详细的信息显示在协议窗格和包字节数据窗格中。 注意:在此窗格里单击某个包,就会在另外的第二个窗口里显示这个包的信息。 当 Wireshark 解析一个包时, 由协议解析器将信息放置到行列中去,比较高级协议会改写较低级协议的信息,你只能看到最高级协议的信息。例如,IP内部包含有TCP的Ethernet包,Ethernet 解析器将写出它的数据 (如 Ethernet地址),而 IP解析器将用自己的数据改写它 (如 IP 地址),等等。 在包列表窗格中的每一列代表抓获的一个包,每个包的摘要信息包括: * No :抓包文件中包的编号。,即使已经用了一个显示过滤器也不会改变。 * Time:包的时间戳,即抓获该包的时间,该时间戳的实际格式可以改变。 * Source:包的源地址。 * Destination:包的目标地址。 * Protocol:包协议的缩写。 * Info:包内容的附加信息,这是一种可用的上下文菜单 (鼠标右键)。 5包协议窗格 (包细节窗格) 包协议窗格以更详细的格式显示从包列表窗格选中的协议和协议字段。包的协议和字段用树型格式显示,可以扩展和收缩。这是一种可用的上下文菜单,单击每行前的 “”就 可以展开为以 “”开头的若干行,单击 “”又可以收缩。 在每个协议行中,会显示一些指定的协议字段: (1)生成的字段:Wireshark 自己会生成附加的协议字段 (括号括起来者)。这些字段的信息是从抓包文件中已知的与其它字段的上下文推导出来的。例如,Wireshark 分析每个TCP流的顺序号/确认号时,就会在TCP 协议的SEQ/ACK 分析中显示出来。 (2)链接: 如果Wireshark 检测到抓包文件中存在着与其它包的关系,就会产生一个到其它包的链接。链接用蓝色显示,双击它,Wireshark 就跳到相应的包。 6包字节窗格 (十六进制数据窗格) 包字节窗格以十六进制形式显示出从包列表窗格中选定的当前包的数据,并以高亮度显示在包协议窗格中选择的字段。在常用的十六进制区内,左边示出包数据的编号,中部为相应的十六进制显示出包数据,右边为对应的ASCII 字符。 7状态栏 显示当前程序状态和抓获的数据的信息。通常左边显示相关信息的状态,右边显示包的当前数目。 2.2 Wireshark 菜单栏简介 1文件菜单 文件菜单包括打开和合并抓包文件,保存、另存为、导出抓包文件,退出Wireshark等命令。 2编辑菜单 编辑菜单包括查询包,时间查询,标记或标识一个或多个包,设置你的选项 (剪切,拷贝,粘贴当前不能实现) 3视图菜单 视图菜单控制抓抓获的包数据的显示,包括对抓获包的着色,字型的缩放,协议窗格中协议树的压缩和展开。 4定位菜单 以不同方式指向特定的包。 5抓包菜单 开始和停止抓包过程、参数选择以及选择抓包过滤器。 6分析菜单 包括的选项由操作显示过滤器,允许和不允许对协议解析,配置用户指定的译码器和跟踪一个TCP 流。 7统计菜单 显示各种统计窗口的菜单项,包括已经抓到的包的摘要,显示协议的分层统计等等。 8帮助菜单 包括帮助用户的选项,诸如一些基本帮助,所支持的协议列表,手工页面,在线访问一些web 页面,以及常用的对话框。 除此之外,还有电信和工具菜单,实验用不到,不再介绍.2.3 Wireshark 的工具栏 Wireshark 工具栏提供主菜单中常用的选项的快速访问。工具栏不能由用户定制,但是如果屏幕空间需要显示更多的包数据,就可以用视图菜单将它隐蔽。 作为菜单,只有当前程序被选用时该选项才是可用的,其它选项变成灰色 (如果尚未装载数据就不能存入抓包文件)。图2 为各种工具图标的名称。 接口 选项 开始 停止 重开始 打开 存储为 关闭 重载 打印 查询包 向后 向前 指定包 到首包 到末包 包着色 卷屏 放大 取消放大 图2 各种工具图标的名称 * 接口:单击此图标,出现一个抓包选项表对话框; * 选项:引出一个抓包选项对话框; * 开始:根据选项在最近时间开始抓包; * 停止:停止当前运行的抓包过程; * 重开始:为了方便起见,停止当前运行的抓包过程,重新开始; * 打开:出现打开文件对话框,让你打开一个抓包文件来观察; * 存储为:让你将当前的抓包文件存储为你希望的文件。弹出“Save Capture File As” 对话框; * 关闭:关闭当前的抓包文件,如果没有存储该包被会询问是否存储; * 重载:允许重装当前的抓包文件; * 打印:引出打印对话框,允许全部或部分打印包文件中的包; * 查询包:引出查询一个包的对话框; * 向后:在包历史中向回跳; * 向前:在包历史中向前跳; * 指定包:引出对话框,跳到指定编号的包; * 到首包: 跳到包文件中第一个包; * 到末包:跳到包文件中最后一个包; * 着色:对包列表中抓获的色,用不同颜色显示; * 放大:放大打开的包数据 (增大字型); * 取消放大:取消包数据放大。 2.4 Wireshark 的网络数据抓包过程 Wireshark 的抓包有如下特征: * 可以从不同类别的网络硬件抓包,如Ethernet、 Token Ring、ATM 等; * 停止抓包时不同的触发器相似:如抓获数据的总数、抓包时间,抓获包的数目; * 抓包过程中同时显示编译后 (解析)的包。 * 根据包过滤器的条件,从抓获的全部数据中进行过滤,减去符合条件的包。 使用 Wireshark 进行网络协议分析时应当注意:必须有管理员权限才能开始抓包过程;必须选择正确的网络接口来抓获包数据;必须在网络的正确的位置抓包才能看到想看到的业务流量。 1通过抓包接口开始抓包通过抓包接口开始抓包 可以通过工具栏的接口选项,或者“Capture”菜单的“Interfaces”选项选择抓包菜单后,Etherea 弹出抓包接口对话框,如图4 所示。但需注意,作为抓包接口对话框,只在数据抓包前显示,会消耗很多系统资源,要尽快关闭对话框以防止过多的系统装载。 图3 抓包接口对话框 图中第一行为千兆以太网网卡。工具栏框中的各个选项叙述于下:*详细信息:显示网卡的描述信息,上图中为“Intel(R) 82579LM Gigrbit Network Connnection”; * IP地址:Wireshark 可能从这个接口分辨第一个IP 地址,如果分辨不出地址,就会显示 “unknown ”,如果解析出不止一个IP 地址,则只显示第一个(图中显示的是IPv6的地址,其IPv4地址为192.168.7.87,但未显示); * Packets:从对话框打开后从该接口侦测到的包数。如果最近一秒没有侦测到包,则 Packets 变为灰色; * Packets/s:在最近一秒侦测到的包数,如果没有侦测到包,则在最近一秒变为灰色; * 停止:停止当前抓包运行; * 开始:利用最后抓包设置立即在该接口开始抓包; * 选项:打开该接口的抓包选项对话框; * 详情:显示接口更多细节 * 关闭:关闭对话框。 如果选择Capture,则立即开始抓包。抓到足够的包后,单击Stop停止抓包。即可显示如图1的抓包完成后的Wireshark 主窗口。 2通过抓包 菜单选项抓包 Wireshark 的抓包 (capture)选项,如图4 所示。 图4 Capture 选项 (1)单击选择抓包过滤器(F).,弹出过滤器窗口,如图5 所示。 图5 Capture 过滤器选项 (2)在显示过滤器栏中选择某项过滤器名称,如“No Broadcast and no Multicast ” 或“TCP only”,则在过滤名字和过滤条件文本框中显示你的选项。 也可以在过滤名字框中键入过滤器名字,在过滤条件框中键入过滤器字符串,单击新建,一个过滤器就建立好了。 单击抓包菜单,选择抓包参数选择,弹出图6所示过滤器选项窗口,指明网络适配器,抓包模式,包字节限制,过滤条件等有关抓包的系统配置的启用和设置。 图6 过滤器选项窗口 (3)Wireshark的抓包过滤器 抓包过滤器用来只抓取你感兴趣的包。如果你想抓取某些特定的数据包时,有两种方法可供选择。 第一种方式是先定义好抓包过滤器,结果是只抓到你设定好的那些类型的数据包; 第二种方式是,先把本机收到或者发出的包全部抓下来,再使用显示过滤器,只显示你想要的那些类型的数据包,这种方式比较常用,建议实验时大家采用。 (4 )最后单击开始,即可开始抓包,并弹出本机收到的数据报文统计信息。 此后的操作与通过接口抓包相同,单击停止命令即可停止抓包,并显示对截获到的报文进行分析后的界面。 2.5 由Wireshark协议窗口分析协议的格式 Wireshark 抓包后的界面有三个部分,上部为报文列表窗口,显示的是对抓到的每个数据报文进行分析后的总结型信息,包括编号、时间、源地址、目标地址、协议、信息。中部为协议树窗口,显示的是数据报文的协议信息。在报文列表窗口选择不同条目则协议树窗口的内容随之改变为相应的协议信息。下部为16 进制报文窗口,可以显示报文在物理层的数据形式。 在抓包完成后,显示过滤器可以用来找到你感兴趣的包,也可根据协议、是否存在某个域、域值、域值之间的关系来查找你感兴趣的包。 1Wireshark 的显示过滤器可以使用下面的操作符来构造显示过滤器: eq = 等于:如 ip.addr=10.1.10.20 ne != 不等于:如 ip.addr!=10.1.10.20 gt > 大于:如 frame.pkt_len>10 lt < 小于:如 lt < frame.pkt_len<10 ge >= 大等于:如 frame.pkt_len>=10 le <= 小等于:如 frame.pkt_len<=10 也可以使用下面的逻辑操作符将表达式组合起来: and &&逻辑与:如 ip.addr=10.1.10.20&&tcp.flag.fin or | 逻辑或:如 ip.addr=10.1.10.20|ip.addr=10.1.10.21 xor 异或:如 tr.dst0:3 = 0.6.29 xor tr.src0:3 = not ! 逻辑非:如 !llc 例如:你想抓取IP 地址是 192.168.7.87 的主机所收或发的所有的HTTP 报文,则显示过滤器 (Filter )为:ip.addr=192.168.7.87 and http 图 7 组合过滤器设置 注意:当在Filter 的输入,显示绿色背景时 (图7 上图)说明表达式是正确的,显示红色背景时 (图7 下图)说明表达式是错误的。 3.网络层协议分析 该层是网络互联层,负责相邻计算机之间的通信。该层上的主要协议是IP 协议,此外, 这一层还包括三个子协议:ICMP 协议、ARP 协议和RARP 协议。 * 互联网控制信息协议 (ICMP,Internet Control Message Protocol) ICMP 是TCP/IP 协议簇的的一个子协议,它和IP 协议属于同一层, 但ICMP 数据报是被封装在IP 数据报中发送的。ICMP 协议通常被用于在IP 主机、路由器之间传递控制消息。控制消息是指网络通不通、主机是否可达、路由是否可用等网络本身的消息。这些控制消息虽然并不传输用户数据,但是对于用户数据的传递起着重要的作用。该协议经常被用作调试和监视网络。 * 网际协议 (IP,Internet Protocol) 这个协议是 TCP/IP 协议中最主要的协议之一,他负责处理来之传输层的分组发送请求 和输入的数据报文。该层以上各层的协议都要使用IP 协议。 * 地址解析协议 (ARP )和反地址解析协议 (RARP,Reverse Address Resolution Protocol) 它们分别负责实现从IP 地址到物理地址 (如以太网网卡MAC 地址)和从物理地址到IP 地址的映射。 实验一 ARP协议分析一.实验目的1.熟悉以太网帧的封装2.熟悉ARP协议报文格式3.理解ARP协议的工作原理及其作用,能够使用ARP命令对ARP缓存进行操作。二实验内容1.使用ARP命令对ARP缓存进行一些简单操作;2.捕获ARP报文,并进行分析。三实验原理1ARP 协议介绍 ARP 是地址解析协议 (Reverse Address Resolution Protocol)的缩写,负责实现从IP 地址到物理地址 (如以太网MAC 地址)的映射。在实际通信中,物理网络使用硬件地址进行报文传输。IP 报文在封装为数据链路层帧进行传送时,就有必要把 IP 地址转换为对应的硬件地址,ARP 正是动态地完成这一功能的。 (1)ARP 报文格式 图8 ARP 报文格式 ARP 协议报文是定长的,其格式如图8 所示,报文中每一字段的含义如下: * 硬件类型:表示物理网络的类型,“0X0001”表示以太网; * 协议类型:表示网络网络协议类型,“0X0800”表示IP 协议; * 硬件地址长度:指定源/ 目的站物理地址的长度,单位为字节; * 协议地址长度:指定源/ 目的站IP 地址的长度,单位为字节; * 操作:指定该报文的类型,“1”为ARP 请求报文,“2”为ARP 响应报文; * 源端硬件/IP 地址:由ARP 请求者填充; * 目的站物理地址:在请求报文中为0,在响应报文中,由由发送响应报文的主机填写接收该报文的目的主机的物理地址; * 目的站IP 地址:由ARP 请求者填充,指源端想要知道的主机的IP 地址。只有IP 地址等于该IP 地址的主机才向源主机发送相应报文。 (2)ARP 的工作方式 在以太网中,每台使用ARP 协议实现地址解析的主机都在自己的高速缓存中维护着一个地址映射表,这个ARP表中存放着最近和它通信的同网络中的计算机的 IP地址和对应的MAC 地址。 当两台计算机通信时,源主机首先查看自己的ARP 表中是否有目的主机的 IP 地址项,若有则使用对应的MAC 地址直接向目的主机发送信息;否则就向网络中广播一个ARP 请求报文,当网络中的主机收到该ARP 请求报文时,首先查看报文中的目的IP 地址是否与自己的IP 地址相符,若相符则将请求报文中的源IP 地址和MAC 地址写入自己的ARP 表中;然后,创建一个ARP 响应报文,将自己的MAC 地址填入该响应报文中,发送给原主机。 注意:ARP响应报文不再广播,而是直接发送给请求者。 源主机收到响应报文后,取出目的IP 地址和 MAC 地址加入到自己的 ARP 表中,并利用获得的目的MAC 地址向目的端主机发送信息。 在实际中,为了节省内存空间和ARP 表的查询时间,若某一个ARP 地址项很久没有使用,则会从地址映射表中删除。 2Arp 命令简介 本次实验使用的Windows 自带的Arp 命令提供了显示和修改地址解析协议所使用的地址映射表的功能。 Arp 命令的格式要求如下: ARP -s inet_addr eth_addr if_addr ARP -d inet_addr if_addr ARP -a inet_addr -N if_addr 其中: * -s:在 ARP 缓存中添加表项:将 IP 地址 inet_addr 和物理地址 ether_addr 关联,物理地址由以连字符分隔的 6 个十六进制数给定,使用点分十进制标记指定IP 地址,添加项是永久性的; * -d:删除由inet_addr 指定的表项; * -a:显示当前ARP 表,如果指定了inet_addr 则只显示指定计算机的IP 和物理地址; * inet_addr:以点分十进制标记指定IP 地址; * -N:显示由if_addr 指定的ARP 表项; * if_addr:指定需要选择或修改其地址映射表接口的IP 地址; * ether_addr:指定物理地址; 四实验步骤 实验需要网络环境(局域网连接即可)。每两位同学一组,合作开展实验。1.验证ARP命令,并记录实验结果(1)在命令行窗口中执行arp -d命令,记录实验结果;(2)执行arp a命令,记录实验结果。(2)在两台中的任一台上执行ping 另一台的IP;(3)执行完成后执行arp -a命令,记录实验结果,注意和(2)相比,结果的变化。2.在执行步骤1的同时捕获ARP报文,并对捕获的结果进行分析,记录在如下表格中。 表1 ARP 报文分析 ARP 请求报文ARP 应答报文字段报文信息及参数字段报文信息及参数硬件类型硬件类型协议类型协议类型硬件地址长度硬件地址长度协议地址长度协议地址长度操作操作源站物理地址源站物理地址源站IP 地址源站IP 地址目的站物理地址目的站物理地址目的站IP 地址目的站IP 地址 附录:(假设实验的两台计算机为192.168.7.85和192.168.7.87)实验步骤1的可能结果:步骤2:在执行步骤1时,如果同时抓取报文,则抓取的结果中应包含ARP的请求报文和响应报文。请求报文如下:响应报文为:实验二 IP 协议分析 一实验目的1.熟悉IP协议的报文格式;2.理解IP地址的作用。二实验内容捕获IP协议报文,并进行分析。三实验原理 1 IP 协议介绍 (1)IP 地址的编址方法 IP 地址是为每个连接在互联网上的主机分配的唯一识别的 32 位标识符。IP 地址的编址方法共经历了三个阶段,其中最初采用的是分类的IP地址,这是一种基于分类的两级IP 地址编址的方法。 表2 IP 地址的分类IP 地址类型第一字节十进制范围二进制固定最高位二进制网络位二进制主机位A 类1-12608 位24 位B 类128 1911016 位16 位C 类192 22311024 位8 位D 类224 2391110组播地址E 类240 2541111保留试验使用 如表2 所示,IP 地址分为A,B,C,D,E 五类,其中A、B、C 类地址为可分配主机地址,而D 类地址为组播地址,E 类地址保留以备将来的特殊使用。IP 地址采用点分十进制方式记录,每个地址表被视为4 个以点分隔开的十进制整数,每个整数对应一个字节。 A、B、C 三类地址由两部分组成:网络地址和主机地址,这三类地址的网络地址部分的 长度不一样。每个A 类地址的网络中可以有 1600 万台主机;每个B 类地址的网络中可以有 65534 台主机;每个C 类地址的网络中可以有254 台主机。 (2)IP 报文格式 IP 报文由报头和数据两部分组成,如图9 所示: 图9 IP 报文格式 其中主要字段的意义和功能如下: * 版本:指IP 协议的版本; * 头长:是指IP 数据报的报头长度,它以4 字节为单位。IP 报头长度至少为 20 字节,如果选项部分不是4 字节的整数倍时,由填充补齐; * 总长度:为整个IP 数据报的长度; * 服务类型:规定对数据报的处理方式; * 标识:是IP 协议赋予数据报的标志,用于目的主机确定数据分片属于哪个报文; * 标志:为三个比特,其中只有低两位有效,这两位分别表示该数据报文能否分段和是 否该分段是否为源报文的最后一个分段; * 生存周期:为数据报在网络中的生存时间,报文每经过一个路由器时,其值减 1,当生存周期变为 0 时,丢弃该报文;从而防止网络中出现循环路由; * 协议:指IP 数据部分是由哪一种协议发送的; * 校验和:只对IP 报头的头部进行校验,保证头部的完整性; * 源IP 地址和目的IP 地址:分别指发送和接收数据报的主机的IP 地址。 (3)IP 数据报的传输过程 在互联网中,IP 数据报根据其目的地址不同,经过的路径和投递次数也不同。当一台主机要发送 IP 数据报时,主机将待发送数据报的目的地址和自己的子网掩码按位 “与”,判断其结果是否与其所在网络的网络地址相同,若相同,则将数据报直接投递给目的主机,否则,将其投递给下一跳路由器。 路由器转发数据报的过程如下: 当路由器收到一个数据报文时,对和该路由器直接相连的网络逐个进行检查,即用目的地址和每个网络的子网掩码按位 “与”,若与某网络的网地址相匹配,则直接投递;否则,执行2。 对路由表的每一行,将其中的子网屏蔽码与数据报的目的地址按位 “与”,若与该行的目的网络地址相等,则将该数据报发往该行的下一跳路由器;否则,执行3。 若路由表中有一个默认路由,则将数据报发送给路由表所指定的默认路由器。否则,报告转发出错。 四实验步骤使用 Ping 命令在两台计算机之间发送数据报,用Wireshark 截获数据报,分析IP 数据报的格式,理解IPv4 地址的编址方法,加深对IP 协议的理解。 不带参数的ping命令,默认向目标主机发送数据为32个字节长度的ICMP回送请求报文,封装在IP数据报中。数据包如果顺利到达目的主机,则目的主机会返回一个回送请求报文,该报文会携带原始的数据。如果传输过程中出错,数据不能继续转发传输,则会向发送主机返回一个差错报文,报告发送主机数据传输过程中出现的问题。环境应有局域网连接,学生两两一组,开展实验。 分析报文中IP 数据报头的格式,完成下表: 表3 IP 协议报文分析 字段报文信息说明 版本 头长 服务类型 总长度 标识 标志 片偏移 生存周期 协议 校验和 源地址 目的地址 附录:假设实验中192.168.7.87向192.168.7.85发送ping报文,则发出的请求报文可能如下:收到的响应报文可能如下:实验三 ICMP 协议分析一实验目的:1熟悉ICMP协议的主要内容2.掌握获取ICMP协议几种常用报文的方法;3.理解ICMP协议的主要用途;4.理解ping、tracert命令的原理。二实验内容1.捕获ICMP的常见报文(回送请求、回送响应、超时、目标不可达等),并进行分析。2.分析tracert命令所产生的网络报文三实验原理1 ICMP 协议介绍ICMP(Internet Control Message Protocol)是因特网控制报文协议RFC792的缩写,是因特网的标准协议。ICMP允许路由器或主机报告差错情况和提供有关信息,用以调试、监视网络。 (1)ICMP 的报文格式 图10 ICMP 回送请求和应答报文格式 在网络中,ICMP 报文将封装在IP 数据报中进行传输。由于ICMP 的报文类型很多,且 又有各自的代码,因此,ICMP 并没有一个统一的报文格式供全部 ICMP 信息使用,不同的 ICMP 类别分别有不同的报文字段。 ICMP 报文只在前 4 个字节有统一的格式,即类型、代码和校验和 3 个字段。接着的4 个字节的内容与ICMP 报文类型有关。图20 描述了ICMP 的回送请求和应答报文格式,ICMP 报文分为首部和数据区两大部分。其中: * 类型:一个字节,表示ICMP 消息的类型,内容参见表5; * 代码:一个字节,用于进一步区分某种类型的几种不同情况; * 校验和:两个字节,提供对整个ICMP 报文的校验和; (2)ICMP 的报文类型 ICMP 报文的种类可以分为ICMP 差错报告报文和ICMP 询问报文两种,表4 列出了已定义的几种ICMP 消息。 表4 ICMP 消息及类型码 类型的值ICMP 消息类型类型的值ICMP 消息类型0回送(Echo)应答12参数出错报告3目的站点不可达13时间戳(Timestamp)请求4源站点抑制(Source quench)14时间戳(Timestamp)应答5路由重定向(Redirect)15信息请求8回送请求16信息应答9路由器询问17地址掩码(Address mask)请求10路由器通告18地址掩码(Address mask) 应答11超时报告 其中差错报告报文主要有目的站点不可达、源站点抑制、超时、参数问题和路由重定向5 种;ICMP 询问报文有回送请求和应答、时间戳请求和应答、地址掩码请求和应答以及路由器询问和通告4 种。 (3)ICMP 常见的消息类型 下面介绍几种常用的ICMP 消息类型。 * 目的站点不可达(3) 产生 “目的站点不可达”的原因有多种。在路由器不知道如何到达目的网络、数据报指定的源路由不稳定、路由器必须将一个设置了不可分段标志的数据报分段等情况下,路由器都会返回此消息。如果由于指明的协议模块或进程端口未被激活而导致目的主机的IP 不能传送数据报,这时目的主机也会向源主机发送 “目的站点不可达”的消息。 为了进一步区分同一类型信息中的几种不同情况,在ICMP 报文格式中引入了代码字段,该类型常见信息代码及其意义如下: 表5 ICMP 类型3 的常见代码 代码 描述 处理代码 描述 处理 0 网络不可达; 无路由到达主机1 主机不可达; 无路由到达主机 2 协议不可用; 连接被拒绝3 端口不可达; 连接被拒绝 4 需分段但DF 值为 0; 报文太长5 源路由失败; 无路由到达主机 * 源站点抑制 (4) 此消息类型提供了流控制的一种基本形式。当数据报到达得太快,路由器或主机来不及处理时,这些数据报就必须被丢弃。丢弃数据报的计算机就会发一条“源站点抑制”的ICMP报文。“源站点抑制”消息的接收者就会降低向该消息发送站点发送数据报的速度。 * 回送请求 (8)和回送应答 (0) 这两种ICMP 消息提供了一种用于确定两台计算机之间是否可以进行通信的机制。当一个主机或路由器向一个特定的目的主机发出ICMP 回送请求报文时,该报文的接收者应当向源主机发送ICMP 回送应答报文。 * 时间戳请求 (15)和时间戳应答 (16) 这两种消息提供了一种对网络延迟进行取样的机制。时间戳请求的发送者在其报文的信息字段中写入发送消息的时间。接收者在发送时间戳之后添加一个接收时间戳,并作为时间戳应答消息报文返回。 * 地址掩码请求 (17)和地址掩码应答 (18) 主机可以用 “地

    注意事项

    本文(网络协议分析实验指导书 .doc)为本站会员(laozhun)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开