搜档网
当前位置:搜档网 › 分析IP协议数据包格式

分析IP协议数据包格式

实验名称:

分析IP协议数据包格式

实验目的:

掌握IP协议的作用和格式;

理解IP数据包首部各字段的含义;

掌握IP数据包首部校验和的计算方法。

实验器材:

计算机及以太网环境。

实验内容(步骤):

1.打开Wireshark软件,选择菜单命令“Capture” “Interfaces…”子菜单项。弹

出“Wireshark: Capture Interfaces”对话框。单击“Options”按钮,弹出“Wireshark: Capture Options”对话框。单击“Start”按钮开始网络数据包捕获。

2.浏览外部网站,确保协议分析软件能够捕获足够的网络数据包,单击“Stop”按

钮,中断网络协议分析软件的捕获进程,主界面显示捕获到的数据包。

几乎所有的高层协议都使用IP协议进行网络传输,只有ARP和RARP报文不被封装在IP数据报中。

3.观察协议树区中IP数据包各个字段的长度与值,是否符合IP报文格式。

对帧61的IP数据包进行分析

Internet Protocol互联网协议( IP )源:61.135.163.233,目标:192.168.1.2

Version(版本):一个4字节的字段。表示当前正运行的IP版本信息。上图中版本的信息是IPv4。

Header length IP(报头长度):一个4字节的字段,表示以32比特为单位的信息中数据包报头的长度。这是所有报头信息的总长度。上图为20字节

Differentiated services Filed(服务的类别):一个8字节的字段,表示一个特定的上层协议所分配的重要级别。

Differentiated Services Codepoint(差分服务代码点6位):默认的DSCP值是0,相当于尽力传送。

two-bit Explicit Congestion Notification field(2位明确的拥塞通知字段)

ECN-Capable Transport:(ECN Explicit Cogestion Notification -Capable Transport):显式拥塞指示能力传输字段,该ECN-Capable Transport (ECT) bit将被数据发送者设置,以表明传输协议的末端节点有ECN的能力。

ECT bit设置为“ 0 ”表明该传输协议将忽略ignore CE bit。这是ECT bit的默认值。

ECT bit设置为“ 1 ”表示该传输协议愿意willing并and能够参与在ECN。

ECN-CE (Congestion Experienced): (参见rfc3168#page-6)。CE bit将由路由器设置,对末端节点end nodes的表明挤塞情况。当路由器有满full队列后,它将丢弃其后到达的数据包。CE bit.默认值为“ 0 ”。路由器设定CE bit为“ 1 ”,说明对末端节点挤塞。在数据包头部中CE bit从不会由路由器从“1”重置“0”。

两者的区别——参见rfc2481.txt [Page 20] Why use two bits in the IP header Total length(总长度):一个16字节的字段,表示整个数据包的长度。包括数据和报头。

从该值中减去Header length值的长度,得到的就是数据有效负荷的长度。在上图中该值为40。

Identification(标识符):一个16字节的字段,它包含一个整数序列号,用来表示当前的数据包。上图为0x1216(4630)

Flag(标记):一个3字节的字段,其中后两位控制分片。

Fragment offset(分片的偏移量):它帮助重组分片。上图为0。

Time to live(存活时间):一个8字节的字段,它维护着一个计数器。这个计数器会按一定增量逐渐减少为0.当到0时,该数据包将被丢弃。这保证了数据包不会无限制的循环。上图为52。

Protocol(协议):一个8字节的字段,它表示在IP处理过程结束后,将会有哪个上层协议接收。在上图中为TCP(6)。

Header checksum(报头的校验和):一个16字节的字段,它帮助确保报头的正确性。上图0x919f正确(correct)

Source(源IP地址):一个32字节的字段,它表示发送设备的IP地址。上图为

61.135.163.233。

Destination(目的IP地址):一个32字节的字段,它表示接收设备的IP地址。上图为192.168.1.2。

4.查看各个IP数据包的标识字段和片偏移字段,它们有何特征。

多数都为0

5.查看各个IP数据包的数据报总长度字段,记录它的取值范围。

28 40 52 229 242 476 631 658 826

6.观察十六进制对照区,根据IP首部校验和方法使用“计算器”校验捕获的数据报

中校验和字段的值。

首部校验和:0x919f

45 00

00 28

12 16

40 00

34 06

xx xx

3d 87

a3 e9

c0 a8

01 02

先将校验和置为0.

0100 0101 0000 0000

0000 0000 0010 1000

0001 0010 0001 0110

0100 0000 0000 0000

0011 0100 0000 0110

0011 1101 1000 0111

1010 0011 1110 1001

1100 0000 1010 1000

0000 0001 0000 0010

以上各式累加得到的和为:

10 0110 1110 0101 1110

可见产生了2个进位,去掉进位再将余数加2并取反得:1001 0001 1001 1111,即为0x919f与首部校验和一致。

思考题:

( 1 )为什么IP数据报只进行IP首部校验而不对整个数据报进行校验?

一来这样加重了网络层的负担,二来由于IP首部校验是由电路来实现的,这样的目的是更加快速,如果要设计能校验整个数据的电路,太复杂,而且降低了速度,这个校验交给更高层进行。三是首部校验已能大提高IP数据报的可靠程度,它只能实现最大能力交付。

( 2 )IP数据包的数据报总长度字段共16比特,理论上最大值为多少?你捕获的数据报中数据报总长度字段为多少?其中最大的为多少?达到理论最大值了吗?为什么?

理论上最大为216-1=65535字节,我捕获的数据报中数据报总长度字段为40,其中最大为1480,远远没有达到理论最大值,这是因为在IP层下面的每一种数据链路层都有其自己的帧格式,其中包括帧格式中的数据字段的最大长度,这称为最大传送单元MTU。当一个IP数据报封装成链路层的帧时,此数据报的总长度一定不能超过下面的数据链路层的MTU值。实际上使用的数据报长度很少有超过1500字节的。

网络通信协议分析与应用试题集6828(1).

解答: 1. OSI标准中,采用的是三级抽象:体系结构,服务定义,协议说明。 2. TCP/IP协议族中,使用了三个不同层次的地址,主机网络层或网络接口层使用了:物理地址(MAC地址)。 3. TCP/IP协议族中,使用了三个不同层次的地址,传输层使用了:端口地址。 4. TCP/IP协议族中,使用了三个不同层次的地址,网络层使用了:逻辑地址(IP地址)。 5. 根据所提供的服务方式的不同,端口又可分为TCP协议端口和UDP协议端口两种。 6. 从端口的性质来分,通常可以分为以下三类,注册端口(Registered Ports)松散地绑 定于一些服务。 7. 从端口的性质来分,通常可以分为三类,FTP和HTTP服务需要使用:公认端口(Well Kno wn Ports)类型。 8. 从端口的性质来分,通常可以分为三类,动态或私有端口(Dynamic and/or Private Po rts)容易被黑客和木马程序利用。 9. 接口是同一结点内相邻层之间交换信息的连接点。 10. CCITT与ISO的工作领域是不同的:CCITT 主要是考虑通信标准的制定。 11. CCITT与ISO的工作领域是不同的:ISO主要是考虑信息处理与网络体系结构。 12. OSI参考模型和TCP/IP参考模型只是描述了一些概念,用来协调进程间通信标准的制定。 13. 通信服务可以分为两大类:面向连接服务(connect-oriented service)和无连接服 务(connectless service)。 14. 网络数据传输的可靠性一般通过确认和重传机制保证。 15. 通信协议包括:面向连接与确认服务;面向连接与不确认服务;无连接与确认服务;无连接与不确认服务四种类型。 16. IP协议是无连接的、提供“尽力而为”服务的网络层协议。 17. 17. INTERNET使用了不同类型的地址概念,应用层使用了域名(DNS)、电子邮件址、URL等地址。 18. 网络协议是由程序和进程来完成的。 19. B类IP地址中的一个私有网络地址,如果需要50个子网,网络掩码应该为(点十进制表示):255.255.252.0 。

解析IP数据包课程设计

课程设计任务书

目录1.实验目的2.实验要求3.预备知识4.课程设计分析5.实现过程6.程序流程图7.相关扩展8.实习体会9.参考文献

一.实验目的: 设计一个解析IP数据包的程序,并根据这个程序,说明IP数据包的结构及IP协议的相关问题,从而IP层的工作原理有更好的理解和认识. 二.实验要求: 本设计的目标是捕获网络中数据包,解析数据包的内容,将、结果显示在标准输出上,并同时写入日志文件. 程序的具体要求如下: 3)以命令行形式运行:ipparse logfile,其中ipparse是程序名,而logfile则代表记录结果的日 志文件. 4)在标准输出和日志文件中写入捕获的IP数据包的版本,头长度,服务类型,数据包总长度, 数据包标识,分段标志,分段偏移值,生存时间,上层协议类型,头校验和,源IP地址和目的IP地址等内容. 当程序接收到键盘输入Ctrl+C时退出. 三.预备知识 互联网络层是TCP/IP协议参考模型中的关键部分.IP协议把传输层送来的消息组装成IP数据包,并把IP数据包传送给数据链层.IP协议在TCP/IP协议族中处于核心地位,IP协议制定了统一的IP数据包格式,以消除个通信子网中的差异,从而为信息发送方和接收方提供了透明的传输通道.编制本程序前,首先要对IP包的格式有一定了解,图1给出了IP协议的数据包格式. IP数据包的第一个字段是版本字段,其度是4位,表示所使用的IP协议的版本.目前的版本是IPV4,版本字段的值是4,下一代版本是IPV6,版本字段值是6.本程序主要针对版本是IPV4的数据包的解析. 报头标长字段为4位,它定义了以4B为一个单位的IP包的报文长度.报头中除了选项字段和填充域字段外,其他各字段是定长的.因此,IP数据包的头长度在20—40B之间,是可变的. 0 4 8 16 19 24 图1 IP数据包的格式 服务类型字段共8位,用于指示路由器如何处理该数据包.该字段长度由4位服务类型(TOS)子域和3位优先级子域组成,1位为保留位,该字段结构如图2所示. B7 b6 b5 b4 b3 b2 b1 b0

网络协议分析——抓包分析

计算机网络技术及应用实验报告开课实验室:南徐学院网络实验室

第一部分是菜单和工具栏,Ethereal提供的所有功能都可以在这一部分中找到。第二部分是被捕获包的列表,其中包含被捕获包的一般信息,如被捕获的时间、源和目的IP地址、所属的协议类型,以及包的类型等信息。 第三部分显示第二部分已选中的包的每个域的具体信息,从以太网帧的首部到该包中负载内容,都显示得清清楚楚。 第四部分显示已选中包的16进制和ASCII表示,帮助用户了解一个包的本来样子。 3、具体分析各个数据包 TCP分析:

源端口 目的端口序号 确认号 首部长度窗口大小值

运输层: 源端口:占2个字节。00 50(0000 0000 1001 0000) 目的端口:占2个字节。C0 d6(1100 0000 1101) 序号:占四个字节。b0 fe 5f 31(1011 0000 0101 1110 0011 0001) 确认号:占四个字节。cd 3e 71 46(1100 1101 0011 1110 0110 0001 0100 0110) 首部长度:共20个字节:50(0101 0001) 窗口大小值:00 10(0000 0000 0001 00000) 网络层: 不同的服务字段:20 (0010 0000)

总的长度:00 28(0000 0000 0010 10000) 识别:81 28(1000 0001 0010 10000) 片段抵消:40 00(0100 0000 0000 0000) 生存时间:34 (0011 0100) 协议: 06(0000 0110)

网络数据包的捕获与协议分析知识分享

网络数据包的捕获与 协议分析

实验报告 ( 2016 / 2017 学年第一学期) 题目:网络数据包的捕获与协议分析 专业计算机科学与技术 学生姓名张涛 班级学号 14210133 指导教师江中略 指导单位计算机系统与网络教学中心 日期 2016.10.31

实验一:网络数据包的捕获与协议分析 一、实验目的 1、掌握网络协议分析工具Wireshark的使用方法,并用它来分析一些协议; 2、截获数据包并对它们观察和分析,了解协议的运行机制。 二、实验原理和内容 1、tcp/ip协议族中网络层传输层应用层相关重要协议原理 2、网络协议分析工具Wireshark的工作原理和基本使用规则 三、实验环境以及设备 Pc机、双绞线、局域网 四、实验步骤 1.用Wireshark观察ARP协议以及ping命令的工作过程: (1)打开windows命令行,键入“ipconfig -all”命令获得本机的MAC地址和缺省路由器的IP地址;结果如下: (2)用“arp -d”命令清空本机的缓存;结果如下 (3)开始捕获所有属于ARP协议或ICMP协议的,并且源或目的MAC地址是本机的包。

(4)执行命令:ping https://www.sodocs.net/doc/b95573751.html,,观察执行后的结果并记录。 此时,Wireshark所观察到的现象是:(截图表示)

2.设计一个用Wireshark捕获HTTP实现的完整过程,并对捕获的结果进行分 析和统计。(截图加分析)

3.设计一个用Wireshark捕获ICMP实现的完整过程,并对捕获的结果进行分 析和统计。 要求:给出捕获某一数据包后的屏幕截图。以16进制形式显示其包的内容,并分析该ICMP报文。(截图加分析) 0000 6c 71 d9 3f 70 0b 78 eb 14 11 da b2 08 00 45 00 lq.?p.x. ......E. 0010 00 44 e4 9d 00 00 31 01 f7 11 6a 03 81 f3 c0 a8 .D....1. ..j..... 0020 01 6b 03 0a ab 1a 00 00 00 00 45 00 00 28 68 29 .k...... ..E..(h) 0030 40 00 73 06 f1 9c c0 a8 01 6b 6a 03 81 f3 e9 df @.s..... .kj..... 0040 01 bb e1 58 0a 8d 93 e6 e0 94 50 11 01 01 b4 cc ...X.... ..P..... 0050 00 00 ..

TCPIP实验之IP数据包分析--

TCP/IP协议与编程实验 姓名: 班级: 学号: 实验题目用Wireshark抓包分析ip数据包 一、实验目的 1、了解并会初步使用Wireshark,能在所用电脑上进行抓包 2、了解IP数据包格式,能应用该软件分析数据包格式 3、查看一个抓到的包的内容,并分析对应的IP数据包格式 二、实验内容 Wireshark 是网络包分析工具。网络包分析工具的主要作用是尝试捕获网络包,并尝试显示包的尽可能详细的情况。 实验步骤: 1、打开wireshark,选择接口选项列表。或单击“Capture”,配置“option” 选项。

2、设置完成后,点击“start”开始抓包: 3、显示结果: 3、选择某一行抓包结果,双击查看此数据包具体结构。

4、捕捉IP数据报。 ① 写出IP数据报的格式。 IP数据报首部的固定部分中的各字段含义如下: (1)版本占4位,指IP协议的版本。通信双方使用的IP协议版本必须一致。目前广泛使用的IP协议版本号为4(即IPv4)。 (2)首部长度占4位,可表示的最大十进制数值是15。请注意,这个字段所表示数的单位是32位字长(1个32位字长是4字节),因此,当IP的首部长度为1111时(即十进制的15),首部长度就达到60字节。当IP分组的首部长度不是4字节的整数倍时,必须利用最后的填充字段加以填充。因此数据部分永远在4字节的整数倍开始,这样在实现IP协议时较为方便。首部长度限制为60 字节的缺点是有时可能不够用。但这样做是希望用户尽量减少开销。最常用的首部

3)区分服务占8位,用来获得更好的服务。这个字段在旧标准中叫做服务类型,但实际上一直没有被使用过。1998年IETF把这个字段改名为区分服务 DS(Differentiated Services)。只有在使用区分服务时,这个字段才起作用。 (4)总长度总长度指首部和数据之和的长度,单位为字节。总长度字段为16位,因此数据报的最大长度为216-1=65535字节。长度就是20字节(即首部长度为0101),这时不使用任何选项。 (5)标识(identification) 占16位。IP软件在存储器中维持一个计数器,每产生一个数据报,计数器就加1,并将此值赋给标识字段。但这个“标识”并不是序号,因为IP是无连接服务,数据报不存在按序接收的问题。当数据报由于长度超过网络的MTU而必须分片时,这个标识字段的值就被复制到所有的数据报的标识字段中。相同的标识字段的值使分片后的各数据报片最后能正确地重装成为原来的数据报。 (6)标志(flag) 占3位,但目前只有2位有意义。 标志字段中的最低位记为MF(More Fragment)。MF=1即表示后面“还有分片”的数据报。MF=0表示这已是若干数据报片中的最后一个。 标志字段中间的一位记为DF(Don’t Fragment),意思是“不能分片”。只有当DF=0时才允许分片。 7)片偏移占13位。片偏移指出:较长的分组在分片后,某片在原分组中的相对位置。也就是说,相对用户数据字段的起点,该片从何处开始。片偏移以8 个字节为偏移单位。这就是说,每个分片的长度一定是8字节(64位)的整数倍。 (8)生存时间占8位,生存时间字段常用的的英文缩写是TTL(Time To Live),表明是数据报在网络中的寿命。由发出数据报的源点设置这个字段。其目的是防止无法交付的数据报无限制地在因特网中兜圈子,因而白白消耗网络资源。最初的设计是以秒作为TTL的单位。每经过一个路由器时,就把TTL减去数据报在路由器消耗掉的一段时间。若数据报在路由器消耗的时间小于1秒,就把TTL值减1。当TTL值为0时,就丢弃这个数据报。 #TTL通常是32或者64,scapy中默认是64 (9)协议占8位,协议字段指出此数据报携带的数据是使用何种协议,以便使目的主机的IP层知道应将数据部分上交给哪个处理过程。(在scapy中,下层的这个protocol一般可以从上曾继承而来,自动填充,我们一般可以省略不填此项) (10)首部检验和占16位。这个字段只检验数据报的首部,但不包括数据部分。这是因为数据报每经过一个路由器,路由器都要重新计算一下首部检验和

wireshark抓包分析了解相关协议工作原理

安徽农业大学 计算机网络原理课程设计 报告题目wireshark抓包分析了解相关协议工作原理 姓名学号 院系信息与计算机学院专业计算机科学与技术 中国·合肥 二零一一年12月

Wireshark抓包分析了解相关协议工作原理 学生:康谦班级:09计算机2班学号:09168168 指导教师:饶元 (安徽农业大学信息与计算机学院合肥) 摘要:本文首先ping同一网段和ping不同网段间的IP地址,通过分析用wireshark抓到的包,了解ARP地址应用于解析同一局域网内IP地址到硬件地址的映射。然后考虑访问https://www.sodocs.net/doc/b95573751.html,抓到的包与访问https://www.sodocs.net/doc/b95573751.html,抓到的包之间的区别,分析了访问二者网络之间的不同。 关键字:ping 同一网段不同网段 wireshark 协议域名服务器 正文: 一、ping隔壁计算机与ping https://www.sodocs.net/doc/b95573751.html,抓到的包有何不同,为什么?(1)、ping隔壁计算机 ARP包:

ping包: (2)ing https://www.sodocs.net/doc/b95573751.html, ARP包:

Ping包: (3)考虑如何过滤两种ping过程所交互的arp包、ping包;分析抓到的包有

何不同。 答:ARP地址是解决同一局域网上的主机或路由器的IP地址和硬件地址的映射问题,如果要找的主机和源主机不在同一个局域网上,就会解析出网 关的硬件地址。 二、访问https://www.sodocs.net/doc/b95573751.html,,抓取收发到的数据包,分析整个访问过程。(1)、访问https://www.sodocs.net/doc/b95573751.html, ARP(网络层): ARP用于解析IP地址与硬件地址的映射,本例中请求的是默认网关的硬件地址。源主机进程在本局域网上广播发送一个ARP请求分组,询问IP地址为192.168.0.10的硬件地址,IP地址为192.168.0.100所在的主机见到自己的IP 地址,于是发送写有自己硬件地址的ARP响应分组。并将源主机的IP地址与硬件地址的映射写入自己ARP高速缓存中。 DNS(应用层): DNS用于将域名解析为IP地址,首先源主机发送请求报文询问https://www.sodocs.net/doc/b95573751.html, 的IP地址,DNS服务器210.45.176.18给出https://www.sodocs.net/doc/b95573751.html,的IP地址为210.45.176.3

实验4_IP协议分析

实验4 IP协议分析 在这个实验里,我们将研究IP协议,通过执行traceroute程序来分析IP数据包发送和接收的过程。我们将研究IP数据包的各个字段,详细学习IP数据包的分片。 一、捕获traceroute 为了产生一个IP数据包,我们将使用traceroute程序来向一些目的地发送不同大小的数据包,这个软件我们在第一个实验已作过简单的尝试了。 但我们试图在IP头部首先发送一个或者更多的具有TTL的数据包,并把TTL的值设置为1;然后向同一个目的地发送一系列具有TTL值为2的数据包;接着向同一个目的地发送一系列具有TTL值为3的数据包等等。路由器在每次接收数据包时消耗掉一个TTL,当TTL达到0时,路由器将会向源主机返回一个ICMP的消息(类型为11的TTL溢出),这样一个TTL值为1的数据包将会引起路由器从发送者发回一个ICMP的TTL溢出消息产生一跳,TTL值为2的数据包发送时会引起路由器产生两跳,TTL值为3的数据包则会引起路由器产生3跳。基于这种方式,主机可以执行traceroute观察ICMP的TTL溢出消息,记录每个路由器的ICMP的溢出消息的源IP地址,即可标识出主机和目的地之间的所有路由器。 我们要运行traceroute让它发送多种长度的数据包,由Windows提供的tracert程序不允许改变由tracert程序发送的ICMP的回复请求消息的大小,在Windows下比较好的一个是pingplotter,它可以在以下网站下载共享版本(现在已下载好存在共享文件夹的压缩包中): 安装pingplotter标准版(你有一个30天的试用期),通过对你所喜欢的站点执行一些traceroute来熟悉这个工具。ICMP回复请求消息的大小可以在pingplotter中设置:Edit-> Options->Default Setting->enginet,在packet size字段中默认包的大小是56字节。pingplotter 发送一系列TTL值渐增的包时,Trace时间间隔的值和间隔的个数在pingplotter中能够设置。按下面步骤做: 1启动Iris,开始包捕获; 2启动pingplotter,然后在“Address to Trace”窗口输入目的地目标的名字: 172.16.1.1 (1岛输入172.16.6.1) 在“# of times to Trace”区域输入3。然后选择Edit-> Options->Default Setting->engine,确认在packet size字段的值为56,点OK。然后按下 Trace按钮。你看到的pingplotter窗口类似如上:

计算机网络使用网络协议分析器捕捉和分析协议数据包样本

计算机网络使用网络协议分析器捕捉和分析协议数据包样 本 计算机网络使用网络协议分析器捕捉和分析协议数据包广州大学学生实验报告开课学院及实验室:计算机科学与工程实验室11月月28日学院计算机科学与教育软件学院年级//专业//班姓名学号实验课程名称计算机网络实验成绩实验项目名称使用网络协议分析器捕捉和分析协议数据包指导老师熊伟 一、实验目的 (1)熟悉ethereal的使用 (2)验证各种协议数据包格式 (3)学会捕捉并分析各种数据包。 本文档所提供的信息仅供参考之用,不能作为科学依据,请勿模仿。 文档如有不当之处,请联系本人或网站删除。 二、实验环境1.MacBook Pro2.Mac OS3..Wireshark 三、实验内容,验证数据帧、IP数据报、TCP数据段的报文格式。 ,,分析结果各参数的意义。 器,分析跟踪的路由器IP是哪个接口的。 对协议包进行分析说明,依据不同阶段的协议出分析,画出FTP 工作过程的示意图a..地址解析ARP协议执行过程b.FTP控制连接建立过程c.FTP用户登录身份验证过程本文档所提供的信息仅供参考之用,不能作为科学依据,请勿模仿。

文档如有不当之处,请联系本人或网站删除。 d.FTP数据连接建立过程 e.FTP数据传输过程 f.FTP连接释放过程(包括数据连接和控制连接),回答以下问题:a..当访问某个主页时,从应用层到网络层,用到了哪些协议?b.对于用户请求的百度主页(),客户端将接收到几个应答报文??具体是哪几个??假设从是本地主机到该页面的往返时间是RTT,那么从请求该主页开始到浏览器上出现完整页面,一共经过多长时间??c.两个存放在同一个服务器中的截然不同的b Web页(例如,,和d.假定一个超链接从一个万维网文档链接到另一个万维网文档,由于万维网文档上出现了差错而使超链接指向一个无效的计算机名,这时浏览器将向用户报告什么?e.当点击一个万维网文档时,若该文档除了次有文本外,,那么需要建立几次TCP连接和个有几个UDP过程?本文档所提供的信息仅供参考之用,不能作为科学依据,请勿模仿。 文档如有不当之处,请联系本人或网站删除。 析,分析ARP攻击机制。 (选做),事实上,TCP开始发送数据时,使用了慢启动。 利察用网络监视器观察TCP的传输和确认。 在每一确认到达之后,慢启动过程中发生了什么?(选做),,TCP 必须准备重发初始段(用于打开一个连接的一个段)。 TCP应等多久才重发这一段?TCP应重发多少次才能宣布它不能打开一个连接?为找到结果尝试向一个不存在的地址打开一个连接,并使用网络监视器观察TCP的通信量。

解析IP数据包课程设计报告

成绩评定表

课程设计任务书

目录 1 课程设计目的 (1) 2 课程设计要求 (2) 3 相关知识 (3) 4 课程设计分析 (6) 5 程序代码 (11) 6 运行结果与分析 (18) 7 参考文献 (18)

1 课程设计目的 IP数据包是网络成传输的基本数据单元,熟悉IP数据包结构对于理解网络工作原理具有重要意义。本课程设计的主要目的是通过接受与解析IP数据包,了解IP数据包的基本结构与IP协议的基本功能。

2 课程设计要求 根据后面介绍的IP数据包结构,编写程序接收并解析IP数据包。 1)以命令行形式运行; ParsePacket log_file 其中,ParsePacket为程序名,log_file为日志文件名。 2)输出内容:IP数据包的各字段值,包括版本、头部长度、服务类型、总长度、标识、分段标志、分段偏移值、生存时间、上层协议类型、头校验和、源IP地址 和目的IP地址等。 3)当程序接收到键盘输入Ctrl+C时退出。

3相关知识 互联网络层是TCP/IP协议参考模型中的关键部分.IP协议把传输层送来的消息组装成IP数据包,并把IP数据包传送给数据链层.IP协议在TCP/IP协议族中处于核心地位,IP 协议制定了统一的IP数据包格式,以消除个通信子网中的差异,从而为信息发送方和接收方提供了透明的传输通道.编制本程序前,首先要对IP包的格式有一定了解,图1给出了IP 协议的数据包格式. IP数据包的第一个字段是版本字段,其度是4位,表示所使用的IP协议的版本.目前的版本是IPV4,版本字段的值是4,下一代版本是IPV6,版本字段值是6.本程序主要针对版本是IPV4的数据包的解析. 报头标长字段为4位,它定义了以4B为一个单位的IP包的报文长度.报头中除了选项字段和填充域字段外,其他各字段是定长的.因此,IP数据包的头长度在20—40B之间,是可变的. 0 4 8 16 19 24 31(位) 图3.1 IP数据包的格式 服务类型字段共8位,用于指示路由器如何处理该数据包.该字段长度由4位服务类型(TOS)子域和3位优先级子域组成,1位为保留位,该字段结构如图2所示. 图3.1 服务类型字段结构

IP及IPSEC协议数据包的捕获与分析

IP及IPSEC协议数据包的捕获与分析

IP及IPSEC协议数据包的捕获与分析 为了掌握掌握IP和IPSEC协议的工作原理及数据传输格式,熟悉网络层的协议。我进行了以下实验:首先用两台PC互ping并查看其IP报文,之后在两台PC上设置IPSEC互ping并查看其报文。最终分析两者的报文了解协议及工作原理。 一、用两台PC组建对等网: 将PC1与PC2连接并分别配置10.176.5.119和10.176.5.120的地址。如图1-1所示。 图1-1 二、两PC互ping: IP数据报结构如图1-2所示。 图1-2 我所抓获的报文如图1-3,图1-4所示:

图1-3 请求包 图1-4 回应包 分析抓获的IP报文: (1)版本:IPV4 (2)首部长度:20字节 (3)服务:当前无不同服务代码,传输忽略CE位,当前网络不拥塞

(4)报文总长度:60字节 (5)标识该字段标记当前分片为第1367分片 (6)三段标志分别指明该报文无保留、可以分段,当前报文为最后一段 (7)片偏移:指当前分片在原数据报(分片前的数据报)中相对于用户数据字段 的偏移量,即在原数据报中的相对位置。 (8)生存时间:表明当前报文还能生存64 (9)上层协议:1代表ICMP (10)首部校验和:用于检验IP报文头部在传播的过程中是否出错 (11)报文发送方IP:10.176.5.120 (12)报文接收方IP:10.176.5.119 (13)之后为所携带的ICMP协议的信息:类型0指本报文为回复应答,数据部分 则指出该报文携带了32字节的数据信息,通过抓获可看到内容为:abcdefghijklmnopqrstuvwabcdefghi 三、IPSec协议配置: 1、新建一个本地安全策略。如图1-5。 图1-5 2、添加IP安全规则。如图1-6.

网络数据包协议分析

网络数据包协议分析 一、实验目的 1.学习网络协议分析工具Ethereal的使用方法; 2.截获数据并对它们观察,分析其中2中协议(arp&tcp)数据包包头各数据位的含义, 了解协议的运行机制。 二、实验步骤 1.安装并打开Ethereal软件; 2.利用”运行cmd”打开命令提示符,输入“ping”确认网络连接是否完成; 3.点击capture->options选择网卡(默认有线); 4.点击capture开始抓包; 5.打开浏览器,访问一个网站,这样才可以抓到tcp的数据包; 6.点击stop停止抓包。 三、实验结果分析 1.Arp---address resolution protocol,地址解析协议的缩写,就是主机在发送帧前将目 标IP地址(32位)转换成目标MAC地址(48位)的过程。它属于链路层的协议。

ARP协议数据包包头数据位分析: 1.第一栏显示帧信息。 Frame 280 (60 bytes on wire,60 bytes capture)是指该数据包含有60个字节,ethereal软件截获了60个字节。点击打开,里面包括了到达时间、相对前一个包的时间延迟、传输时间、帧号280、包长度(60字节)和捕获到的长度(60字节)。 2.第二栏显示以太网信息。 源MAC地址是f4:6d:04:3a:62:33,目的MAC地址是ff:ff:ff:ff:ff:ff。 3.第三栏显示因特网协议信息。 它包括了硬件类型:以太网;协议类型是IP协议和发送方的IP地址与MAC地址,也包括了目的IP地址和MAC地址。 2.tcp—transition control protocol,传输控制协议的缩写。是一种面向连接(连接导向) 的、可靠的、基于字节流的传输层通信协议。

网络通信协议分析及应用试题集6828(I)

1. OSI标准中,采用的是三级抽象:体系结构,服务定义,协议说明。 2. TCP/IP协议族中,使用了三个不同层次的地址,主机网络层或网络接口层使用了:物理地址(MAC地址)。 3. TCP/IP协议族中,使用了三个不同层次的地址,传输层使用了:端口地址。 4. TCP/IP协议族中,使用了三个不同层次的地址,网络层使用了:逻辑地址(IP地址)。 5. 根据所提供的服务方式的不同,端口又可分为TCP协议端口和UDP协议端口两种。 6. 从端口的性质来分,通常可以分为以下三类,注册端口(Registered Ports)松散地绑 定于一些服务。 7. 从端口的性质来分,通常可以分为三类,FTP和HTTP服务需要使用:公认端口(Well Kno wn Ports)类型。 8. 从端口的性质来分,通常可以分为三类,动态或私有端口(Dynamic and/or Private Po rts)容易被黑客和木马程序利用。 9. 接口是同一结点内相邻层之间交换信息的连接点。 10. CCITT与ISO的工作领域是不同的:CCITT 主要是考虑通信标准的制定。 11. CCITT与ISO的工作领域是不同的:ISO主要是考虑信息处理与网络体系结构。 12. OSI参考模型和TCP/IP参考模型只是描述了一些概念,用来协调进程间通信标准的制定。 13. 通信服务可以分为两大类:面向连接服务(connect-oriented service)和无连接服 务(connectless service)。 14. 网络数据传输的可靠性一般通过确认和重传机制保证。 15. 通信协议包括:面向连接与确认服务;面向连接与不确认服务;无连接与确认服务;无连接与不确认服务四种类型。 16. IP协议是无连接的、提供“尽力而为”服务的网络层协议。 17. 17. INTERNET使用了不同类型的地址概念,应用层使用了域名(DNS)、电子邮件址、URL等地址。 18. 网络协议是由程序和进程来完成的。 19. B类IP地址中的一个私有网络地址,如果需要50个子网,网络掩码应该为(点十进制表示):。 20. C类IP地址中的一个私有网络地址,从网络地址开始。

IPV6抓包协议分析

IPV6协议抓包分析 一、实践名称: 在校园网配置使用IPv6,抓包分析IPv6协议 二、实践内容和目的 内容:网络抓包分析IPv6协议。 目的:对IPv6协议的更深层次的认识,熟悉IPv6数据报文的格式。 三、实践器材: PC机一台,网络抓包软件Wireshark 。 四、实验数据及分析结果: 1.IPv6数据报格式: 2. 网络抓包截获的数据:

3. 所截获的IPv6 的主要数据报为:? Internet Protocol Version 6?0110 .... = Version: 6?. (0000) 0000 .... .... .... .... .... = Traffic class: 0x00000000?.... .... .... 0000 0000 0000 0000 0000 = Flowlabel: 0x00000000 Payload length: 93 Next header: UDP (0x11)?Hop limit: 1?Source: fe80::c070:df5a:407a:902e (fe80::c070:df5a:407a:902e) Destination: ff02::1:2 (ff02::1:2) 4. 分析报文: 根据蓝色将报文分成三个部分:

第一部分: 33 33 00 01 00 02,目的组播地址转化的mac地址, 以33 33 00表示组播等效mac;00 26 c7 e7 80 28, 源地址的mac地址;86 dd,代表报文类型为IPv6 (0x86dd); 第二部分: 60,代表包过滤器"ip.version == 6"; 00 00 00,Traffic class(通信类别): 0x00000000; 00 5d,Payload length(载荷长度,即报文的最后一部分,或者说是报文携带的信息): 32; 11,Next header(下一个封装头): ICMPv6 (17); 01,Hop limit(最多可经历的节点跳数): 1; fe 80 00 00 00 00 00 00 c0 70 df 5a 40 7a 90 2e,源ipv6地址; ff 02 00 00 00 00 00 00 00 00 00 00 00 01 00 02,目的ipv6地址; 第三部分(报文携带的信息): 02,表示类型为Neighbor Solicitation (2); 22,表示Code: 38; 02 23是Checksum(校验和): 0x6faa [correct]; 00 5d 36 3a,Reserved(保留位): 00000000; fe 80 00 00 00 00 00 00 76 d4 35 ff fe 03 56 b0,是组播地址中要通信的那个目的地址; 01 01 00 23 5a d5 7e e3,表示

实验1:网络数据包的捕获与协议分析

实验报告 ( 2014 / 2015 学年第二学期) 题目:网络数据包的捕获与协议分析 专业 学生姓名 班级学号 指导教师胡素君 指导单位计算机系统与网络教学中心 日期2015.5.10

实验一:网络数据包的捕获与协议分析 一、实验目的 1、掌握网络协议分析工具Wireshark的使用方法,并用它来分析一些协议; 2、截获数据包并对它们观察和分析,了解协议的运行机制。 二、实验原理和内容 1、tcp/ip协议族中网络层传输层应用层相关重要协议原理 2、网络协议分析工具Wireshark的工作原理和基本使用规则 三、实验环境以及设备 Pc机、双绞线、局域网 四、实验步骤 1.用Wireshark观察ARP协议以及ping命令的工作过程: (1)打开windows命令行,键入“ipconfig -all”命令获得本机的MAC地址和缺省路由器的IP地址;结果如下: (2)用“arp -d”命令清空本机的缓存;结果如下 (3)开始捕获所有属于ARP协议或ICMP协议的,并且源或目的MAC地址是本机的包。(4)执行命令:ping https://www.sodocs.net/doc/b95573751.html,,观察执行后的结果并记录。

此时,Wireshark所观察到的现象是:(截图表示) 2.设计一个用Wireshark捕获HTTP实现的完整过程,并对捕获的结果进行分析和统计。(截 图加分析) 3.设计一个用Wireshark捕获ICMP实现的完整过程,并对捕获的结果进行分析和统计。要求:给出捕获某一数据包后的屏幕截图。以16进制形式显示其包的内容,并分析该ICMP 报文。(截图加分析) 4. 设计一个用Wireshark捕获IP数据包的过程,并对捕获的结果进行分析和统计(截图加分析) 要求:给出捕获某一数据包后的屏幕截图。以16进制形式显示其包的内容,并分析在该数据包中的内容:版本首部长度、服务类型、总长度、标识、片偏移、寿命、协议、源Ip地址、目的地址 五、实验总结

计算机网络课程设计-IP数据包解析实验报告

< 解析IP数据报实验报告 - … (

目录 目录 (2) 1、课程设计目的 (2) 2、课程设计要求 (2) < 3、相关知识 (2) 4、课程设计分析 (6) 网卡设置 (6) 使用套接字 (7) 接收数据包 (7) 定义IP头部的数据结构 (8) IP包的解析 (9) 协议的定义 (9) ; 捕获处理 (9) 5、运行结果 (10) 6、总结 (11) 7、课程设计参考资料 (11) 8、源程序代码 (11) , /

, 1、课程设计目的 本课程设计的目的就是设计一个解析IP数据包的程序,并根据这个程序,说明IP数据包的结构及IP协议的相关问题,从而对IP层的工作原理有更好的理解和认识。 2、课程设计要求 本设计的目标是捕获网络中的IP数据包,解析数据包的内容,将结果显示在标准输出上,并同时写入日志文件。 程序的具体要求如下: 1)以命令行形式运行:ipparse logfile,其中ipparse是程序名, 而logfile 则代表记录结果的日志文件。 2)在标准输出和日志文件中写入捕获的IP包的版本、头长度、服务类型、数据包总长度、数据包标识、分段标志、分段偏移值、生存时间、上层协议类型、头校验和、源IP地址和目的IP地址等内容。 3)当程序接收到键盘输入Ctrl+C时退出。 3、相关知识 互联网络层是TCP/IP协议参考模型中的关键部分.IP协议把传输层送来的消息组装成IP数据包,并把IP数据包传送给数据链层.IP协议在TCP/IP协议族

中处于核心地位,IP协议制定了统一的IP数据包格式,以消除个通信子网中的差异,从而为信息发送方和接收方提供了透明的传输通道.编制本程序前,首先要对IP包的格式有一定了解,图1给出了IP协议的数据包格式. - IP数据包的第一个字段是版本字段,其度是4位,表示所使用的IP协议的版本.目前的版本是IPV4,版本字段的值是4,下一代版本是IPV6,版本字段值是6.本程序主要针对版本是IPV4的数据包的解析. 报头标长字段为4位,它定义了以4B为一个单位的IP包的报文长度.报头中除了选项字段和填充域字段外,其他各字段是定长的.因此,IP数据包的头长度在20—40B之间,是可变的. 0 4 8 16 19 24 31 图1 IP数据包的格式 服务类型字段共8位,用于指示路由器如何处理该数据包.该字段长度由4位服务

网络数据包的协议分析程序的设计开发—毕业设计论文

毕业设计(论文)网络数据包的协议分析程序的设计开发 论文作者姓名: 申请学位专业: 申请学位类别: 指导教师姓名(职称): 论文提交日期:

网络数据包的协议分析程序的设计开发 摘要 本文设计与实现了一个基于Linux下Libpcap库函数的网络数据包协议分析程序。程序的主要功能包括网络数据包捕获和常用网络协议分析。程序由输入/输出模块、规则匹配模块、数据捕获模块、协议分析模块组成。其中数据捕获模块和协议分析模块是本程序最关键、最主要的模块。 本文的主要内容如下:首先介绍了网络数据包协议分析程序的背景和概念。其次进行了程序的总体设计:确定了程序的功能,给出了程序的结构图和层次图,描述了程序的工作流程,对实现程序的关键技术做出了分析。接着,介绍完数据包捕获的相关背景和Libpcap函数库后,阐述了如何利用Libpcap函数库实现网络数据包捕获模块。然后对协议分析流程进行了详细的讲解,分析了常用网络协议。最后进行了程序的测试与运行:测试了程序能否按照预期的效果正确执行,印证了预期结果。 关键词:Libpcap;Linux;数据包捕获;应用层;协议识别

The Design and Development of Network Packet Protocol Analyzing Program Abstract The thesis is an attempt to introduce an implementation of network protocol analyzing program which is based on Libpcap, a famous network packet capture library on Linux. It has a rich feature set which includes capturing network packets and analyzing popular network protocols on Internet. The program is made up of an input/output module, a rules matching module, a packet capturing module and a protocol analyzing module. And the last two modules are key modules. The research work was described as followed. firstly, we introduce the background and concepts about network protocol analyzing programs; and we make an integrated design on the program, define functions of it, figure out its structure and hierarchical graphs, describe the workflow of it, and analyze the key techniques used in it; Secondly, after elaborating on the background of packet capture and the Libpcap library, we state a approach to implement a packet capture module with Libpcap; Thirdly, we explain the workflow about protocol analysis, and analyze common network protocols; Finally, we test our program to see whether it works as expected, fortunately, it does. Key words: Libpcap; Linux; Network packet capturing; Application layer; Protocol identification

解析IP数据包课程设计

课程设计任务书 目录 1.实验目的 2.实验要求 ) 3.预备知识 4.课程设计分析 5.实现过程 6.程序流程图 ! 7.相关扩展 8.实习体会

9.参考文献 一.实验目的: 设计一个解析IP数据包的程序,并根据这个程序,说明IP数据包的结构及IP协议的相 关问题,从而IP层的工作原理有更好的理解和认识. 、 二.实验要求: 本设计的目标是捕获网络中数据包,解析数据包的内容,将、结果显示在标准输出上, 并同时写入日志文件. 程序的具体要求如下: 3)以命令行形式运行:ipparse logfile,其中ipparse是程序名,而logfile则代表记录 结果的日志文件. 4)在标准输出和日志文件中写入捕获的IP数据包的版本,头长度,服务类型,数据包总长 度,数据包标识,分段标志,分段偏移值,生存时间,上层协议类型,头校验和,源IP地址 和目的IP地址等内容. 当程序接收到键盘输入Ctrl+C时退出. ~ 三.预备知识 互联网络层是TCP/IP协议参考模型中的关键部分.IP协议把传输层送来的消息组装成IP数据包,并把IP数据包传送给数据链层.IP协议在TCP/IP协议族中处于核心地 位,IP协议制定了统一的IP数据包格式,以消除个通信子网中的差异,从而为信息发送 方和接收方提供了透明的传输通道.编制本程序前,首先要对IP包的格式有一定了解, 图1给出了IP协议的数据包格式. IP数据包的第一个字段是版本字段,其度是4位,表示所使用的IP协议的版本.目前的版本是IPV4,版本字段的值是4,下一代版本是IPV6,版本字段值是6.本程序主要 针对版本是IPV4的数据包的解析. 报头标长字段为4位,它定义了以4B为一个单位的IP包的报文长度.报头中除了选项字段和填充域字段外,其他各字段是定长的.因此,IP数据包的头长度在20—40B 之间,是可变的. 0 4 8 16 19 24 31

网络协议分析实验报告

课程设计 课程设计题目网络协议分析实验报告学生姓名: 学号: 专业: 2014年 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.首先仔细研读ping.c例程,熟悉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唯一的功能是报告问题而不是纠正错误,纠正错误的任务由发送方完成。 我们在网络中经常会使用到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算法

相关主题