ip捕获与分析-网络14-2班

上传人:ji****en 文档编号:107675955 上传时间:2019-10-20 格式:DOC 页数:21 大小:142.72KB
返回 下载 相关 举报
ip捕获与分析-网络14-2班_第1页
第1页 / 共21页
ip捕获与分析-网络14-2班_第2页
第2页 / 共21页
ip捕获与分析-网络14-2班_第3页
第3页 / 共21页
ip捕获与分析-网络14-2班_第4页
第4页 / 共21页
ip捕获与分析-网络14-2班_第5页
第5页 / 共21页
点击查看更多>>
资源描述

《ip捕获与分析-网络14-2班》由会员分享,可在线阅读,更多相关《ip捕获与分析-网络14-2班(21页珍藏版)》请在金锄头文库上搜索。

1、哈尔滨理工大学技 能 训 练 报 告 题目:IP包的捕获与分析院 系:计算机科学与技术学院 网络工程系班 级: 网络14-2姓名: 陈雷1404020204成 绩: 2017年9月20日- 19 -IP数据包的捕获与分析一、实训目的在互联网迅速发展的时代潮流下,我们已经进入了这个与网络密切相关的Internet时代,计算机信息技术更是成为了当前时代下不同领域的共同特征。学校可以利用各种网络资源和技术来提高对学校的管理工作,对教育的创新改革和打造学校品牌都具有不可忽略的意义。学校作为当下时代的人才培养基地,每年的毕业设计工作都是学校教学工作的一个重要环节。网络层作为计算机网络中重要的一层,并且t

2、cp/ip协议也有着非常广泛的应用,那么对IP的相关协议也有了越来越多的发展,这一次,我们就通过对IP的捕获与分析,来对IP做更深入的了解。随着个人计算机和互联网的普及,使我们从一个封闭的环境进入到一个开放的世界,越来越多的人开始使用网络这个媒介来发送,接收信息,计算机网络给人们生产和生活带来了巨大的便利。但是由于网络是一个面向大众的开放系统,它的这种特性决定了其对数据信息的保密和系统的安全性考虑并并不完备,存在着诸多的安全隐患。因此让有些个人或团体有机可乘,利用这些隐患和漏洞,通过网络来发送一些包含色情,反动等不良内容的信息,或通过网络入侵他人主机盗取信息和机密,达到破坏正常社会秩序的目的,

3、以至于计算机网络的安全形势日趋严峻。因此,现在在计算机网络安全隐患中扮演重要角色之一的网络数据抓包软件受到越来越大的关注。 构建安全网络环境,除了通过主动的人为思想的预防以外,一套被动的网络安全检测机制也是必不可少的,通过运用标准的机制对网络中传输的各类型进行实时监控,对具有威胁性的信息进行甄别警报,这套机制的前提就是首先对网络中传输的信息进行捕获,对获取的信息解析筛查。而想要捕获这些信息,就要知道网络中的信息是以数据包的形式进行传输,想要获取信息,就必须对网络中的数据包进行捕获和分析,才能获得所需要的相应信息。所以对网络上传送的数据包进行有效的捕获与解析是目前网络监控的关键技术,只有能够进行

4、高效的网络数据包捕获和解析,才能为网管人员听过相应的数据进行分析或其他操作,从而进一步的施行网络安全监控和管理。 IP数据包是网络中最常见的数据包类型,而IP也是TCP/IP协议族中最为核心的协议。所含有有的TCP、UDP、ICMP及IGMP数据都以IP数据报格式传输,其中又主要以TCP和UDP两种数据类型为多数。所以掌握了对IP数据包的捕获与分析技术,就能对网络中传输的大部分数信息进行监控和管理。计算机之间进行通信时,交互的所有信息都封装在数据包中。因此,通过采集网络数据并对其进行相应的分析,可以清楚地了解到进行通信的计算机的通信目的。首先,分析采集到的数据包,可以确定网络是否受到攻击入侵;

5、其次,也可以使用采集到的数据包来分析网络应用程序可能出现的问题的原因;此外,通过网络数据采集和统计可以清楚的了解整个网络在各个时段内的网络负载情况,从而判断网络使用得是否合理。除了以上谈到的几个方面以外,数据包采集分析还有其他很多用途.在研究IPv4网络的同时,我们还对IPv6协议进行了初步的研究并通过对数据报的分析,了解了在不同网络环境下IPv6数据包的封装格式以及在网络中的传输路径。目前,在同一子网范围内,可以通过邻居计算机发现协议自动配置主机的本地一链路IPv6地址,并获取子网内其他主机的通信地址,通过该地址可以实现子网内的主机间纯IPv6环境下的通信。但由于现在整个因特网并不支持IM协

6、议,因此IPv6数据包要在网间传输,必须通过基于双协议栈的IPv4隧道(Tunnel)技术,将EM数据报封装在IPv4包头中,并通过指定的支持IM协议的路由在Internet中传送到目的地,再由目的主机进行数据报解析。获取IPv6数据报中的信息。网络层作为计算机网络中重要的一层,并且TCP/IP协议也有着非常广泛的应用,那么对IP的相关协议也有了越来越多的发展,这一次,我们就通过对IP的捕获与分析,来对IP做更深入的了解。二、实训任务学会对Winpcap包进行配置,并进行相应编程,捕获经过本机的IP数据包,解析包头信息,并将信息详细显示出来,形成文档,便于查询。明确综合课程设计的目的,能根据综

7、合课程设计的要求,查阅相关文献,为完成设计准备必要的知识; 提高学生用高级语言进行程序设计的能力,重点提高用C+语言捕获网络数据包的编程技术水平;了解软件开发的一般方法和步骤;提高撰写技术文档的能力。三、实训内容3.1系统总体内容3.1.1课程设计题目与要求本次实验的要求在网络环境,使用VC+编写程序实现捕获网络中的IP数据包,解析数据包的内容,将结果显示在标准输出上,并同时写入日志文件。程序的具体要求如下:(l)以命令行形式运行:ipparse logfile,其中ipparse是程序名,而logfile则代表记录结果的日志文件。(2)在标准输出和日志文件中写入捕获的IP包的版本、头长度、服

8、务类型、数据包总长度、数据包标识、分段标志、分段偏移值、生存时间、上层协议类型、头校验和、源IP地址和目的IP地址等内容。(3)当程序接收到键盘输入CtrlC时退出。3.1.2 IP数据包格式下图是IP数据包的格式:IP数据包由首部和数据两部分组成。首部的前一部分是固定长度,共 20 字节,是所有IP数据报必须具有的。在首部的固定部分的后面是一些可选字段,其长度是可变的,可选字段之后是数据部分。其中,首部固定部分中的各字段的长度及意义如下:1.版本占4位,指IP协议的版本。通信双方使用的IP协议版本必须一致。目前广泛使用的IP协议版本号为4(即IPv4)。关于IPv6,目前还处于草案阶段。2.

9、首部长度占4位,可表示的最大十进制数值是15。请注意,这个字段所表示数的单位是32位字长(1个32位字长是4字节),因此,当IP的首部长度为1111时(即十进制的15),首部长度就达到60字节。当IP分组的首部长度不是4字节的整数倍时,必须利用最后的填充字段加以填充。因此数据部分永远在4字节的整数倍开始,这样在实现IP协议时较为方便。首部长度限制为60字节的缺点是有时可能不够用。但这样做是希望用户尽量减少开销。最常用的首部长度就是20字节(即首部长度为0101),这时不使用任何选项。3.区分服务占8位,用来获得更好的服务。这个字段在旧标准中叫做服务类型,但实际上一直没有被使用过。1998年IE

10、TF把这个字段改名为区分服务DS(Differentiated Services)。只有在使用区分服务时,这个字段才起作用。4.总长度总长度指首部和数据之和的长度,单位为字节。总长度字段为16位,因此数据报的最大长度为216-1=65535字节。在IP层下面的每一种数据链路层都有自己的帧格式,其中包括帧格式中的数据字段的最大长度,这称为最大传送单元MTU(Maximum Transfer Unit)。当一个数据报封装成链路层的帧时,此数据报的总长度(即首部加上数据部分)一定不能超过下面的数据链路层的MTU值。5.标识(identification)占16位。IP软件在存储器中维持一个计数器,每

11、产生一个数据报,计数器就加1,并将此值赋给标识字段。但这个“标识”并不是序号,因为IP是无连接服务,数据报不存在按序接收的问题。当数据报由于长度超过网络的MTU而必须分片时,这个标识字段的值就被复制到所有的数据报的标识字段中。相同的标识字段的值使分片后的各数据报片最后能正确地重装成为原来的数据报。6.标志(flag)占3位,但目前只有2位有意义。标志字段中的最低位记为MF(More Fragment)。MF=1即表示后面“还有分片”的数据报。MF=0表示这已是若干数据报片中的最后一个。标志字段中间的一位记为DF(Dont Fragment),意思是“不能分片”。只有当DF=0时才允许分片。7.

12、片偏移占13位。片偏移指出:较长的分组在分片后,某片在原分组中的相对位置。也就是说,相对用户数据字段的起点,该片从何处开始。片偏移以8个字节为偏移单位。这就是说,每个分片的长度一定是8字节(64位)的整数倍。8.生存时间占8位,生存时间字段常用的的英文缩写是TTL(Time To Live),表明是数据报在网络中的寿命。由发出数据报的源点设置这个字段。其目的是防止无法交付的数据报无限制地在因特网中兜圈子,因而白白消耗网络资源。最初的设计是以秒作为TTL的单位。每经过一个路由器时,就把TTL减去数据报在路由器消耗掉的一段时间。若数据报在路由器消耗的时间小于1秒,就把TTL值减1。当TTL值为0时

13、,就丢弃这个数据报。后来把TTL字段的功能改为“跳数限制”(但名称不变)。路由器在转发数据报之前就把TTL值减1.若TTL值减少到零,就丢弃这个数据报,不再转发。因此,现在TTL的单位不再是秒,而是跳数。TTL的意义是指明数据报在网络中至多可经过多少个路由器。显然,数据报在网络上经过的路由器的最大数值是255.若把TTL的初始值设为1,就表示这个数据报只能在本局域网中传送。9.协议占8位,协议字段指出此数据报携带的数据是使用何种协议,以便使目的主机的IP层知道应将数据部分上交给哪个处理过程。10.首部检验和占16位。这个字段只检验数据报的首部,但不包括数据部分。这是因为数据报每经过一个路由器,

14、路由器都要重新计算一下首部检验和(一些字段,如生存时间、标志、片偏移等都可能发生变化)。不检验数据部分可减少计算的工作量。11.源地址占32位。为发送方的IP地址。12.目的地址占32位。为接收方的IP地址。3.1.3 实验环境本实验采用Windows操作系统平台,利用Windows提供的Windows Sockets API实现IP数据包的捕获与分析。采用WinSock 2.2版本,编程语言选用C+,编程工具采用Visual Studio 2010旗舰版。1. 系统开发环境本实验采用Windows操作系统平台,利用Windows提供的Windows Sockets API实现IP数据包的捕获

15、与分析。采用WinSock 2.2版本,编程语言选用C+,编程工具采用Visual Studio 2010旗舰版。CPU: Intel core 2Duo processor T5300 1.73GHz内存:1.5G硬盘空间:120G2. 网络设备网卡、HUB、网线等。3. 工具简介 开发工具1:Visual Studio 2010开发工具2:WinPcap_4_1_1和WpdPack_4_1_1 Winpcap提供给用户两个不同级别的编程接口:一个基于libpcapwpcap.dll,另一个是较底层的packet.dll。对于一般的要与unix平台上libpcap兼容的开发来说,使用wpcap.dll是当然的选择。Winpcap的主要功能:在于独立于主机协议(如TCP-IP)而发送和接收原始数据包。也就是说,Winpcap不能阻塞,过滤或控制其他应用程序数据包的发收,它仅仅只是监听共享网络上传送的数据包。因此,它不能用于QoS调度程序或个人防火墙。目前,Winpcap开发的主要对象是windows NT/2000/XP,这主要是因为在使用Winpcap的用户中只有一小部分是仅使用windows 95/98/Me,并且M$也已经放弃了对win9x的开发。因此本文相关的程序T-ARP也

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

当前位置:首页 > 电子/通信 > 综合/其它

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