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

合集下载

TCP-IP IP 协议分析实验

TCP-IP  IP 协议分析实验

实验5 IP 协议分析实验一、实验目的使用 Ping 命令在两台计算机之间发送数据报,用Ethereal 截获数据报,分析IP 数据报的格式,理解IP V4 地址的编址方法,加深对IP 协议的理解。

二、实验内容及要求1.相关知识点介绍IP 报文格式: IP 报文由报头和数据两部分组成,如图1所示:图1 IP 报文格式其中主要字段的意义和功能如下:* 版本:指IP 协议的版本;* 头长:是指IP 数据报的报头长度,它以4 字节为单位。

IP 报头长度至少为 20 字节,如果选项部分不是4 字节的整数倍时,由填充补齐;* 总长度:为整个IP 数据报的长度;* 服务类型:规定对数据报的处理方式;* 标识:是IP 协议赋予数据报的标志,用于目的主机确定数据分片属于哪个报文;* 标志:为三个比特,其中只有低两位有效,这两位分别表示该数据报文能否分段和是否该分段是否为源报文的最后一个分段;* 生存周期:为数据报在网络中的生存时间,报文每经过一个路由器时,其值减 1,7当生存周期变为 0 时,丢弃该报文;从而防止网络中出现循环路由;* 协议:指IP 数据部分是由哪一种协议发送的;* 校验和:只对IP 报头的头部进行校验,保证头部的完整性;* 源IP 地址和目的IP 地址:分别指发送和接收数据报的主机的IP 地址。

(3)IP 数据报的传输过程在互联网中,IP 数据报根据其目的地址不同,经过的路径和投递次数也不同。

当一台主机要发送 IP 数据报时,主机将待发送数据报的目的地址和自己的子网掩码按位“与”,判断其结果是否与其所在网络的网络地址相同,若相同,则将数据报直接投递给目的主机,否则,将其投递给下一跳路由器。

路由器转发数据报的过程如下:①当路由器收到一个数据报文时,对和该路由器直接相连的网络逐个进行检查,即用目的地址和每个网络的子网掩码按位“与”,若与某网络的网地址相匹配,则直接投递;否则,执行2。

②对路由表的每一行,将其中的子网屏蔽码与数据报的目的地址按位“与”,若与该行的目的网络地址相等,则将该数据报发往该行的下一跳路由器;否则,执行3。

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

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),这时不使用任何选项。

TCPIP数据包解析示例

TCPIP数据包解析示例

IP协议(Internet Protocol)是网络层协议,用在因特网上,TCP,UDP,ICMP,IGMP数据都是按照IP数据格式发送得。

IP协议提供的是不可靠无连接得服务。

IP数据包由一个头部和一个正文部分构成。

正文主要是传输的数据,IP头部由20字节的固定长度和一个可选任意长度部分构成,以大段点机次序传送,从左到右,IP协议数据包格式如下TCP协议(TRANSMISSION CONTROL PROTOCOL)是传输层协议,为应用层提供服务,和UDP 不同的是,TCP协议提供的可靠的面向连接的服务,跟IP头部差不多,基本的长度也是20字节。

TCP 数据包是包含在一个IP数据报文中的,TCP数据包如下这是一次FTP的连接,呵呵,是cuteftp默认的cuteftp的FTP站点,IP地址是:216.3.226.21。

我的IP地址假设为:192.168.1.1。

下面的数据就是TCP/IP连接过程中的数据传输。

我们可以分析TCP/IP协议数据格式以及TCP/IP连接的三次握手情况。

下面的这些十六进制数据只是TCP/IP 协议的数据,不是完整的网络通讯数据。

第一次,我向FTP站点发送连接请求(TCP数据的可选部分去掉了)192.168.1.1->216.3.226.21IP头部:450000305252400080062c23c0a80101d803e215TCP头部:0d280015505f a9060000000070024000c0290000第一字节,"45",其中"4"是IP协议的版本(Version),说明是IP4。

"5"是IHL位,表示IP 头部的长度,是一个4bit字段,最大就是1111了,值为15,IP头部的最大长度就是60字节。

而这里为"5",说明是20字节,这是标准的IP头部长度,头部报文中没有发送可选部分数据。

ip数据包分析

ip数据包分析

1. 开发背景计算机网络是计算机技术与通信技术紧密结合的产物,网络技术队信息产业的发展产生深远的影响,而且将发挥越来越大的作用。

本章在介绍网络形成于发展历史的基础上,对网络定义、分类与拓扑构型等问题进行了系统的讨论,并对网络的应用、网络技术的研究与发展进行了探讨,以帮助人们对网络技术与应用有一个全面和准确的认识。

IP数据包作为网络层的数据必然要通过帧来传输。

一个数据包可能要通过多个不同的网络。

每一个路由器都要讲接收到的帧进行拆包和处理,然后封装成另外一个帧。

帧的格式与长度取决于网络所采用的协议。

从网络层—数据链路层来看,由于IP数据包的最大长度为65535B,那么它所使用的网络的数据链路层最大传输单元的长度为65535B,那么传输的效率一定会很高。

但是实际上大量使用的网络的最大传输单元长度都比IP数据包的最大长度短。

以太网的MTU长度为1500B,它远小于IP数据包的最大长度。

因此,使用这些网络传输IP数据包时,要对IP数据包进行分成若干较小的片濑传输,这些片的长度小于或等于数据链路层MTU的长度。

2. 需求分析在传输路径中,路由器通常连接多个网络。

不同的网络的数据链路层最大传输单元的长度的可能不同的,因此路由器在接收到数据包,并准备要转发到目的主机时,它必须首先决定使用哪一个接口网络,要决定该网络的数据链路层最大传输单元是否允许该数据包通过。

根据数据包长度来确定是否需要对数据包进行分片。

如果数据包来自一个能够通过较大数据包的局域网,又要通过另一个只能通过较小的数据包的局域网,那么就必须对IP数据包进行分片。

IP数据包分片的方法如下图所示在IP数据包分片时,首先要确定片长度。

然后将原始IP数据包包括报头分成第1个片。

如果剩下的数据仍然超过长度,那么需要进行第2次分片。

第2个分片数据加上原来的报头,构成第2个片。

这样一直分割到剩下的数据小于片长度为止。

3. 可行性分析经济可行性适用本计算机安全系统可提高计算机通信流量分析和管理水平,把大量繁琐工作简单化,能够有效地节省人力物力,并能够准确地进行统计和计算,避免人工统计或计算所带来的差错,保证计算机通信管理高效而有序地进行。

实验5-IP数据包的结构分析

实验5-IP数据包的结构分析

实验5IP数据包的结构分析1.实验目的1.学习并分析IP数据包的结构、含义2.实验设备与环境1.Ethereal网络分析软件2.实验文件“网络协议的层次观察.cap”3.相关知识⏹一个 IP 数据报由首部和数据两部分组成。

⏹首部的前一部分是固定长度,共 20 字节,是所有 IP 数据报必须具有的。

⏹在首部的固定部分的后面是一些可选字段,其长度是可变的。

⏹IP首部最大长度60字节。

首部可变部分4.实验内容4.1 ARP地址解析协议数据打开文件“网络协议的层次观察.cap”,这是一个包括100个分组的网络通信记录,详细记录了分组的序号、相对时间、源地址、目标地址、协议类型、内容,如图1是对第1个分组的详细信息。

在协议框内,分别显示了该分组的各层协议:接口层以太网协议(eth)、ARP 地址解析协议。

图1 ARP地址解析协议数据从中可以发现它是一个广播形式的ARP地址解析协议数据,IP为219.222.162.254的主机需要知道219.222.162.36的物理地址。

4.2 IP数据包的结构和含义分析观察文件内第6个分组的IP数据包详细信息,见图2。

●它的前8位是45(H)=0100 0101(B),其中0100(B)=4 ,表示IP协议的版本是4; 0101(B)=5,表示首部长度是20字节(一个单位为 4 字节,合计5个单位)。

●差异服务类型字段为00000000(B),没有使用。

●总长度——占 16 bit,指首部和数据之和的长度,00 3E(H)=62字节●标识(identification) 占 16 bit,它是一个计数器,用来产生数据报的标识,便于重装分片的同一数据报,当前值为0AE2;●标志(flag) 占 3 bit,,当前值是000,表明可以分片(注:如果数据报的长度超过网络的MTU,需将数据包分片;否则事实上不进行分片),该分组是最后的一个分片,再结合后面的片偏移,可以确定它是完整的未分片。

IP和TCP抓包分析实验(做)

IP和TCP抓包分析实验(做)

IP和TCP抓包分析实验实验需求1. 配置IP地址,R1的g0/0口是1.1.1.1/24,R2的g0/0口是1.1.1.2/242. 在该链路上开启抓包3. 在R1上ping R24. 开启wireshark,查看抓取的ping包的内容5. 在R2上开启FTP服务6. 在R1上访问R2的FTP7. 刷新wireshark,查看抓取的FTP的登录名和密码实验解法修改设备名称<H3C>system‐viewSystem View: return to User View with Ctrl+Z.[H3C]sysname R1[R1]1<H3C>system‐viewSystem View: return to User View with Ctrl+Z.[H3C]sysname R2[R2]2配置IP地址[R1]interface g0/0[R1‐GigabitEthernet0/0]ip address 1.1.1.1 243[R2]interface g0/0[R2‐GigabitEthernet0/0]ip address 1.1.1.2 244开启抓包在R1上PING R2[R1]ping 1.1.1.2Ping 1.1.1.2 (1.1.1.2): 56 data bytes, press CTRL_C to break 56 bytes from 1.1.1.2: icmp_seq=0 ttl=255 time=1.000 ms56 bytes from 1.1.1.2: icmp_seq=1 ttl=255 time=1.000 ms56 bytes from 1.1.1.2: icmp_seq=2 ttl=255 time=0.000 ms56 bytes from 1.1.1.2: icmp_seq=3 ttl=255 time=1.000 ms56 bytes from 1.1.1.2: icmp_seq=4 ttl=255 time=1.000 ms5开启Wireshark,查看抓取的Ping包内容6在R2上开启FTP服务,创建用户“wangdaye”,密码“123456”[R2]ftp server enable[R2]local‐user wangdaye class manageNew local user added.[R2‐luser‐manage‐wangdaye]password simple 123456[R2‐luser‐manage‐wangdaye]authorization‐attribute user‐role level‐15 [R2‐luser‐manage‐wangdaye]service‐type ftp7在R1上访问FTP服务,输入用户名和密码<R1>ftp 1.1.1.2Press CTRL+C to abort.Connected to 1.1.1.2 (1.1.1.2).220 FTP service ready.User (1.1.1.2:(none)): wangdaye331 Password required for wangdaye.Password:230 User logged in.Remote system type is UNIX.Using binary mode to transfer files.8刷新Wireshark,查看抓取的FTP的登录名和密码9。

解析IP数据包

解析IP数据包

解析IP数据包IP数据包是在互联网传输中扮演重要角色的一种数据格式。

它包含了源IP地址和目标IP地址,以及其他与网络通信相关的信息。

解析IP数据包是对这些信息进行分析和解读的过程,以便理解数据包的来源、目的和内容。

在解析IP数据包时,我们可以从以下几个方面进行详细的分析:1. 版本号:IP数据包的版本号指示了所使用的IP协议的版本。

常见的版本有IPv4和IPv6。

IPv4是目前广泛使用的版本,而IPv6是为了解决IPv4地址不足的问题而推出的新版本。

2. 头部长度:IP数据包的头部长度指示了IP头部的长度,以字节为单位。

头部长度可以通过该字段的值乘以4来计算得到实际长度。

3. 服务类型:IP数据包的服务类型字段用于指示对数据包的处理优先级和要求。

这个字段可以用于区分不同类型的流量,如语音、视频或者普通数据。

4. 总长度:IP数据包的总长度字段指示了整个IP数据包的长度,包括头部和数据部份。

这个字段的值以字节为单位。

5. 标识、标志和片偏移:IP数据包的标识字段用于惟一标识一个IP数据包。

标志字段用于指示是否还有后续的分片数据包,以及是否允许分片。

片偏移字段用于指示当前数据包在原始数据中的位置。

6. 生存时间:生存时间字段指示了IP数据包在网络中的最大生存时间。

每经过一个路由器,生存时间字段的值就会减少1。

当生存时间字段的值为0时,数据包将被丢弃。

7. 协议:协议字段指示了IP数据包中封装的上层协议类型。

常见的协议有TCP、UDP和ICMP等。

8. 校验和:校验和字段用于检测IP数据包在传输过程中是否发生了错误。

发送端会计算校验和,并将其添加到IP头部中。

接收端在接收到数据包后会重新计算校验和,并将其与接收到的校验和进行比较,以检测数据包是否有损坏。

9. 源IP地址和目标IP地址:源IP地址字段指示了数据包的发送者的IP地址,而目标IP地址字段指示了数据包的接收者的IP地址。

通过解析IP数据包,我们可以获得有关网络通信的重要信息,如数据包的源地址、目标地址、协议类型等。

TCPIP数据包的分析

TCPIP数据包的分析

TCP/IP数据包的分析就比较困难和麻烦了。

首先这种分析是基于对TCP/IP协议族的理解之上的,如果你还不了解,《TCP-IP详解卷1:协议》是首先需要翻阅的书籍,如果懒的看,那也不要提什么分析了,呵呵。

截取了一个TCP/IP数据包后,首先分离出IP协议(IP“Internet Protocol”协议是TCP/IP协议族中最为核心的协议,所有的TCP、UDP、ICMP和IGMP数据等都是以IP数据报格式传输的)的头部分,从IP协议头中可以得到很多关键的数据,如IP头的长度、源IP、目的IP、TCP/IP协议类型等,下面演示代码实现这个功能:typedef struct _IP_HEADER //定义IP首部{unsigned char h_lenver; //4位首部长度+4位IP版本号unsigned char tos; //8位服务类型TOSunsigned short total_len; //16位总长度(字节)unsigned short ident; //16位标识unsigned short frag_and_flags; //3位标志位+13位片偏移unsigned char ttl; //8位生存时间TTLunsigned char proto; //8位协议(TCP, UDP 或其他)unsigned short checksum; //16位IP首部校验和unsigned int sourceIP; //32位源IP地址unsigned int destIP; //32位目的IP地址} IP_HEADER;typedef struct _TCP_HEADER //定义TCP首部{USHORT th_sport; //16位源端口USHORT th_dport; //16位目的端口UINT th_seq; //32位序列号UINT th_ack; //32位确认号UCHAR th_lenres; //4位首部长度/6位保留字UCHAR th_flag; //6位标志位USHORT th_win; //16位窗口大小USHORT th_sum; //16位校验和USHORT th_urp; //16位紧急数据偏移量} TCP_HEADER;unsigned short DecodeIPHeader(char *buf) //IP头解码函数(得到IP头的长度,其他内容得到方法类似){IP_HEADER * ipheader;unsigned short ipheaderlen;ipheader = (IP_HEADER *)buf;ipheaderlen = sizeof(unsigned long) * (ipheader->h_lenver & 0xf);return ipheaderlen;}好,现在我们获得了IP头的长度,用类似的方法也可以获得了协议类型等其他数据。

TCPIP协议分析_实验3_分析IPv4和IPv6数据包

TCPIP协议分析_实验3_分析IPv4和IPv6数据包

《TCP/IP协议分析》实验报告实验序号:3 实验项目名称:分析IPv4和IPv6 数据包20网工学号姓名专业、班实验地点指导教师实验时间2022-9-14 一、实验目的及要求,步骤和结果动手项目3-1:使用Wireshark软件查看IPv4数据包首部所需时间: 20 分钟。

项目目标:学习使用Wireshark软件查看IPv4数据包的首部。

过程描述:本项目介绍如何捕获网络上的一个数据包,选择一个特定的数据包,查看该数据包的IPv4首部。

你可以捕获自己的数据进行分析,或启动Wireshark 软件,打开从本书配套网站上下载的文件IPv4Fields.pcap,直接跳到第(8)步。

(1)启动Wireshark软件(单击“开始”,指向“所有程序”,然后单击Wireshark。

也可以单击“开始”,在“运行”对话框中输入"Wireshark", 然后单击“确定”按钮)。

(2)单击Capture菜单,然后单击Interfaces 菜单项,出现Capture Interfaces 窗口。

(3)可能会显示有多个网卡,选定一个在Packets栏显示了实时数据包的网卡,然后单击Start 按钮,出现Capturing窗口。

(4)打开一个命令提示符窗口(单击“开始”按钮,在“运行”对话框中输入cmd,然后单击“确定”按钮)。

(5) ping 本地网络中的计算机IPv4地址。

(6)在命令提示符窗口中输入exit命令并按Enter键,关闭命令提示符窗口。

(7)在Wireshark软件中,单击菜单栏上的Capture,然后单击Stop (或者单击工具栏上的Stop 图标)。

(8)在数据包列表面板(上部面板)中选择一个TCP数据包(9)在数据包详细内容面板(中部面板),展开Internet Protocol Version4, 如图所示。

(10)查看Version和Header lenght字段的值。

(11)展开Differentiated Services Field, 查看Total Length和ldentification字段的值,然后再收起它。

TCPIP通信协议数据分析

TCPIP通信协议数据分析

TCPIP通信协议数据分析一、TCP协议:TCP(Transmission Control Protocol)是一种面向连接的、可靠的传输协议,它提供了数据传输的完整性、有序性和可靠性。

在TCP协议中,数据传输是通过数据流的方式进行的,每个数据包都有序号、校验和等控制信息,以确保数据的正确性和完整性。

TCP协议包括了三次握手建立连接、数据传输和四次挥手释放连接等功能。

1.1TCP数据包结构:TCP协议的数据包结构包括了首部和数据两部分,首部用于存储控制信息,数据部分用于存储传输的数据内容。

TCP协议的首部包含了源端口号、目的端口号、序号、确认号、窗口大小、校验和等字段,用于保证数据的传输正确性和完整性。

数据部分则是实际传输的数据内容,可以是文本、图片、音频或视频等任意类型的数据。

1.2TCP连接建立过程:在TCP协议中,建立连接是通过三次握手的方式实现的。

具体过程如下:第一步:客户端向服务器端发送一个SYN报文,请求建立连接。

第二步:服务器端收到SYN报文后,向客户端发送一个SYN+ACK报文,表示同意建立连接。

第三步:客户端收到SYN+ACK报文后,再向服务器端发送一个ACK报文,表示连接建立成功。

通过三次握手的过程,客户端和服务器端建立了双方的连接,可以进行数据传输操作。

1.3TCP数据传输过程:在TCP协议中,数据传输是通过数据流的方式进行的。

发送方将数据分成小的数据包,并逐个发送给接收方,接收方则根据序号和校验和等字段对数据包进行接收和确认。

如果发送方没有收到接收方的确认消息,则会重新发送数据包,以确保数据的正确传输。

1.4TCP连接释放过程:在TCP协议中,连接释放是通过四次挥手的方式实现的。

具体过程如下:第一步:当客户端数据传输完毕后,向服务器端发送一个FIN报文,表示数据传输结束。

第二步:服务器端收到FIN报文后,向客户端发送一个ACK报文,确认数据传输完毕。

第三步:如果服务器端还有未发送完的数据,会继续发送数据给客户端。

TCPIP数据包结构详解

TCPIP数据包结构详解

TCPIP数据包结构详解TCP/IP是一种广泛使用的网络协议,用于在Internet上进行数据通信。

TCP/IP数据包结构是指TCP/IP协议对数据包的组织和封装方式。

下面将详细介绍TCP/IP数据包结构。

TCP/IP数据包由多个部分组成,其中包括IP头部、TCP/UDP头部、数据(Payload)以及选项部分。

下面将逐一介绍每个部分的功能和结构。

1. IP头部(IP Header):IP头部是TCP/IP数据包的第一个部分,用于指定源IP地址和目标IP地址。

IP头部还包含其他一些字段,如版本号、服务类型、包长、标识符、标志位等。

-版本号:指定IP协议的版本,如IPv4或IPv6-服务类型:指定数据包的优先级。

-包长:指定整个IP数据包的长度。

-标识符:用于唯一标识一个数据包。

-标志位:用于控制数据包的分片和重组。

2. TCP/UDP头部(TCP/UDP Header):TCP/UDP头部紧随IP头部,用于指定源端口和目标端口。

TCP头部和UDP头部具有相似的结构。

-源端口:指定发送数据的应用程序端口。

-目标端口:指定接收数据的应用程序端口。

-序列号和确认号:用于实现TCP协议的可靠传输机制。

- 标识TCP选项:例如最大分段大小(Maximum Segment Size)等。

3. 数据(Payload):数据部分是TCP/IP数据包中的主要内容,包含应用层的数据信息。

例如,HTTP协议中的请求或响应报文就是通过数据部分传输的。

4. 选项部分(Options):选项部分是可选的,用于存储一些与特定协议相关的额外信息。

例如,TCP协议中的选项可以用于实现窗口缩放和选择确认等功能。

总结起来,TCP/IP数据包结构包括IP头部、TCP/UDP头部、数据和选项部分。

这些部分的结构和字段的具体定义可以根据具体的协议版本和实现来确定。

在实际的网络通信中,数据包会通过路由器和交换机等设备进行传输。

路由器根据IP头部中的目标IP地址进行路由选择,将数据包转发到正确的下一个网络节点。

实验三IP数据包结构以及ARP协议分析

实验三IP数据包结构以及ARP协议分析

实验三IP数据包结构以及ARP协议分析一、IP数据包结构IP(Internet Protocol)是TCP/IP协议族中的一种协议,用于在网络上进行数据的传输。

IP数据包是通过互联网进行传输的基本单位。

1. 版本(Version):占4位,表示IP的协议版本号。

目前主要有IPv4和IPv6两个版本。

2. 首部长度(Header Length):占4位,表示IP首部的长度,单位为32位字长。

最小值为5,最大值为15、实际的首部长度需要将该字段乘以32位,即20-60个字节。

3. 区分服务(Differentiated Services):占8位,用于指定交换设备对数据包进行处理的优先级。

4. 总长度(Total Length):占16位,表示IP数据包的总长度,包括首部和数据部分。

5. 标识(Identification):占16位,用于组装分割的IP数据包。

6. 标志(Flags):占3位,用于控制IP分片的相关处理。

7. 片偏移(Fragment Offset):占13位,用于指示分片的位置。

8. 生存时间(Time to Live):占8位,表示IP数据包在网络上存活的最大跳数,用于防止数据包在网络中无限循环。

9. 协议(Protocol):占8位,表示上一层的协议类型,如TCP、UDP或ICMP等。

10. 首部校验和(Header Checksum):占16位,用于对IP首部进行差错检测。

11. 源地址(Source Address):占32位,表示发送该IP数据包的源IP地址。

12. 目标地址(Destination Address):占32位,表示接收该IP 数据包的目标IP地址。

13. 可选项(Options):长度可变,用于对IP数据包进行控制和扩展。

14. 数据(Data):变长,存放上层协议的数据。

ARP(Address Resolution Protocol)是一种用于查询目标IP地址的物理地址(MAC地址)的协议。

实验五、IP协议分析实验报告

实验五、IP协议分析实验报告

实验五、IP协议分析实验报告一、实验目的本次实验的主要目的是深入理解 IP 协议的工作原理和机制,通过实际的抓包分析,掌握 IP 数据包的格式、IP 地址的分类与分配、子网掩码的作用以及路由选择的基本过程。

二、实验环境1、操作系统:Windows 102、抓包工具:Wireshark三、实验原理1、 IP 协议概述IP(Internet Protocol)协议是 TCP/IP 协议簇中最为核心的协议之一,它负责为网络中的设备提供逻辑地址(即 IP 地址),并实现数据包的路由和转发。

2、 IP 数据包格式IP 数据包由头部和数据部分组成。

头部包含了源 IP 地址、目的 IP地址、协议类型、生存时间(TTL)等重要信息。

3、 IP 地址分类IP 地址分为 A、B、C、D、E 五类,其中 A、B、C 类为常用的单播地址,D 类用于组播,E 类为保留地址。

4、子网掩码子网掩码用于确定 IP 地址中的网络部分和主机部分,从而实现子网划分。

5、路由选择路由器根据 IP 数据包中的目的地址和路由表,选择合适的路径将数据包转发到下一跳。

四、实验步骤1、打开 Wireshark 软件,选择合适的网络接口进行抓包。

2、在网络中进行一些常见的网络操作,如访问网页、发送邮件等,以获取 IP 数据包。

3、停止抓包,并对抓取到的数据包进行筛选,只显示 IP 协议的数据包。

4、逐个分析 IP 数据包的头部信息,包括源 IP 地址、目的 IP 地址、协议类型、TTL 等。

5、观察不同类型的 IP 地址,并分析其网络部分和主机部分。

6、研究子网掩码在数据包中的作用,以及如何通过子网掩码确定子网范围。

7、分析路由选择过程,观察数据包在网络中的转发路径。

五、实验结果与分析1、 IP 数据包格式分析通过对抓取到的 IP 数据包进行分析,我们可以看到其头部格式如下:版本(Version):通常为 4,表示 IPv4 协议。

头部长度(Header Length):以 4 字节为单位,指示头部的长度。

计算机网络 ip数据包解析

计算机网络 ip数据包解析

目录1.需求分析---------------------------------------------------------------------12.总体设计---------------------------------------------------------------------13.详细设计---------------------------------------------------------------------24.源程序------------------------------------------------------------------------65.运行结果----------------------------------------------------------------------126.实验总结-----------------------------------------------------------------------147.参考资料-----------------------------------------------------------------------14一.需求分析本设计的目标是捕获网络中的IP数据包,解析数据包的内容,将结果显示在标准输出上,并同时写入日志文件。

程序的具体要求如下:1)以命令行形式运行:hhb logfile,其中hhb是程序名, 而logfile则代表记录结果的日志文件。

2)在标准输出和日志文件中写入捕获的IP包的版本、头长度、服务类型、数据包总长度、数据包标识、分段标志、分段偏移值、生存时间、上层协议类型、头校验和、源IP地址和目的IP地址等内容。

3)当程序接收到键盘输入Ctrl+C时退出二.总体设计为了获取网络中的IP数据包,必须对网卡进行编程,我们使用套接字进行编程。

ip数据包解析实验报告

ip数据包解析实验报告

ip数据包解析实验报告IP数据包解析实验报告引言:IP数据包解析是计算机网络领域中非常重要的一项技术,它能够帮助我们理解和分析网络通信过程中的数据传输。

在本次实验中,我们将深入学习和探索IP 数据包解析的原理和应用。

通过对实验样本的解析和分析,我们将能够更好地理解IP数据包的结构和功能,为网络通信的优化和安全提供有力的支持。

一、实验目的本次实验的主要目的是通过对IP数据包的解析,深入了解IP协议的工作原理和数据包的格式。

通过实际操作和观察,我们将能够掌握IP数据包的结构和各个字段的含义,进一步加深对计算机网络通信的理解。

二、实验环境和工具本次实验使用的环境为Windows操作系统,工具为Wireshark网络抓包工具。

Wireshark是一款功能强大的网络协议分析工具,它能够对网络数据包进行捕获和分析,提供详细的协议信息和数据解析。

三、实验步骤1. 打开Wireshark工具,选择合适的网络接口进行数据包捕获。

2. 启动网络通信应用程序,例如浏览器或者远程连接工具。

3. 在Wireshark中停止数据包捕获,然后选择一条IP数据包进行解析。

4. 通过分析IP数据包的各个字段,了解其结构和含义。

例如,源IP地址、目标IP地址、协议类型、数据包长度等。

5. 分析IP数据包的源和目标地址,探索网络通信的路径和过程。

通过查找路由表和网络拓扑,了解数据包的传输路径。

6. 根据实验结果,总结IP数据包解析的过程和方法。

思考IP数据包解析在网络通信中的应用和意义。

四、实验结果与分析通过对多个IP数据包的解析和分析,我们得到了以下实验结果和分析结论:1. IP数据包的源IP地址和目标IP地址是网络通信的重要标识,它们决定了数据包的发送和接收方向。

2. IP数据包的协议字段指示了数据包所使用的传输协议,例如TCP、UDP或ICMP等。

不同的协议有不同的功能和特点。

3. IP数据包的数据字段可以携带应用层的数据信息,例如网页内容或者文件传输数据。

TCPIP协议分析实验

TCPIP协议分析实验

TCPIP协议分析实验一、实验目的本实验旨在通过对TCP/IP协议的分析,加深对网络协议的理解,掌握抓包工具的使用以及网络通信的过程。

二、实验器材1.计算机一台2.网络抓包工具三、实验内容1.实验前准备首先需要在计算机上安装网络抓包工具,如Wireshark等。

2.抓包过程使用抓包工具在计算机上开启抓包功能,并进行网络通信。

例如使用浏览器访问一个网页、发送电子邮件等。

3.抓包数据分析将抓包工具捕获的数据进行分析。

根据每个包的协议类型、源地址、目的地址、数据内容等信息,逐一分析TCP/IP协议的流程和通信过程。

四、实验结果与分析通过抓包工具捕获的数据,我们可以得到以下实验结果和分析:1.协议类型分析根据抓包得到的数据,可以看到TCP、IP等协议的使用情况。

TCP协议是一种可靠的传输协议,用于确保数据能够准确无误地传输。

IP协议则是一种网络层协议,用于将数据包从一个主机传输到另一个主机。

2.源地址与目的地址分析通过抓包数据中的源地址和目的地址,可以了解数据包的发送方和接收方。

源地址是发起通信的主机,目的地址是接收通信的主机。

通过分析源地址和目的地址,可以确定通信的源和目的地,进而了解通信的主要参与者。

3.数据包的信息分析根据抓包数据中的数据内容,我们可以了解通信中所传输的具体信息。

例如,对于网页访问,可以从抓包数据中看到HTTP协议的使用,以及网页的具体内容。

对于电子邮件,可以从抓包数据中看到SMTP协议的使用,以及邮件的具体内容。

五、实验总结通过以上分析,我们可以了解到TCP/IP协议在网络通信中的重要性和应用情况。

TCP/IP协议是一种常用的网络协议,广泛应用于互联网、局域网等各类网络中。

通过对抓包数据的分析,我们可以进一步了解网络通信过程中各个环节的工作原理和特点,提高网络故障排除和优化的能力。

此外,实验过程中还需注意保护个人隐私和数据安全,避免在未经授权的情况下对他人进行抓包和分析。

六、参考资料1.《计算机网络》(第七版)-谢希仁。

08李倩 实验二 TCPIP协议数据包分析

08李倩 实验二 TCPIP协议数据包分析

南京理工大学泰州科技学院实验报告书课程名称:《计算机网络安全教程》实验题目:实验二TCPIP协议数据包分析班级:10信管(1)学号:1009120108姓名:李倩指导教师:袁宝华成绩:批阅教师:袁宝华2013 年月日一、实验目的1、掌握TCP协议包的头结构。

2、掌握UDP协议包的头结构。

3、掌握ICMP协议包的头结构。

二、实验内容1.开启telnet服务2.连接telnet服务器3.分析TCP协议包头结构4.分析UDP协议包头结构5.分析ICMP协议包头结构三、实验环境Winxp、Windows 2000 server、10/100MB网卡、IE6.0四、实验步骤1.开启主机的FTP服务,启动Sniffer,然后再主机的DOS命令行下使用FTP指令连接目的主机上的FTP服务器。

2.选择主菜单“Capture”下的“Define Filter”菜单项。

在出现“Define Filter”对话框中,选择“Address”选项卡。

3.在“Address”下拉列表中,选择抓包的类型为IP,在“Station1”下面输入主机的IP地址,主机的IP地址是192.169.39.7,;与之对应的“Station2”下面输入虚拟机的IP地址,虚拟机的IP地址是192.169.39.107。

4.设置完毕后,单击窗口的“Advanced”选项卡,拖动滚动条找到IP项,将IP和ICMP选中。

5.向下拖动滚动条,将TCP和UDP选中,再把TCP下面的FTP和Telnet两个选项选中。

继续拖动滚动条,选中UDP下面的DNS。

6.默认情况下,FTP服务器支持匿名访问,输入的用户名是ftp,密码是ftp。

推出对方FTP使用的命令是bye。

停止Sniffer,并查看抓取的FTP会话过程。

单击工具栏上的“Stop and Display”按钮。

7.将主机的DNS解析指向虚拟机。

8.设置完毕后,在主机的DOS 界面中输入命令“nslookup”。

实验2 网络协议TCP-IP分析

实验2  网络协议TCP-IP分析

实验2 网络协议TCP/IP分析了解Sniffer Pro相关协议和网络分析程序是开始进行分析时必须要进行的内容。

通过本次实验向同学们解释如何使用Sniffer Pro这个工具来监控网络程序,使你可以初步了解如何用Sniffer Pro来进行网络和协议分析。

2.1.1 开始与停止捕获过程捕获数据的机制相对比较简单,所有需要做的就是进行实际的分析。

在解释要查找什么、分析什么以及分析过程的细节。

1.首先,打开Sniffer Pro程序,如果系统要求的话,还要选择一个适配器。

打开了程序后,会看到图2.1中的屏幕。

图2.1 浏览Sniffer Pro程序2.打开Sniffer Pro程序后,选择Capture(捕获)-Start(开始),或者使用F10键,或者是工具栏上的开始箭头(通过这次实验,大家应该非常了解这个菜单结构了)。

因为捕获过程需要几分钟才能完成,这时我们可以先了解如何自定义Sniffer Pro高级与捕获窗口,这样后面就可以节省一点时间。

3.下面,在Sniffer Pro程序中,会看到高级系统被自动调用,如图2.2所示。

打开这个窗口后,不会看到任何东西,除非停止捕获过程才可以查看内容。

让捕获过程持续运行一段时间,这时可以自定义高级系统,这样就能实时地看到不断出现的问题。

4.浏览图2.2中的屏幕。

高级窗口这时会滚动到窗口左边,只能看到工具栏,而没有任何详细资料。

如果要查看详细资料,就要找到高级窗口对话框左上角的箭头,这个箭头在“层次”这个词的右边。

单击这个箭头后,会显示出高级功能的另一部分窗口,如图2.3所示。

图2.2 开始捕获过程时调用高级系统这里有很多内容,不要急于了解所有这些内容。

后面学习中再解释所有的Sniffer Pro的高级功能。

现在,你只需要了解如何进行基本的捕获过程。

在掌握了“怎样”这个问题后,就可以接着去了解“什么”和“为什么”的问题。

5.你可以看到我们能自定义Sniffer Pro程序用于将来的捕获过程,所以我们在下面要对如何使用高级功能进行分析。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

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位。

这个字段只检验数据报的首部,但不包括数据部分。

这是因为数据报每经过一个路由器,路由器都要重新计算一下首部检验和
(一些字段,如生存时间、标志、片偏移等都可能发生变化)。

不检验数据部分可减少计算的工作量。

(11)源地址占32位。

(12)目的地址占32位。

IP数据报首部的可变部分
IP首部的可变部分就是一个可选字段。

选项字段用来支持排错、测量以及安全等措施,内容很丰富。

此字段的长度可变,从1个字节到40个字节不等,取决于所选择的项目。

某些选项项目只需要1个字节,它只包括1个字节的选项代码。

但还有些选项需要多个字节,这些选项一个个拼接起来,中间不需要有分隔符,最后用全0的填充字段补齐成为4字节的整数倍。

增加首部的可变部分是为了增加IP数据报的功能,但这同时也使得IP数据报的首部长度成为可变的。

这就增加了每一个路由器处理数据报的开销。

实际上这些选项很少被使用。

新的IP版本IPv6就将IP数据报的首部长度做成固定的。

②捕捉IP数据报的格式图例。

三、实验心得
通过这次实验,对Wireshark又进一步了解,了解了怎样运用wireshark去获取ip,分析ip数据包。

相关文档
最新文档