当前位置:文档之家› 网络协议抓包分析

网络协议抓包分析

中国矿业大学《网络协议》

姓名:李程

班级:网络工程2009-2

学号:08093672

实验一:抓数据链路层的帧

一、实验目的

分析MAC层帧结构

二、准备工作

本实验需要2组试验主机,在第一组上安装锐捷协议分析教学系统,使用其中的协议数据发生器对数据帧进行编辑发送,在第二组上安装锐捷协议分析教学系统,使用其中的网络协议分析仪对数据帧进行捕获分析。

三、实验内容及步骤

步骤一:运行ipconfig命令

步骤二:编辑LLC信息帧并发送

步骤三:编辑LLC监控帧和无编号帧,并发送和捕获:步骤四:保存捕获的数据帧

步骤五:捕获数据帧并分析

使用iptool进行数据报的捕获:

报文如下图:

根据所抓的数据帧进行分析:

(1)MAC header

目的物理地址:00:D0:F8:BC:E7:06

源物理地址:00:16:EC:B2:BC:68

Type是0x800:意思是封装了ip数据报

(2)ip数据报

由以上信息可以得出:

①版本:占4位,所以此ip是ipv4

②首部长度:占4 位,可表示的最大十进制数值是15。此ip数据报没有选项,故它的最大十进制为5。

③服务:占8 位,用来获得更好的服务。这里是0x00

④总长度:总长度指首都及数据之和的长度,单位为字节。因为总长度字段为16位,所以数据报的最大长度为216-1=65 535字节。

此数据报的总长度为40字节,数据上表示为0x0028。

⑤标识(Identification):占16位。IP软件在存储器中维持一个计数器,每产生一个数据报,计数器就加1,并将此值赋给标识字段。但这个“标识”并不是序号,

因为IP是无连接的服务,数据报不存在按序接收的问题。当数据报由于长度超过网络的MTU 而必须分片时,这个标识字段的值就被复制到所有的数据报的标识字段中。相同的标识字段的值使分片后的各数据报片最后能正确地重装成为原来的数据报。

在这个数据报中标识为18358,对应报文16位为47b6

⑥标志(Flag):占 3 位,但目前只有2位有意义。标志字段中的最低位记为MF (More Fragment)。MF=1即表示后面“还有分片”的数据报。MF=0表示这已是若干数据报片中的最后一个。标志字段中间的一位记为DF(Don't Fragment),意思是“不能分片”。只有当DF=0时才允许分片。这个报文的标志是010,故表示为不分片!对应报文16位为0x40。

⑦片偏移:因为不分片,故此数据报为0。对应报文16位为0x00。

⑧生存时间:占8位,生存时间字段常用的英文缩写是TTL (Time To Live),其表明数据报在网络中的寿命。每经过一个路由器时,就把TTL减去数据报在路由器消耗掉的一段时间。若数据报在路由器消耗的时间小于1 秒,就把TTL值减1。当TTL值为0时,就丢弃这个数据报。经分析,这个数据报的的TTL为64跳!对应报文16位为0x40。

⑨协议:占8 位,协议字段指出此数据报携带的数据是使用何种协议,以便使目的主机的IP层知道应将数据部分上交给哪个处理过程。这个ip数据报显示使用得是TCP协议对

应报文16位为0x06。

⑩首部检验和:占16位。这个字段只检验数据报的首部,但不包括数据部分。这是因为数据报每经过一个路由器,都要重新计算一下首都检验和(一些字段,如生存时间、标志、片偏移等都可能发生变化)。不检验数据部分可减少计算的工作量。对应报文16位为0x8885。

⑾源地址:占32位。此报文为219.219.61.32 对应数据为DB:DB:3D:20

⑿目的地址:占32位。此报文为199.75.218.77对应数据为77:4B:DA:4D

(13)选项:这里是无!

(2)TCP 报头

TCP报文首部格式

●源端口(Source Port):16位的源端口字段包含初始化通信的端口号。源端口和IP地址

的作用是标识报文的返回地址。这个报文是3204对应的数据报中的16位为0x0c84。●目的端口(Destination Port):16位的目的端口字段定义传输的目的。这个端口指明接收方

计算机上的应用程序接口。

这个报文的目的端口是80(代表了http协议)对应的数据报中的16位为0x0050

●序列号(Sequence Number):该字段用来标识TCP源端设备向目的端设备发送的字节流,

它表示在这个报文段中的第几个数据字节。序列号是一个32位的数。

这个报文的sequence number是2416921514对应的数据报中的16位为0x900f4baa

●确认号(Acknowledge Number):TCP使用32位的确认号字段标识期望收到的下一个段

的第一个字节,并声明此前的所有数据已经正确无误地收到,因此,确认号应该是上次已成功收到的数据字节序列号加1。收到确认号的源计算机会知道特定的段已经被收到。

确认号的字段只在ACK标志被设置时才有效。

这个报文的ACK是2803024519对应的数据报中的16位为0xa712c287

●首部长度(header length)这里是5 代表了20字节也表示tcp选项是无,对应的数据

报中的16位为0x50

●控制位(Control Bits):共6位,每一位标志可以打开一个控制功能。

URG(Urgent Pointer Field Significant,紧急指针字段标志):表示TCP包的紧急指针字段有效,用来保证TCP连接不被中断,并且督促中间齐备尽快处理这些数据。

这里URG为0 表示not set

ACK(Acknowledgement field significant,确认字段标志): 取1时表示应答字段有效,也即TCP应答号将包含在TCP段中,为0则反之。

这里ACK为1 表示是确认帧

PSH(Push Function,推功能):这个标志表示Push操作。所谓Push操作就是指在数据包到达接收端以后,立即送给应用程序,而不是在缓冲区中排队。

这里PSH位置0表示不直接送给应用程序

RST(Reset the connection,重置连接):这个标志表示感谢连接复位请求,用来复位那些产生错误的连接,也被用来拒绝错误和非法的数据包。

这里是0 表示不产生重置连接

SYN(Synchronize sequence numbers,同步序列号):表示同步序号,用来建立连接。

这里SYN为0,表示没有设置同步

FIN(No more data from sender):表示发送端已经发送到数据末尾,数据传送完成,发送FIN标志位的TCP段,连接将被断开。

这里FIN是0,表示没有设置

这里对应的数据报中的16位为0x10

●窗口(Window):目的主机使用16位的窗口字段告诉源主机它期望每次收到的数据通

的字节数。

此报文窗口大小为65535对应的数据报中的16位为0xffff

●校验和(Checksum):TCP头包括16位的校验和字段用于错误检查。源主机基于部分

IP头信息,TCP头和数据内容计算一个校验和,目的主机也要进行相同的计算,如果收到的内容没有错误过,两个计算应该完全一样,从而证明数据的有效性。

这里检验和为:0xf317

●紧急指针(Urgent Pointer):紧急指针字段是一个可选的16位指针,指向段内的最后一

个字节位置,这个字段只在URG标志被设置时才有效。

这里Urgent Pointer为零,表示没有使用紧急指针

选项(Option):至少1字节的可变长字段,标识哪个选项(如果有的话)有效。如果没有选项,这个字节等于0,说明选项的结束。这个字节等于1表示无需再有操作;等于2表示下四个字节包括源机器的最大长度(Maximum Segment Size,MSS).这里选项没有设置

●填充(Padding):这个字段中加入额外的零,以保证TCP头是32的整数倍。

实验二 IP报文分析

一、实验目的

掌握IP数据包的组成和网络层的基本功能;

二、准备工作

本实验需要2组试验主机,在第一组上安装锐捷协议分析教学系统,使用其中的协议数据发生器对数据帧进行编辑发送,在第二组上安装锐捷协议分析教学系统,使用其中的网络协议分析仪对数据帧进行捕获分析。

三、实验内容及步骤

步骤一:设定实验环境

步骤二:利用网络协议分析软件捕获并分析IP数据包

1、在某台主机中打开网络协议分析软件,在工具栏中点击“开始”,待一段时间后,点击“结束”,

2、在捕获到数据包中,选择IP数据包进行分析

分析捕获到的IP数据包,因此在本实验中,只分析数据的的IP 包头部分。

步骤三:利用网络协议编辑软件编辑并发送IP数据包

1、在主机PC1打开网络协议编辑软件,在工具栏选择“添加”,建立一个IP数据包。

2、填写“源物理地址”:可以在地址本中找到本机的MAC地址,

然后左键选择,点击“确定”加入地址。

3、填写“目的物理地址”:可以在地址本中选择PC2的MAC地址,然后左键选择并单击“确定”加入地址。

4、填写“类型或长度”:该字段值为0800。

点击工具栏或菜单栏中的“发送”,在弹出的对话框中配置发送次数,然后选择“开始”按钮,发送帧序列

在PC2中用协议分析器截获数据包并分析。

步骤四:运行ipconfig命令

步骤五:运行ping命令

IP数据报分析

由以上信息可以得出:

①版本:占4位,所以此ip是ipv4

②首部长度:占4 位,可表示的最大十进制数值是15。此ip数据报没有选项,故它的最大十进制为5。

③服务:占8 位,用来获得更好的服务。这里是0x00

④总长度:总长度指首都及数据之和的长度,单位为字节。因为总长度字段为16位,所以数据报的最大长度为216-1=65 535字节。

此数据报的总长度为40字节,数据上表示为0x0028。

⑤标识(Identification):占16位。IP软件在存储器中维持一个计数器,每产生一个数据报,计数器就加1,并将此值赋给标识字段。但这个“标识”并不是序号,

因为IP是无连接的服务,数据报不存在按序接收的问题。当数据报由于长度超过网络的MTU 而必须分片时,这个标识字段的值就被复制到所有的数据报的标识字段中。相同的标

识字段的值使分片后的各数据报片最后能正确地重装成为原来的数据报。

在这个数据报中标识为18358,对应报文16位为47b6

⑥标志(Flag):占 3 位,但目前只有2位有意义。标志字段中的最低位记为MF (More Fragment)。MF=1即表示后面“还有分片”的数据报。MF=0表示这已是若干数据报片中的最后一个。标志字段中间的一位记为DF(Don't Fragment),意思是“不能分片”。只有当DF=0时才允许分片。这个报文的标志是010,故表示为不分片!对应报文16位为0x40。

⑦片偏移:因为不分片,故此数据报为0。对应报文16位为0x00。

⑧生存时间:占8位,生存时间字段常用的英文缩写是TTL (Time To Live),其表明数据报在网络中的寿命。每经过一个路由器时,就把TTL减去数据报在路由器消耗掉的一段时间。若数据报在路由器消耗的时间小于1 秒,就把TTL值减1。当TTL值为0时,就丢弃这个数据报。经分析,这个数据报的的TTL为64跳!对应报文16位为0x40。

⑨协议:占8 位,协议字段指出此数据报携带的数据是使用何种协议,以便使目的主机的IP层知道应将数据部分上交给哪个处理过程。这个ip数据报显示使用得是TCP协议对应报文16位为0x06。

⑩首部检验和:占16位。这个字段只检验数据报的首部,但不包括数据部分。这是因为数据报每经过一个路由器,都要重新计算一下首都检验和(一些字段,如生存时间、标志、片偏移等都可能发生变化)。不检验数据部分可减少计算的工作量。对应报文16位为0x8885。

⑾源地址:占32位。此报文为219.219.61.32 对应数据为DB:DB:3D:20

⑿目的地址:占32位。此报文为199.75.218.77对应数据为77:4B:DA:4D

(13)选项:这里是无!

(2)TCP 报头

TCP报文首部格式

●源端口(Source Port):16位的源端口字段包含初始化通信的端口号。源端口和IP地址

的作用是标识报文的返回地址。这个报文是3204对应的数据报中的16位为0x0c84。●目的端口(Destination Port):16位的目的端口字段定义传输的目的。这个端口指明接收方

计算机上的应用程序接口。

这个报文的目的端口是80(代表了http协议)对应的数据报中的16位为0x0050

●序列号(Sequence Number):该字段用来标识TCP源端设备向目的端设备发送的字节流,

它表示在这个报文段中的第几个数据字节。序列号是一个32位的数。

这个报文的sequence number是2416921514对应的数据报中的16位为0x900f4baa

●确认号(Acknowledge Number):TCP使用32位的确认号字段标识期望收到的下一个段

的第一个字节,并声明此前的所有数据已经正确无误地收到,因此,确认号应该是上次已成功收到的数据字节序列号加1。收到确认号的源计算机会知道特定的段已经被收到。

确认号的字段只在ACK标志被设置时才有效。

这个报文的ACK是2803024519对应的数据报中的16位为0xa712c287

●首部长度(header length)这里是5 代表了20字节也表示tcp选项是无,对应的数据

报中的16位为0x50

●控制位(Control Bits):共6位,每一位标志可以打开一个控制功能。

URG(Urgent Pointer Field Significant,紧急指针字段标志):表示TCP包的紧急指针字段有效,用来保证TCP连接不被中断,并且督促中间齐备尽快处理这些数据。

这里URG为0 表示not set

ACK(Acknowledgement field significant,确认字段标志): 取1时表示应答字段有效,也即TCP应答号将包含在TCP段中,为0则反之。

这里ACK为1 表示是确认帧

PSH(Push Function,推功能):这个标志表示Push操作。所谓Push操作就是指在数

据包到达接收端以后,立即送给应用程序,而不是在缓冲区中排队。

这里PSH位置0表示不直接送给应用程序

RST(Reset the connection,重置连接):这个标志表示感谢连接复位请求,用来复位那些产生错误的连接,也被用来拒绝错误和非法的数据包。

这里是0 表示不产生重置连接

SYN(Synchronize sequence numbers,同步序列号):表示同步序号,用来建立连接。

这里SYN为0,表示没有设置同步

FIN(No more data from sender):表示发送端已经发送到数据末尾,数据传送完成,发送FIN标志位的TCP段,连接将被断开。

这里FIN是0,表示没有设置

这里对应的数据报中的16位为0x10

●窗口(Window):目的主机使用16位的窗口字段告诉源主机它期望每次收到的数据通

的字节数。

此报文窗口大小为65535对应的数据报中的16位为0xffff

●校验和(Checksum):TCP头包括16位的校验和字段用于错误检查。源主机基于部分

IP头信息,TCP头和数据内容计算一个校验和,目的主机也要进行相同的计算,如果收到的内容没有错误过,两个计算应该完全一样,从而证明数据的有效性。

这里检验和为:0xf317

●紧急指针(Urgent Pointer):紧急指针字段是一个可选的16位指针,指向段内的最后一

个字节位置,这个字段只在URG标志被设置时才有效。

这里Urgent Pointer为零,表示没有使用紧急指针

选项(Option):至少1字节的可变长字段,标识哪个选项(如果有的话)有效。如果没有选项,这个字节等于0,说明选项的结束。这个字节等于1表示无需再有操作;等于2表示下四个字节包括源机器的最大长度(Maximum Segment Size,MSS).这里选项没有设置

●填充(Padding):这个字段中加入额外的零,以保证TCP头是32的整数倍。

实验三 ARP地址解析协议分析实验

一、实验目的

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

二、准备工作

本实验需要2组试验主机,在第一组上安装锐捷协议分析教学系统,使用其中的协议数据发生器对数据帧进行编辑发送,在第二组上安装锐捷协议分析教学系统,使用其中的网络协议分析仪对数据帧进行捕获分析。

三、实验内容及步骤

步骤一:设定实验环境

步骤二:捕获ARP报文并进行分析

1、在主机PC1中用命令arp –a可以查看ARP缓存表中的ARP 记录,用arp –d命令删除ARP缓存中的记录

2、在PC1中开启协议分析仪进行数据包捕获。

3、在PC1中用命令ping 219.219.61.114。

4、捕获ARP报文进行分析。

捕获的ARP请求报文; 捕获的ARP应答报文

在PC1中用命令arp –d删去ARP缓存中的ARP记录。

在PC1上开启协议分析仪捕获ARP包进行分析。

在PC1上ping PC3地址172.16.2.2。

对捕获的数据包进行分析。

步骤三:编辑发送ARP报文请求报文(同网段)

1、在命令提示符下运行:arp –d,清空ARP高速缓存。

2、编辑并发送ARP报文

3、在PC1上开启协议分析软件,进行数据包捕获分析

4、在PC1中用命令arp –a可以查看到ARP缓存中的PC2的ARP记录

步骤四:编辑发送ARP报文请求报文(不同网段)

1、在命令提示符下运行:arp –d,清空ARP高速缓存。

2、在PC1上编辑并发送ARP请求,目标地址为PC3主机的地址

3、在PC1上开启协议分析软件,进行数据包捕获分析

第一步:获得物理地址

抓arp数据报:

如下是ARP是请求报文:

帧头部分上两次实验已经分析,这里不再赘述了

ARP请求报文的格式如下:

分析报文如下:

此报文的源硬件地址为:00:16:EC:B2:BC:68

在请求时是广播所以是:FF:FF:FF:FF:FF:FF

硬件类型指明发送方想知道的硬件接口类型。对以太网,值为1;

这里是00 01,所以是以太网。

协议类型指明发送方提供的高层协议地址类型。对TCP/IP互联网,采用IP地址,值为十六机制的0800;

硬件地址长度:这里是6这里对应的数据报中的16位为0x06

协议地址长度:这里是4这里对应的数据报中的16位为0x04

操作指明ARP的操作类型,ARP请求为1

这里是0001 代表是请求

发送方硬件地址:00:16:EC:B2:BC:68

发送方协议地址:219.219.61.32这里对应的数据报中的16位为DB DB 3D 20

目标硬件地址:00:00:00 :00 :00 :00

目标协议地址:219.219.61.114这里对应的数据报中的16位为DB DB3D 72

填充:这里没有添加

如下是arp应答报文:

报文分析:

请求和应答报文有些部分是相同的,就不再赘述了,只是目的地址和源地址互换了一下,且将请求的ip的作为源逻辑地址

此报文中:操作指明ARP的操作类型,ARP应答为2

这里是代表是请求

这里用了填充占用了18字节如上图阴影部分。

实验四tcp协议

一、三次握手过(利用HTTP协议)

,

Tcp握手第一次

Tcp握手的第二次

Tcp握手的三次

分析三次握手,入手点应该从seq和ack入手

如上图三个数据报:

首先看上图的三个tcp报文的共同部分

1、这个tcp连接应该是http服务,因为使用的端口为80

2、然后这三个tcp报文的地址:

本机物理地址:192.168.66.129

本机逻辑地址:0c:29:AD:44:3D:08

远地物理地址:119.75.217.56

远地逻辑地址:0d:50:56:e9:e3:27

然后是不同部分:

那就是seq和ack的不同,根据上图

第一次seq的值为:3452172089

ack为0

第二次对第一次进行确认并且设置自己的seq:Ack为:3452172090第一次seq+1

seq:948198055

第三次对第二次进行确认:

Seq为3452172090

Ack为948198056这里为第二次seq+1

二、FTP协议分析

分析ftp首先要了解ftp:

FTP(File Transfer Protocol, FTP)是TCP/IP网络上两台计算机传送文件的协议,FTP是在TCP/IP网络和INTERNET上最早使用的协议之一,它属于网络协议组的应用层。FTP客户机可以给服务器发出命令来下载文件,上载文件,创建或改变服务器上的目录。

FTP服务一般运行在20和21两个端口。端口20用于在客户端和服务器之间传输数据流,而端口21用于传输控制流,并且是命令通向ftp服务器的进口。当数据通过数据流传输时,控制流处于空闲状态。

分析:FTP使用的是tcp连接

所以如上图:

使用的端口21 用于控制,其他部分和tcp报文是相同的。

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

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

第一部分是菜单和工具栏,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)

IGMP及抓包分析

IGMP IGMP 是Internet Group Management Protocol(互联网组管理协议)的简称。它是TCP/IP 协议族中负责IP 组播成员管理的协议,用来在IP 主机和与其直接相邻的组播路由器之间建立、维护组播组成员关系。 到目前为止,IGMP 有三个版本: 1、IGMPv1(由RFC 1112 定义) 2、IGMPv2(由RFC 2236 定义) 3、IGMPv3(由RFC 3376定义) 一、IGMPv1 1.1报文格式 1、版本: 版本字段包含IGMP版本标识,因此设置为1。 2、类型: 成员关系查询(0x11) 成员关系报告(0x12) 3、校验和 4、组地址: 当一个成员关系报告正被发送时,组地址字段包含组播地址。 当用于成员关系查询时,本字段为0,并被主机忽略。 1.2组成员加入过程 当一个主机希望接收一个组播组的数据,则发送成员加入报告给组播组。

IGMPv1 join包如下: 1.3查询与响应过程 路由器RTA(IGMP查询器)周期性地(默认60秒)向子网内所有主机(224.0.0.1代表子网内所有主机)发送成员关系查询信息。

所有主机收到IGMPv1成员关系查询信息,一主机首先向组播组发送IGMPv1成员关系报告。 组的其他成员监听到报告后抑制自己的成员关系报告发送。 1.4 抑制机制 当主机收到IGMP成员关系查询时,对它已经加入的每个组播组启动一个倒计数报告计时器。各个报告计时器初始值为从0到最大响应之间一个随机数,默认值是10秒。 计时器到时的主机则主动发送成员关系报告,目的地为该主机所属的组地址。 其它主机收到该成员关系报告,则抑制成员关系报告的发送,并删除计时器。 1.5 组成员离开过程 主机“默不作声”地离开组(不发送报告了)。 路由器发送成员关系查询信息。 路由器没有收到该组的IGMP报告,则再发送成员关系信息(3次查询周期过后)。 组播组超时,剪枝。 二、IGMPv2 2.1报文格式 1、类型 成员关系查询(0x11) 常规查询:用于确定哪些组播组是有活跃的,即该组是否还有成员在使用,常规查询地址由全零表示; 特定组查询:用于查询某具体组播组是否还有组成员。 版本2成员关系报告(0x16) 版本1成员关系报告(0x12) 离开组消息(0x17)

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

计算机网络技术及应用实验报告

第一部分是菜单和工具栏,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)

69 5b(0110 1001 0101 1011) 首部来源:dd b4 15 f1(1101 1101 1011 0100 0001 0101 1110 0001) 目的地:70 04 f8 82 (0110 0000 0000 0100 1111 1000 1000 0010) 点对点协议:00 21 (0000 0000 0010 0001)

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

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

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

ping包: (2)ing http://biz.doczj.com/doc/7517599297.html, ARP包:

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

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

网络抓包实验

《网络信息与安全》 实验名称: 网络流量分析和监测程序的实现。 指导老师: 张兰萍 设计学生:许欣学号:07202123 班级:07行知网络 日期:2010.11.30 实验要求: 学会利用编程工具进行网络数据包的捕获并析出报文信息。结出所实现程序的功能结构图: 给出程序设计的思想: 网络层上有各种各样的数据包,它们以不同的帧格式在网络层上进行传输,但是在传输时它们都遵循相同的格式,即有相同的长度,如果一种协议的帧格式达不到这种长度,就让其补齐,以达到我们的要求。我的这个网络抓包程序是图形化操作界面,在菜单栏点击抓包按钮后选择网卡和过滤字还有最长字长,点击开始,然后就可以开始抓包了,在主界面中就会显示出一行又一行的数据,这些数据就是抓获到的数据包。 捕获Java程序中的网络包,是需要一些辅助工具,因为核心Java API不能访问底层的网络数据。Jpcap是一种提供在Windows或UNIX系统上进行这种访问的Java API。在程序设计之初就下载

了该包。Jpcap使用一个事件模型来处理包,首先创建一个执行接口jpcap.JpcapHandler的类。 为了捕获包,需要告诉Jpcap你想用哪个网络设备来监听。API 提供了jpcap.Jpcap.getDeviceList()方法以满足这一目的。这个方法返回一列字符串。 选择一个设备之后,通过Jpcap.openDevice()方法打开它。openDevice()方法需要四个参数:即将打开的设备名,从设备上一次读取的最大字节数,说明是否将设备设为混杂模式的Boolean值,和以后调用processPacket()方法要使用到的超时值。如果调用processPacket(),那么Jpcap将一直捕获包,直到超过openDevice中规定的时限或达到了规定的最大包数。loopPacket()则将一直捕获包,直到达到最大包数,如果没有最大数限制,它将永远运行下去。 关键程序说明: 抓包程序package netcap; import java.io.File; import java.util.Vector; import javax.swing.JFileChooser; import javax.swing.JOptionPane; import jpcap.JpcapCaptor; import jpcap.PacketReceiver; import jpcap.JpcapWriter;

IGMP与MLD(BTV IPTV)性能测试指导

1 提供BTV业务功能 本文介绍kylinPET性能测试工具进行IPTV的直播测试 1)图形化直观表示BTV业务交互流程 2)支持视频媒体MDI、RTP丢包等指标监控 3)每个BTV用户一个虚拟IP 4)支持IPv4的IGMP组播;支持IPv6的MLD组播 2 IGMP组播加入频道并监控频道质量 通过该例子,介绍如何使用工具完成BTV业务测试,及介绍工具的界面使用方法。操作步骤: 2.1 Scripter创建流程脚本 2.1.1 新建业务脚本 点击“文件” -> “新建”或者“工具栏”的“新建”按钮。HeBIn

2.1.2 编辑脚本流程 1)配置参数列表 A.新建group-source2参数作为组播报文源IP 按顺序递增,即用户1的组播源IP为152.168.1.1,用户2的组播源IP为 152.1681.2 B.新建group-ip2参数作为组播报文的组播IP

C.新建port参数作为监听媒体流的目的端口 D.组播协议为v3

注意: 1、V3版本需要配置组播源IP,组播IP;而v2版本不需要配置组播源IP,只需要组播IP。 2、V3版本IGMP报文目的IP为224.0.0.22;而v2版本IGMP报文目的IP为配置的组播IP 2)编辑流程图 A.编辑BTV业务流程图,监控媒体流,发送加入组播组报文,休眠20秒,关 闭媒体流,发送离开组播组报文。 B.“monitor A”媒体节点

通知媒体代理器监控媒体流指标,这里选择媒体流目的IP与端口(需在参数预先配置) C.“join A”发送节点 发送IGMP组播报文,组播组IP为group-ip2,组播源为group-source2 D.“close”媒体节点

抓包实验

:利用Wireshark软件进行数据包抓取 1.3.2 抓取一次完整的网络通信过程的数据包实验 一,实验目的: 通过本次实验,学生能掌握使用Wireshark抓取ping命令的完整通信过程的数据包的技能,熟悉Wireshark软件的包过滤设置和数据显示功能的使用。 二,实验环境: 操作系统为Windows 7,抓包工具为Wireshark. 三,实验原理: ping是用来测试网络连通性的命令,一旦发出ping命令,主机会发出连续的测试数据包到网络中,在通常的情况下,主机会收到回应数据包,ping采用的是ICMP协议。 四,验步骤: 1.确定目标地址:选择http://biz.doczj.com/doc/7517599297.html,作为目标地址。 2.配置过滤器:针对协议进行过滤设置,ping使用的是ICMP协议,抓包前使用捕捉过滤器,过滤设置为icmp,如图 1- 1

图 1-1 3.启动抓包:点击【start】开始抓包,在命令提示符下键入ping http://biz.doczj.com/doc/7517599297.html,, 如图 1-2

图 1-2 停止抓包后,截取的数据如图 1-3 图 1-3 4,分析数据包:选取一个数据包进行分析,如图1- 4

图1-4 每一个包都是通过数据链路层DLC协议,IP协议和ICMP协议共三层协议的封装。DLC协议的目的和源地址是MAC地址,IP协议的目的和源地址是IP地址,这层主要负责将上层收到的信息发送出去,而ICMP协议主要是Type和Code来识别,“Type:8,Code:0”表示报文类型为诊断报文的请求测试包,“Type:0,Code:0”表示报文类型为诊断报文类型请正常的包。ICMP提供多种类型的消息为源端节点提供网络额故障信息反馈,报文类型可归纳如下: (1)诊断报文(类型:8,代码0;类型:0代码:0); (2)目的不可达报文(类型:3,代码0-15); (3)重定向报文(类型:5,代码:0--4); (4)超时报文(类型:11,代码:0--1); (5)信息报文(类型:12--18)。

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,表示

计算机网络抓包实验报告

实验报告二

学号1040407105 实验项目 名称 利用Wireshark 进行抓包分析 上面的截图是抓取到的包,下面分别针对其中的一个TCP,UDP和ICMP进行分析 1.TCP TCP:Transmission Control Protocol 传输控制协议TCP是一种面向连接(连接导向)的、可靠的、基于字节流的运输层(Transport layer)通信协议,由IETF的RFC 793 说明(specified)。在简化的计算机网络OSI模型中,它完成第四层传输层所指定的功能。 在因特网协议族(Internet protocol suite)中,TCP层是位于IP层之上,应用层之下的中间层。不同主机的应用层之间经常需要可靠的、像管道一样的连接,但是IP层不提供这样的流机制,而是提供不可靠的包交换。 应用层向TCP层发送用于网间传输的、用8位字节表示的数据流,然后TCP把数据流分割成适当长度的报文段(通常受该计算机连接的网络的数据链路层的最大传送单元(MTU)的限制)。之后TCP把结果包传给IP层,由它来通过网络将包传送给接收端实体的TCP层。TCP为了保证不发生丢包,就给每个字节一个序号,同时序号也保证了传送到接收端实体的包的按序接收。然后接收端实体对已成功收到的字节发回一个相应的确认(ACK);如果发送端实体在合理的往返时延(RTT)内未收到确认,那么对应的数据(假设丢失了)将会被重传。TCP用一个校验和函数来检验数据是否有错误;在发送和接收时都要计算校验和。

学号1040407105 实验项目 名称 利用Wireshark 进行抓包分析 首先,TCP建立连接之后,通信双方都同时可以进行数据的传输,其次,他是全双工的;在保证可靠性上,采用超时重传和捎带确认机制。 在流量控制上,采用滑动窗口协议,协议中规定,对于窗口内未经确认的分组需要重传。 在拥塞控制上,采用慢启动算法。 对于上面的抓包,选取其中的一个TCP进行分析 Source:119.147.91.131 Destination:180.118.215.175 Length:56 Info:http>500001[FIN,ACK] Seq=41,Ack=2877,win=66528 Len=0 1.1抓到的数据链路层中的帧 Frame 211:56bytes 即所抓到的帧的序号为211,大小是56字节 1.2 IP层中的IP数据报 Header Length:20bytes 即首部长度为20个字节;

(完整word版)网络协议抓包分析

中国矿业大学《网络协议》 姓名:李程 班级:网络工程2009-2 学号:08093672

实验一:抓数据链路层的帧 一、实验目的 分析MAC层帧结构 二、准备工作 本实验需要2组试验主机,在第一组上安装锐捷协议分析教学系统,使用其中的协议数据发生器对数据帧进行编辑发送,在第二组上安装锐捷协议分析教学系统,使用其中的网络协议分析仪对数据帧进行捕获分析。 三、实验内容及步骤 步骤一:运行ipconfig命令

步骤二:编辑LLC信息帧并发送 步骤三:编辑LLC监控帧和无编号帧,并发送和捕获:步骤四:保存捕获的数据帧 步骤五:捕获数据帧并分析 使用iptool进行数据报的捕获: 报文如下图: 根据所抓的数据帧进行分析: (1)MAC header 目的物理地址:00:D0:F8:BC:E7:06 源物理地址:00:16:EC:B2:BC:68 Type是0x800:意思是封装了ip数据报 (2)ip数据报

由以上信息可以得出: ①版本:占4位,所以此ip是ipv4 ②首部长度:占4 位,可表示的最大十进制数值是15。此ip数据报没有选项,故它的最大十进制为5。 ③服务:占8 位,用来获得更好的服务。这里是0x00 ④总长度:总长度指首都及数据之和的长度,单位为字节。因为总长度字段为16位,所以数据报的最大长度为216-1=65 535字节。 此数据报的总长度为40字节,数据上表示为0x0028。 ⑤标识(Identification):占16位。IP软件在存储器中维持一个计数器,每产生一个数据报,计数器就加1,并将此值赋给标识字段。但这个“标识”并不是序号, 因为IP是无连接的服务,数据报不存在按序接收的问题。当数据报由于长度超过网络的MTU 而必须分片时,这个标识字段的值就被复制到所有的数据报的标识字段中。相同的标识字段的值使分片后的各数据报片最后能正确地重装成为原来的数据报。 在这个数据报中标识为18358,对应报文16位为47b6 ⑥标志(Flag):占3 位,但目前只有2位有意义。标志字段中的最低位记为MF (More Fragment)。MF=1即表示后面“还有分片”的数据报。MF=0表示这已是若干数据报片中的最后一个。标志字段中间的一位记为DF(Don't Fragment),意思是“不能分片”。只有当DF=0时才允许分片。这个报文的标志是010,故表示为不分片!对应报文16位为0x40。 ⑦片偏移:因为不分片,故此数据报为0。对应报文16位为0x00。 ⑧生存时间:占8位,生存时间字段常用的英文缩写是TTL (Time To Live),其表明数据报在网络中的寿命。每经过一个路由器时,就把TTL减去数据报在路由器消耗掉的一段时间。若数据报在路由器消耗的时间小于1 秒,就把TTL值减1。当TTL值为0时,就丢弃这个数据报。经分析,这个数据报的的TTL为64跳!对应报文16位为0x40。 ⑨协议:占8 位,协议字段指出此数据报携带的数据是使用何种协议,以便使目的主机的IP层知道应将数据部分上交给哪个处理过程。这个ip数据报显示使用得是TCP协议对

IGMP及抓包分析

IGMP IGMP 是Internet Group Management Protocol(互联网组管理协议)的简称。它是TCP/IP 协议族中负责IP 组播成员管理的协议,用来在IP 主机和与其直接相邻的组播路由器之间建立、维护组播组成员关系。到目前为止,IGMP 有三个版本: 1、IGMPv1(由RFC 1112 定义) 2、IGMPv2(由RFC 2236 定义) 3、IGMPv3(由RFC 3376定义) 一、IGMPv1 1.1报文格式 1、版本: 版本字段包含IGMP版本标识,因此设置为1。 2、类型: 成员关系查询(0x11) 成员关系报告(0x12) 3、校验和 4、组地址: 当一个成员关系报告正被发送时,组地址字段包含组播地址。 当用于成员关系查询时,本字段为0,并被主机忽略。 1.2组成员加入过程 当一个主机希望接收一个组播组的数据,则发送成员加入报告给组播组。 页脚内容1

IGMPv1 join包如下: 页脚内容2

1.3查询与响应过程 路由器RTA(IGMP查询器)周期性地(默认60秒)向子网内所有主机(224.0.0.1代表子网内所有主机)发送成员关系查询信息。 所有主机收到IGMPv1成员关系查询信息,一主机首先向组播组发送IGMPv1成员关系报告。 组的其他成员监听到报告后抑制自己的成员关系报告发送。 1.4 抑制机制 页脚内容3

当主机收到IGMP成员关系查询时,对它已经加入的每个组播组启动一个倒计数报告计时器。各个报告计时器初始值为从0到最大响应之间一个随机数,默认值是10秒。 计时器到时的主机则主动发送成员关系报告,目的地为该主机所属的组地址。 其它主机收到该成员关系报告,则抑制成员关系报告的发送,并删除计时器。 1.5 组成员离开过程 主机“默不作声”地离开组(不发送报告了)。 路由器发送成员关系查询信息。 路由器没有收到该组的IGMP报告,则再发送成员关系信息(3次查询周期过后)。 组播组超时,剪枝。 二、IGMPv2 2.1报文格式 1、类型 成员关系查询(0x11) 常规查询:用于确定哪些组播组是有活跃的,即该组是否还有成员在使用,常规查询地址由全零表示;特定组查询:用于查询某具体组播组是否还有组成员。 版本2成员关系报告(0x16) 版本1成员关系报告(0x12) 离开组消息(0x17) 2、最大响应时间 以0.1秒为单位,默认值是100,即10秒。 页脚内容4

实验四Ethereal抓包软件高级

浙江大学城市学院实验报告 课程名称计算机网络应用 实验项目名称实验四Ethereal抓包软件高级 实验成绩指导老师(签名)日期2014-05-13 一. 实验目的和要求 1. 进一步学习掌握Ethereal过滤规则的设置 2. 使用Ethereal捕获Ethernet帧,并对高层协议数据包进行分析 二. 实验内容、原理及实验结果与分析 1. 在Ethereal中创建并设置以下过滤规则 1.1捕获局域网上的所有UDP数据包 【过滤规则】 udp 1.2捕获本地主机收到和发出的所有FTP数据包 【过滤规则】 host 10.66.19.27 and tcp port 21 1.3捕获本地主机和某一主机之间的远程桌面控制数据包(TCP端口3389) 【过滤规则】 host 10.66.19.27 and tcp port 3389 1.4捕获本地主机和之间的通信

【过滤规则】 host 10.66.19.27 and 2. 捕获并解析TCP/IP协议的高层协议数据包 2.1捕获解析本机发出或接收的UDP数据包,并对照UDP报头格式进行解 释(如发送QQ信息构造UDP数据包) 【实验结果与分析】 host 10.66.19.27and udp UDP数据包 长度6字节6字节2字节 字段Source port Destination port Length 值1042 35208 36 2.2捕获解析本地主机发出及收到的FTP数据包,并对照TCP报头格式进 行解释,同时分析FTP发出的命令和响应(如构造FTP数据包)【实验结果与分析】 host 10.66.19.27 and

TCP-IP协议抓包分析实验报告

TCP协议分析实验 学号: 姓名: 院系: 专业:

一.实验目的 学会使用Sniffer抓取ftp的数据报,截获ftp账号及密码,并分析TCP 头的结构、分析TCP的三次“握手”和四次“挥手”的过程,熟悉TCP 协议工作方式。 二.实验(软硬件以及网络)环境 利用VMware虚拟机建立网络环境,并用Serv-U FTP Server在计算机上建立FTP服务器,用虚拟机进行登录。 三.实验工具 sniffer嗅探器,VMware虚拟机,Serv-U FTP Server。 四.实验基本配置 Micrsoft Windows XP操作系统 五.实验步骤 1.建立网络环境。 用Serv-U FTP Server在计算机上建立一台FTP服务器,设置IP地址 为:,并在其上安装sniffer嗅探器。再并将虚拟机作为一台FTP客户 端,设置IP地址为:。设置完成后使用ping命令看是否连通。 2.登录FTP 运行sniffer嗅探器,并在虚拟机的“运行”中输入,点确定后出现 如下图的登录窗口: 在登录窗口中输入:用户名(hello),密码(123456)【在Serv-U FTP Server中已设定】,就登录FTP服务器了。再输入“bye”退出FTP 3.使用sniffer嗅探器抓包 再sniffer软件界面点击“stop and display”,选择“Decode”选 项,完成FTP命令操作过程数据包的捕获。 六.实验结果及分析 1.在sniffer嗅探器软件上点击Objects可看到下图:

再点击“DECODE(反解码)”按钮进行数据包再分析,我们一个一个的分析数据包,会得到登录用户名(hello)和密码(123456)。如下图: 2. TCP协议分析 三次握手: 发报文头——接受报文头回复——再发报文(握手)开始正式通信。

IGMP及抓包分析复习进程

I G M P及抓包分析

IGMP IGMP 是Internet Group Management Protocol(互联网组管理协议)的简称。它是TCP/IP 协议族中负责IP 组播成员管理的协议,用来在IP 主机和与其直接相邻的组播路由器之间建立、维护组播组成员关系。 到目前为止,IGMP 有三个版本: 1、IGMPv1(由RFC 1112 定义) 2、IGMPv2(由RFC 2236 定义) 3、IGMPv3(由RFC 3376定义) 一、IGMPv1 1.1报文格式 1、版本: 版本字段包含IGMP版本标识,因此设置为1。 2、类型: 成员关系查询(0x11) 成员关系报告(0x12) 3、校验和 4、组地址: 当一个成员关系报告正被发送时,组地址字段包含组播地址。 当用于成员关系查询时,本字段为0,并被主机忽略。 1.2组成员加入过程 当一个主机希望接收一个组播组的数据,则发送成员加入报告给组播组。

IGMPv1 join包如下:

1.3查询与响应过程 路由器RTA(IGMP查询器)周期性地(默认60秒)向子网内所有主机(224.0.0.1代表子网内所有主机)发送成员关系查询信息。 所有主机收到IGMPv1成员关系查询信息,一主机首先向组播组发送IGMPv1成员关系报告。 组的其他成员监听到报告后抑制自己的成员关系报告发送。 1.4 抑制机制 当主机收到IGMP成员关系查询时,对它已经加入的每个组播组启动一个倒计数报告计时器。各个报告计时器初始值为从0到最大响应之间一个随机数,默认值是10秒。 计时器到时的主机则主动发送成员关系报告,目的地为该主机所属的组地址。 其它主机收到该成员关系报告,则抑制成员关系报告的发送,并删除计时器。

Wireshark抓包工具计算机网络实验

实验一 Wireshark使用 一、实验目的 1、熟悉并掌握Wireshark的基本使用; 2、了解网络协议实体间进行交互以及报文交换的情况。 二、实验环境 与因特网连接的计算机,操作系统为Windows,安装有Wireshark、IE等软件。三、预备知识 要深入理解网络协议,需要观察它们的工作过程并使用它们,即观察两个协议实体之间交换的报文序列,探究协议操作的细节,使协议实体执行某些动作,观察这些动作及其影响。这种观察可以在仿真环境下或在因特网这样的真实网络环境中完成。 Wireshark是一种可以运行在Windows, UNIX, Linux等操作系统上的分组嗅探器,是一个开源免费软件,可以从http://biz.doczj.com/doc/7517599297.html,下载。 运行Wireshark程序时,其图形用户界面如图2所示。最初,各窗口中并无数据显示。Wireshark的界面主要有五个组成部分: 命令和菜单 协议筛选框 捕获分组 列表 选定分组 首部明细 分组内容 左:十六进制 右:ASCII码 图1

●命令菜单(command menus):命令菜单位于窗口的最顶部,是标准的下拉式菜单。 ●协议筛选框(display filter specification):在该处填写某种协议的名称,Wireshark 据此对分组列表窗口中的分组进行过滤,只显示你需要的分组。 ●捕获分组列表(listing of captured packets):按行显示已被捕获的分组内容,其中包括:分组序号、捕获时间、源地址和目的地址、协议类型、协议信息说明。单击某一列的列名,可以使分组列表按指定列排序。其中,协议类型是发送或接收分组的最高层协议的类型。 ●分组首部明细(details of selected packet header):显示捕获分组列表窗口中被选中分组的首部详细信息。包括该分组的各个层次的首部信息,需要查看哪层信息,双击对应层次或单击该层最前面的“+”即可。 ●分组内容窗口(packet content):分别以十六进制(左)和ASCII码(右)两种格式显示被捕获帧的完整内容。 四、实验步骤 1.启动Web浏览器(如IE); 2.启动Wireshark; 3.开始分组捕获:单击工具栏的按钮,出现如图3所示对话框,[options]按钮可以进行系统参数设置,在绝大部分实验中,使用系统的默认设置即可。当计算机具有多个网卡时,选择其中发送或接收分组的网络接口(本例中,第一块网卡为虚拟网卡,第二块为以太网卡)。单击“Start”开始进行分组捕获;

WireShark抓包网络报文分析实验报告

系别计算机系班级学号姓名 课程名称计算机网络实验日期 实验名称网络报文分析成绩 实验目的: 1.学会简单使用网络分析工具(如WireShark(Ethereal)、Sniffer、科来等)抓取网络报文。 2.对抓取的网络报文进行分析,加深对网络数据分层封装理论的理解。 实验内容: 利用任意一款网络分析工具抓取网络数据(推荐WireShark),开启抓包功能,进行网络信息浏览等简单的网络使用。分析抓到的数据包,能够辨别传输层三次握手的过程,能够辨别分析网络各层添加的头部与数据部分的组成。 实验步骤: 1.选择一个网络分析工具,学会简单使用,本实验使用WireShark来抓取网络报文。WireShark是捕获机器上的某一块网卡的网络包,当你的机器上有多块网卡的时候,你需要选择一个网卡。点击Caputre->Interfaces,选择正确的网卡。然后点击"Start"按钮, 开始抓包。 2.抓取若干数据包,对照理论所学数据包,辨别、分析数据包结构。 TCP分析: 一个TCP报文段分为首部和数据两部分。TCP报文段首部的前二十个字节是固定的,后面有4N个字节是根据需要而增加的选项。因此TCP的最小长度是20个字节。 源端口和目的端口字段:各占两个字节,分别写入源端口号和目的端口号。在抓取的数据报中,源端口号和目的端口号的值分别是:80和5677。

序号字段:占4个字节。序号范围是0到232-1,共232个序号。 确认号字段:在四个字节,是期望收到对方下一个报文段的第一个字节的序号。 数据偏移字段:占4位,它指出TCP报文段的数据起始处距离TCP报文段的起始处有多远。这个字段实际上是指出TCP报文段的首部长度。由于首部中还有长度不确定的选项字段。因此数据偏移字段是必要的。现在本字段的值是20,说明首部不包含选项字段。 保留字段:占6位,保留为今后使用; 窗口字段:占两个字节。窗口值是0到216-1之间的整数。窗口指的是发送本报文段的一方的接收窗口,而不是自己的发送窗口。本数据包中窗口字段的值是8212。 校验和字段:占2个字节。校验和字段检验的范围包括首部和数据这两部分。

DNS协议与抓包分析

1.DNS全称为Domain Name System,中文为计算机域名系统,它是由解析器和域名服务 器组成的,域名服务器是指保存有该网络中所有主机的域名和对应IP地址,并具有将域名转换为IP地址,并具有将域名转换为IP地址功能的服务器的服务器。其中域名必须对应一个IP地址,而IP地址不一定有域名。将域名映射为IP地址的过程就称为“域名解析”。在Internet上域名与IP地址之间是一对一(或者多对一)的,域名和IP地址之间的转换过程称为域名解析,域名解析需要由专门的域名解析服务器来完成,DNS 就是进行域名解析的服务器。DNS命名用于Internet等TCP/IP网络中,通过用户友好的名称查找计算机和服务。域名的最终指向是IP 2.DNS解析过程 (1)当客户机提出查询请求时,首先在本地计算机的缓存中查找,如果在本地无法查询信息,则将查询请求发给DNS服务器 (2)首先客户机将域名查询请求发送到本地DNS服务器,当本地DNS服务器接到查询后,首先在该服务器管理的区域的记录中查找,如果找到该记录,则进行此记录进行解析,如果没有区域信息可以满足查询要求,服务器在本地缓存中查找 (3)如果本地服务器不能在本地找到客户机查询的信息,将客户机请求发送到根域名DNS服务器 (4)根域名服务器负责解析客户机请求的根域名部分,它将包含下一级域名信息的DNS 服务器地址地址返回给客户机的DNS服务器地址 (5)客户机的DNS服务器利用根域名服务器解析的地址访问下一级DNS服务器,得到再下一级域名的DNS服务器地址 (6)按照上述递归方法逐级接近查询目标,最后在有目标域名的DNS服务器上找到相应IP地址信息 (7)客户机的本地DNS服务器将递归查询结构返回客户机 (8)客户机利用从本地DNS服务器查询得到的IP访问目标主机,就完成了一个解析过程 (9)同时客户机本地DNS服务器更新其缓存表,客户机也更新期缓存表,方便以后查询3.DNS处于IP分层结构的应用层,是一种应用层协议,DNS协议数据单元封装在UDP 数据报文中,DNS服务器端使用公用端口号为53(使用UDP协议0x11) 4.DNS协议报文结构:

IGMP及抓包分析

IGMP IGMP 就是Internet Group Management Protocol(互联网组管理协议)的简称。它就是TCP/IP 协议族中负责IP 组播成员管理的协议,用来在IP 主机与与其直接相邻的组播路由器之间建立、维护组播组成员关系。 到目前为止,IGMP 有三个版本: 1、IGMPv1(由RFC 1112 定义) 2、IGMPv2(由RFC 2236 定义) 3、IGMPv3(由RFC 3376定义) 一、IGMPv1 1、1报文格式 1、版本: 版本字段包含IGMP版本标识,因此设置为1。 2、类型: 成员关系查询(0x11) 成员关系报告(0x12) 3、校验与 4、组地址: 当一个成员关系报告正被发送时,组地址字段包含组播地址。 当用于成员关系查询时,本字段为0,并被主机忽略。 1、2组成员加入过程 当一个主机希望接收一个组播组的数据,则发送成员加入报告给组播组。

IGMPv1 join包如下: 1、3查询与响应过程 路由器RTA(IGMP查询器)周期性地(默认60秒)向子网内所有主机(224、0、0、1代表子网内所有主机)发送成员关系查询信息。

所有主机收到IGMPv1成员关系查询信息,一主机首先向组播组发送IGMPv1成员关系报告。 组的其她成员监听到报告后抑制自己的成员关系报告发送。 1、4 抑制机制 当主机收到IGMP成员关系查询时,对它已经加入的每个组播组启动一个倒计数报告计时器。各个报告计时器初始值为从0到最大响应之间一个随机数,默认值就是10秒。 计时器到时的主机则主动发送成员关系报告,目的地为该主机所属的组地址。 其它主机收到该成员关系报告,则抑制成员关系报告的发送,并删除计时器。 1、5 组成员离开过程 主机“默不作声”地离开组(不发送报告了)。 路由器发送成员关系查询信息。 路由器没有收到该组的IGMP报告,则再发送成员关系信息(3次查询周期过后)。 组播组超时,剪枝。 二、IGMPv2 2、1报文格式 1、类型 成员关系查询(0x11) 常规查询:用于确定哪些组播组就是有活跃的,即该组就是否还有成员在使用,常规查询地址由全零表示; 特定组查询:用于查询某具体组播组就是否还有组成员。 版本2成员关系报告(0x16) 版本1成员关系报告(0x12) 离开组消息(0x17)

wireshark抓包实验报告

本科实验报告 实验名称:利用EtherPeek工具进行的网络抓包实验 学员:学号: 专业:所属学院: 国防科学技术大学训练部制

【实验名称】 利用Wireshark工具进行的抓包实验 【实验目的】 通过Wireshark软件捕获并观察ARP协议、ICMP协议、FTP协议、HTTP协议以及TCP协议的工作原理,包括协议序列和报文内容【实验内容】 实验环境描述: 网络环境:因特网 操作系统:Windows 7 软件:Wiresharkv1.12.4 实验步骤: 1.Ping命令(ARP, ICMP分析) 2.在实验主机使用FTP应用(FTP分析) 3.在实验主机使用web应用(HTTP分析) 【实验过程】 1.ping命令(ICMP、ARP分析) 实验主机的IP地址为:192.168.0.189 实验主机的MAC地址为:9c:4e:36:cf:db:e4 在实验主机的命令框内输入命令:ping121.14.1.189

Wireshark抓获的数据包如下: 观察可得,抓获的报文里协议类型有ICMP与ARP。(前12条是输入ping命令后抓取的) (1)ICMP分析: 首先明确一下ICMP的相关知识: ICMP是(Internet Control Message Protocol)Internet控制报文协议。它是TCP/IP协议族的一个子协议,用于在IP主机、路由器之间传递控制消息。控制 消息是指网络通不通、主机是否可达、路由是否可用等网络本身的消息。这些 控制消息虽然并不传输用户数据,但是对于用户数据的传递起着重要的作用。 各种ICMP报文的前32bits都是三个长度固定的字段:type类型字段(8位)、code代码字段(8位)、checksum校验和字段(16位) 8bits类型和8bits代码字段:一起决定了ICMP报文的类型。 常见的有: 类型0、代码0:回应应答。 类型3、代码0:网络不可达 类型3、代码1:主机不可达 类型5、代码1:为主机重定向数据包 类型8、代码0:回应 类型11、代码0:传输中超出TTL(常说的超时) 16bits校验和字段:包括数据在内的整个ICMP数据包的校验和,其计算方法和IP头部校验和的计算方法是一样的。 类型代码类型描述

相关主题