重邮网络协议分析实验报告_第1页
重邮网络协议分析实验报告_第2页
重邮网络协议分析实验报告_第3页
重邮网络协议分析实验报告_第4页
重邮网络协议分析实验报告_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

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

文档简介

重邮网络协议分析实验报告篇一:网络协议分析实验报告网络协议分析实验报告 学院: 班级: 姓名: 学号: 1 实验 1 基于 ICMP的 MTU测量方法 实验目的1) 掌握 ICMP协议 2) 掌握 PING程序基本原理 3) 掌握 socket编程技术 4) 掌握 MTU测量算法 实验任务 编写一个基于 ICMP协议测量网络 MTU的程序,程序需要完成的功能: 1)使用目标 IP地址或域名作为参数,测量本机到目标主机经过网络的 MTU; 2)输出到目标主机经过网络的 MTU。 实验环境 1)Linux 系统; 2)gcc 编译工具,gdb 调试工具。 实验步骤 1. 首先仔细研读例程,熟悉 linux下 socket原始套接字编程模式,为实验做好准备; 2. 生成最大数据量的 IP数据报(64K) ,数据部分为ICMP格式,ICMP 报文为回送请求报文,IP 首部 DF位置为1;由发送线程发送; 3. 如果收到报文为目标不可达报文,减少数据长度,再次发送,直到收到回送应答报文。至此,MTU 测量完毕。 实验原理 ICMP:ICMP 是(Internet Control Message Protocol)Internet 控制报文协议。它是 TCP/IP协议族的一个子协议,用于在 IP主机、路由器之间传递控制消息。控制消息是指网络通不通、主机是否可达、路由是否可用等网络本身的消息。这些控制消息虽然并不传输用户数据,但是对于用户数据的传递起着重要的作用。 PING 程序基本原理:向网络上的另一个主机系统发送ICMP报文,如果指定系统得到了报文,它将把报文一模一样地传回给发送者。 MTU:是网络最大传输单元(包长度) ,IP 路由器必须对超过 MTU的 IP报进行分片目 2 的主机再完成重组处理,所以确定源到目的路径 MTU对提高传输效率是非常必要的。确定路 径 MTU的方法是“要求报文分片但又不被允许”的ICMP报文。IPV4 数据结构分析: 3 4实验截图 发送一系列的长度递减的不允许分片的数据报,通过接收返回的 ICMP报的分析,可确定路径 MTU,如下图所示:MTU 值为 1430 5 篇二:网络协议分析实验报告课 程 设 计 课程设计题目学 生 姓 名 : 学 号: 专 业:XX 年 6 月 29 日 实验 1 基于 ICMP的 MTU测量方法 实验目的 1) 掌握 ICMP协议 2) 掌握 PING程序基本原理 3) 掌握 socket编程技术 4) 掌握 MTU测量算法 实验任务 编写一个基于 ICMP协议测量网络 MTU的程序,程序需要完成的功能: 1)使用目标 IP地址或域名作为参数,测量本机到目标主机经过网络的 MTU; 2)输出到目标主机经过网络的 MTU。 实验环境 1)Linux 系统; 2)gcc 编译工具,gdb 调试工具。 实验步骤 1. 首先仔细研读例程,熟悉 linux下 socket原始套接字编程模式,为实验做好准备; 2. 生成最大数据量的 IP数据报(64K) ,数据部分为ICMP格式,ICMP 报文为回送请求报文,IP 首部 DF位置为1;由发送线程发送; 3. 如果收到报文为目标不可达报文,减少数据长度,再次发送,直到收到回送应答报文。至此,MTU 测量完毕。 ICMP 协议是一种面向无连接的协议,用于传输出错报告控制信息。它是一个非常重要的协议,它对于网络安全具有极其重要的意义。1它是 TCP/IP协议族的一个子协议,属于网络层协(来自: 小 龙 文档网:重邮网络协议分析实验报告)议,主要用于在主机与路由器之间传递控制信息,包括报告错误、交换受限控制和状态信息等。当遇到 IP数据无法访问目标、IP路由器无法按当前的传输速率转发数据包等情况时,会自动发送 ICMP消息。ICMP 报文在 IP帧结构的首部协议类型字段(Protocol 8bit)的值=1. ICMP 提供一致易懂的出错报告信息。发送的出错报文返回到发送原数据的设备,因为只有发送设备才是出错报文的逻辑接受者。发送设备随后可根据 ICMP报文确定发生错误的类型,并确定如何才能更好地重发失败的数据包。但是 ICMP唯一的功能是报告问题而不是纠正错误,纠正错误的任务由发送方完成。 我们在网络中经常会使用到 ICMP协议,比如我们经常使用的用于检查网络通不通的 Ping命令(Linux 和Windows中均有) ,这个“Ping”的过程实际上就是 ICMP协议工作的过程。还有其他的网络命令如跟踪路由的 Tracert命令也是基于 ICMP协议的。 ICMP(Internet Control Message,网际控制报文协议)是为网关和目标主机而提供的一种差错控制机制,使它们在遇到差错时能把错误报告给报文源发方.是 IP层的一个协议。但是由于差错报告在发送给报文源发方时可能也要经过若干子网,因此牵涉到路由选择等问题,所以 ICMP报文需通过 IP协议来发送。ICMP 数据报的数据发送前需要两级封装:首先添加 ICMP报头形成 ICMP报文,再添加 IP报头形成 IP数据报 通信术语 最大传输单元(Maximum Transmission Unit,MTU)是指一种通信协议的某一层上面所能通过的最大数据包大小(以字节为单位) 。最大传输单元这个参数通常与通信接口有关(网络接口卡、串口等) 。 实验 2 基于 UDP的 traceroute程序 实验目的 1) 掌握 UDP协议 2) 掌握 UDP客户机/服务器编程模式 3) 掌握 socket编程技术 4) 掌握 traceroute算法 实验任务1. 熟悉程序和,使用网络嗅探器(如 wireshark)分析 UDP通讯数据报格式; 2. 编写一个基于 UDP协议的网络路径记录程序程序,程序需要完成的功能: 1)使用目标 IP地址或域名作为参数,测量本机到目标主机经过的路由器 IP地址; 2)输出到目标主机经过网络路由器 IP地址。 实验环境 1)Linux 系统; 2)gcc 编译工具,gdb 调试工具。 实验步骤 1. 首先分别编译程序和,编译命令如下: gcc o udp-client gcc o udp-server 启动网络嗅探程序:wireshark。 打开两个终端窗口,进入程序所在目录,分别运行./udp-client和./udp-server,查看 wireshark采集到的UDP通讯数据,截图并结合图对 UDP协议格式进行说明; 2. 通过 socket编程,发送 udp数据报,设置目的端口号为不常用的值,TTL 值初始为 1,逐步增加,接收超时ICMP报文和 ICMP不可达报文;如果接收到 ICMP超时报文,则记录发送 ICMP超时报文的路由器 IP地址,如果收到ICMP不可达报文,则为目的主机到达; 3. 输出记录的所有路由器 IP地址。 实验结果 1 篇三:网络协议分析实验总结实验一 IP 协议 练习一利用仿真编辑器发送 IP数据包 描述:收发 IPv4报文,不填上层协议. 问题:查看捕获到得报文长度是 60,和你编辑的报文长度不同,为什么? 最小帧长度为 60,当不足 60时,在源数据尾部添加0补足。 讨论,为什么会捕获到 ICMP目的端口不可达差错报文? 差错报文的类型为协议不可达,因为上层协议为 0,未定义。 练习二编辑发送 IPV6数据包 描述:收发 IPv6报文. 问题:比较 IPV4头,IPV6 有了那些变化?IPV4 的TTL字段在 IPV6里对应那个字段? 比较 IPv4 和 IPv6 的报头,可以看到以下几个特点: 字段的数量从 IPv4 中的 13(包括选项)个,降到了 IPv6 中的 8 个; 中间路由器必须处理的字段从 6 个降到了 4 个,这就可以更有效地转发普通的 IPv6 数据包; 很少使用的字段,如支持拆分的字段,以及 IPv4 报头中的选项,被移到了 IPv6 报头的扩展报头中; IPv6 报头的长度是 IPv4 最小报头长度(20 字节)的两倍,达到 40 字节。然而,新的 IPv6 报头中包含的源地址和目的地址的长度,是 IPv4 源地址和目的地址的 4 倍。 对应:跳限制-这个 8位字段代替了 IPv4中的 TTL字段。 练习三:特殊的 IP地址 描述:直接广播地址包含一个有效的网络号和一个全“1”的主机号,只有本网络内的主机能够收到广播,受限广播地址是全为 1的 IP地址;有限广播的数据包里不包含自己的 ip地址,而直接广播地址里包含自身的 ip地址 练习四: IP 包分段实验 问题:讨论,数据量为多少时正好分两片?1480*2=2960 练习五: netstat 命令 描述: C:netstat s;查看本机已经接收和发送的 IP报文个数 C:netstat s ;查看本机已经接收和发送的 IP报文个数 C:netstat e ;观察以太网统计信息, 实验二 ARP 协议 练习一维护 ARP 缓存表 描述: :查看 ARP缓存:arp a 手动建立 ARP 表 :arp s IP (如) MAC(如:00-E0-4D-3D-84-53) 清空 ARP 缓存表:arp d 练习二仿真发送 ARP 请求报文 描述:ARP 协议叫物理解析协议,是根据 IP地址获取物理地址的一个 TCP/IP协议。主机发送信息时将包含目标 IP地址的 ARP请求广播到网络上的所有主机,并接收返回消息,以此确定目标的物理地址;收到返回消息后将该 IP地址和物理地址存入本机 ARP缓存中并保留一定时间 ICMPv4 协议 练习一利用仿真编辑器编辑 ICMP 回显请求报文 练习二仿真发送 ICMP 时间戳请求报文 描述: ICMP 封装在 IP报文里面,一个 ICMP报文 32位,8位类型,八位代码,16 位校验和 ICMPv6 只是把 ICMP放在了 IPv6数据包的载荷中. 实验三 ARP 练习一发送 ARP 请求报文(不同网段内) 描述:在跨越路由器进行通信的时候,发起通讯的主机发现目的地址不在同一个网段,会先查询路由器的地址,于是广播出 ARP请求,路由器的入口网卡发现有一个 ARP请求的目的 IP是自己的 IP地址,于是回复自己的 Mac,得到了Mac,发起通信的主机将通信内容发送到路由器的入口网卡,并选路到出口网卡,此时出口网卡需要知道目标的 Mac,于是广播出 ARP查询,目标机回复自己的 Mac,路由器的出口网卡成功的将信息发送到目标机器. 练习二 ICMP 差错报文 描述:ICMP 目的端口不可达/超时/的情况.注意为了模拟目的端口不可达,某主机 ping一个不存在的 IP地址,为了模拟超时,向一个跨路由器的目标通信,但是 TTL设置为 1,路由器会丢弃 TTL耗尽的包,因为根本就收不到,所以当然就没有回复,就会超时 试验 ARP 欺骗 描述:1、ARP 高速缓存 ARP 缓存表是记录 IP 地址和 MAC 地址的映射关系。ARP 表分为动态更新和静态更新两种,系统默认动态,更新时间为 120 秒。ARP 表的建立是通过以下两个途径: 主动解析:如果一台计算机想与另一台不知道 MAC 地址的计算机通信,则该计算机主动发 ARP 请求; 被动解析:如果一台计算机接收到了一台计算机的 ARP 请求,则首先在本地建立请求计算机的 IP 地址和 MAC 地址的对应表; ARP 地址欺骗正是利用高速缓存,使高速缓存中存在错误的映射关系,误导数据包发往错误的目的地。 2、ARP 地址欺骗的原理 一般情况下,当系统收到 ARP 请求或应答时,都要把源端的硬件地址和 IP 地址填入 ARP 高速缓存。正是 根据这一性质,为 ARP 欺骗提供了条件。 编辑一个 ARP 应答数据包,将 ARP 层的源 IP 地址为主机 A 的 IP 地址,将 ARP 层的源 MAC 地址填为主机B 的 MAC 地址,将 MAC 层的源地址填为主机 A 的 MAC 地址,发送这个数据包。当到达目的主机时,由于 ARP特性:当系统收到 ARP 请求或应答时,都要把请求端的硬件地址和协议地址填入 ARP 高速缓存。所以在向 ARP 高速缓存中添加表项时,添加的是主机 A 的 IP 地址和主机 B 的 MAC 地址值。当要向主机 A 发送数据包时,要发送的数据包的目的 MAC 地址填入了由高速缓存中提取的地址(主机 B 的 MAC 地址),这样,要发送给主机 A的数据包被发送给了主机 B。 实验 ICMP Redirect 练习一利用 ICMP 重定向进行信息窃取 描述:主机可能会把某数据发送到一个错误的路由。在这种情况下,收到该数据的路由器会把数据转发给正确的路由器,同时,它会向主机发送 ICMP 重定向报文,来改变主机的路由表。给主机来指出存在一个更好的路由。 试验时,主机 A给 E发送报文,主机 B作为路由器,主机 C给 A发送 ICMP重定向报文,在网关地址中添加自己的IP地址,并按照上表填写 ICMP数据部分,此时主机 A的路由表中出现了主机 A到 E的一条记录,网关是 C的 IP地址; 问题:说明 ICMP 重定向的意义. 意义:ICMP 重定向使得客户端管理工作大大减少,使得对于主机的路由功能要求大大降低。而且当路由线路非最优化是线路的速度一定有所损失。而有了重定向之后可以很快的修改非最优线路提高通信速度。 实验四 UDP练习一利用仿真编辑器编辑 UDP 数据包并发送 描述:UDP 和 TCP都是传输层的协议,他们被应用层使用,为了实现多路复用和多路分解,应用层使用了端口号,所以 UDP中需要填写源端口和目的端口. 问题:将 UDP 的校验和填“0” ,在捕获包中查看校验和是否正确? 正,UDP 没有纠错能力,也没有回执机制,所以即使它能够发

温馨提示

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

评论

0/150

提交评论