wireshark抓包实验机协议分析转 doc - 图文

更新时间:2024-03-23 01:27:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

一. 实验的目的

本次实验的目的就是要学会wireshark抓包软件的基本使用方法,wireshark抓包的基本过程,以及对所抓到的数据包进行详细的分析并能很好的李杰一些基本的数据的含义。能达到对网络数据的基本的监控和查询的能力。

实验一 802.3协议分析和以太网

(一)实验目的

1、分析802.3协议

2、熟悉以太网帧的格式、了解ARP、ICMP、IP数据包格式

实验步骤:

1、捕获并分析以太帧

(1)清空浏览器缓存(在IE窗口中,选择“工具/Internet选项/删除文件”命令)。如下图

(2)启动WireShark,开始分组捕获。 (3)在浏览器的地址栏中输入: http://www.hust.edu.cn/

浏览器将显示华科大主页。如下图所示:

(4)停止分组捕获。首先,找到你的主机向服务器www.hust.edu.cn发送的HTTP GET消息的Segment序号,以及服务器发送到你主机上的HTTP 响应消息的序号。

http的segement段序号是47 45 54如下图:

由下图可以得到服务器发送到我主机上的http响应消息的序号是:

由上图可知为44 :

1、你的主机的48位以太网地址(MAC地址)是多少?

我的主机的mac地址是:

2、目标MAC地址是www.hust.edu.cn服务器的MAC地址吗?如果不是,该地址是什么设备的MAC地址?

不是www.hust.edu.cn服务器的MAC地址;该地址是网关的地址。 3、给出Frame头部Type字段(2字节)的十六进制值。 十六进制的值是08 00如图所示:

4、在包含“HTTP GET”的以太网帧中,字符“G”的位置(是第几个字节,假设Frame头部第一个字节的顺序为1)?

如果frame得头部为顺序1,则“G”的位置为67。如下图所示:

5、以太Frame的源MAC地址是多少?该地址是你主机的MAC地址吗?是www.hust.edu.cn服务器的MAC地址吗?如果不是,该地址是什么设备的MAC地址?

由上图可以得到:源mac地址为:00:1a:a9:1c:07:19该mac地址既不是我主机的mac地址也不是web服务器的mac地址,他是网关地址。 Frame的源地址是

6、以太网帧的目的MAC地址是多少?该地址是你主机的地址吗?

上面的00:13:8f:3a:81:f0就是以太帧的mac地址。该地址是我的主机地址。 7、给出Frame头部2-字节Type字段的十六进制值。

由上图可以知道08:00就是type的值。

8、在包含“OK”以太网帧中,从该帧的第一个字节算起,”O”是第几个字节?由下图可以知道o的地址是:15

9、写下你主机ARP缓存中的内容。其中每一列的含义是什么?

以上的显示写的依次是:interface:就是自己主机的ip地址,下面的就是默认网关的ip地址,后面的四十八位的十六进制的数是默认网关的mac地址。 10、包含ARP请求报文的以太网帧的源地址和目的地址的十六进制值各是多少?由下图可以知道源mac地址是:00:1a:1c:07:19目的mac地址是: FF:FF:FF:FF:FF:FF

11、给出Frame头部Type字段的十六进制值。

由上图可以知道:十六进制的值是:08 06

12、从ftp://ftp.rfc-editor.org/innotes/std/std37.txt处下载ARP规范说明。在http://www.erg.abdn.ac.uk/users/gorry/course/inet-pages/arp.html处有一个关于ARP的讨论网页。根据操作回答:

①形成ARP响应报文的以太网帧中,ARP-payload部分opcode字段的值是多少?

由上面的图可以知道opcode的值是00 01

②在ARP报文中是否包含发送方的IP地址? 包含发送方的ip地址,但是是默认网关的ip地址

13、包含ARP响应(reply)报文的以太网帧中,源地址和目的地址的十六进制值各是多少?

以上的de 14 6e fe为源地址的值

上面的显示的de 14 6e 27是目的地址的值。

实验三 TCP协议分析 (一)实验目的及任务

1、熟悉TCP协议的基本原理

2、利用WireShark对TCP协议进行分析

(二)实验环境

1、与因特网连接的计算机网络系统;操作系统为Windows;WireShark、IE等软件。

2、预备知识

要深入理解网络协议,需要仔细观察协议实体之间交换的报文序列。为探究协议操作细节,可使协议实体执行某些动作,观察这些动作及其影响。这些任务可以在仿真环境下或在如因特网这样的真实网络环境中完成。观察在正在运行协议实体间交换报文的基本工具被称为分组嗅探器(packet sniffer)。顾名思义,一个分组嗅探器捕获(嗅探)计算机发送和接收的报文。一般情况下,分组嗅探器将存储和显示出被捕获报文的各协议头部字段内容。在WireShark介绍部分Figure 1为一个分组嗅探器的结构。

Figure 1右边是计算机上正常运行的协议(在这里是因特网协议)和应用程序(如:web浏览器和ftp客户端)。分组嗅探器(虚线框中的部分)是附加计算机普通软件上的,主要有两部分组成。分组捕获库接收计算机发送和接收的每一个链路层帧的拷贝。高层协议(如:HTTP、FTP、TCP、UDP、DNS、IP等)交换的报文都被封装在链路层帧(Frame)中,并沿着物理介质(如以太网的电缆)传输。Figure 1假设所使用的物理媒体是以太网,上层协议的报文最终封装在以太网帧中。

分组嗅探器的第二个组成部分是分析器。分析器用来显示协议报文所有字段的内容。为此,分析器必须能够理解协议所交换的所有报文的结构。例如:我们要显示Figure 1中HTTP协议所交换的报文的各个字段。分组分析器理解以太网帧格式,能够识别包含在帧中的IP数据报。分组分析器也要理解IP数据报的格式,并能从IP数据报中提取出TCP报文段。然后,它需要理解TCP报文段,并能够从中提取出HTTP消息。最后,它需要理解HTTP消息。

WireShark是一种可以运行在Windows, UNIX, Linux等操作系统上的分组分析器。最初,各窗口中并无数据显示。WireShark的界面主要有五个组成部分:

命令菜单(command menus):命令菜单位于窗口的最顶部,是标准的下拉式菜单。最常用菜单命令有两个:File、Capture。File菜单允许你保存捕获的分组数据或打开一个已被保存的捕获分组数据文件或退出WireShark程序。Capture菜单允许你开始捕获分组。

捕获分组列表(listing of captured packets):按行显示已被捕获的分组内容,其中包括:WireShark赋予的分组序号、捕获时间、分组的源地址和目的地址、协议类型、分组中所包含的协议说明信息。单击某一列的列名,可以使分组按指定列进行排序。在该列表中,所显示的协议类型是发送或接收分组的最高层协议的类型。

分组头部明细(details of selected packet header):显示捕获分组列表窗口中被选中分组的头部详细信息。包括:与以太网帧有关的信息,与包含在该分组中的IP数据报有关的信息。单击以太网帧或IP数据报所在行左边的向右或向下的箭头可以展开或最小化相关信息。另外,如果利用TCP或UDP承载分组,WireShark也会显示TCP或UDP协议头部信息。最后,分组最高层协议的头部字段也会显示在此窗口中。

分组内容窗口(packet content):以ASCII码和十六进制两种格式显示被捕

获帧的完整内容。

显示筛选规则(display filter specification):在该字段中,可以填写协议的名称或其他信息,根据此内容可以对分组列表窗口中的分组进行过滤。

(三)实验步骤

1、捕获大量的由本地主机到远程服务器的TCP分组 (1)启动WireShark,开始分组捕获。

(2)启动浏览器,打开http://www.hust.edu.cn/网页, (3)停止分组捕获。

2、浏览追踪信息

(1)在显示筛选规则编辑框中输入“tcp”,可以看到在本地主机和服务器之间传输的一系列tcp和HTTP消息,你应该能看到包含SYN Segment的三次握手。也可以看到有主机向服务器发送的一个HTTP POST消息和一系列的“http continuation”报文。 如下图所示:

(2)根据操作回答“(四)实验报告内容”中的1-2题。

3、TCP基础 根据操作回答“(四)实验报告内容”中的3-10题

4、TCP拥塞控制

(1)在WireShark已捕获分组列表子窗口中选择一个TCP 报文段。选择菜单: Statistics->TCP Stream Graph-> Time-Sequence-Graph(Stevens)。你会看到如下所示的图。

(2)根据操作回答“(四)实验报告内容”中的11-12题。

(四)实验报告内容

在实验的基础上,回答以下问题:

1、向www.hust.edu.cn服务器传送文件的客户端主机的IP地址和TCP端口号分别是多少?

222.20.110.120如下图所示:

Tcp的端口号是3490 2、www.hust.edu.cn服务器的IP地址是多少?对这一连接,它用来发送和接收TCP报文的端口号是多少?

服务器的ip地址是 202.114.0.245

Tcp的端口是80 3、客户服务器之间用于初始化TCP连接的TCP SYN报文段的序号(sequence number)是多少?在该报文段中,是用什么来标示该报文段是SYN报文段的?

由上图可以知道客户服务器之间用于初始化TCP连接的TCP SYN报文段的序号是0,用下面图中所示

标示值为0x02

4、服务器向客户端发送的SYNACK报文段序号是多少?该报文段中,Acknowledgement字段的值是多少?www.hust.edu.cn服务器是如何决定此值的?在该报文段中,是用什么来标识该报文段是SYNACK报文段的?

序号是如图所示:为59

下面图中所示:值为1

随机生成的Acknowledgement。 如下图所示可以知道标志为 0x10

5、包含HTTP POST消息的TCP报文段的序号是多少? 6、如果将包含HTTP POST消息的TCP报文段看作是TCP连接上的第一个报文段,那么该TCP连接上的第六个报文段的序号是多少?是何时发送的?该报文段所对应的ACK是何时接收的?

7、前六个TCP报文段的长度各是多少?

前六个报文段的长度分别是78 ,66 ,54 ,674 ,60,261。

8、在整个跟踪过程中,接收端向发送端通知的最小可用缓存是多少?限制发送端的传输以后,接收端的缓存是否仍然不够用?

由下图可以知道最小的缓存是65535

够用

9、在跟踪文件中是否有重传的报文段?判断的依据是什么?

10、TCP连接的吞吐率(bytes transferred per unit time,单位时间传输的字节数)是多少?写出你的计算过程。

由上图可以知道在这个过程中有241个tcp包进行了传递,而用的时间是13.302451000秒所以就可以进行计算 241/13.302451000=18.116962个/秒

11、 利用Time-Sequence-Graph(Stevens) plotting工具,浏览由客户端向服务器发送的报文段序号和时间对应关系图。你能否辨别出TCP慢启动阶段的起止,以及在何处转入避免拥塞阶段?

由下面的两个图可以知道服务器返回了文件内容:

可以看到一些内容图片信息等。

(9) 分析你的浏览器向服务器发出的第二个“HTTP GET”请求,在该请求

报文中是否有一行是:IF-MODIFIED-SINCE?如果有,在该首部行后面跟着的信息是什么? 有

信息是资源创建的时间。

(10) 服务器对第二个HTTP GET请求的响应消息中的HTTP状态代码是多

少?服务器是否明确返回了文件的内容?请解释。 状态的代码是

服务器返回的文件内容是如下图所示:

可以看到data之后就是所返回的数据。

(11) 你的浏览器一共发出了多少个HTTP GET请求? 我的浏览器一共发了46个http get请求

(12) 承载这一个HTTP响应报文一共需要多少个TCP报文段? 一共需要三个tcp报文段

(13) 与这个HTTP GET请求相对应的响应报文的状态代码和状态短语是什

么? 状态代码是304 状态短语是

(14) 在被传送的数据中一共有多少个HTTP状态行? 一共有94个http状态行

(15) 你的浏览器一共发出了多少个HTTP GET请求消息?这些请求消息被发

送到的目的地IP地址是多少? 46个请求消息 目的ip是202.114.0.245

(16) 浏览器在下载这两个图片时,是串行下载还是并行下载?请解释。 是串行下载,因为数据的传输时是按顺序传输的,而且不同的图片被包含在不同的帧当中进行传输,图片的传输是串行的。

(17) 对于浏览器发出的、最初的HTTP GET请求消息,服务器的响应消息的

状态代码和状态短语分别是什么? 状态代码是304,状态语是

(18) 当浏览器发出第二个HTTP GET请求消息时,在HTTP GET消息中包含

了哪些新的头部行? 多了

这个消息

(19) 定位到DNS查询消息和查询响应报文,这两种报文的发送是基于UDP

还是基于TCP的?

这两种报文是基于udp的是无连接的

(20) DNS查询消息的目的端口号是多少?DNS查询响应消息的源端口号是

多少?

由下图可以知道目的端口和源端口分别是:56609 和53

(21) DNS查询消息发送的目的地的IP地址是多少?利用ipconfig命令

(ipconfig/all查看你主机的本地DNS服务器的IP地址。这两个地址相同吗?

目的ip是如下图是202.103.24.68

由上图可以知道与本地的ip地址是一样的

(22) 检查DNS查询消息,它是哪一类型的DNS查询?该查询报文中包含

“answers”吗?

递归查询Recursive Query如下图所示

该报文不包含answer应答 (23) 检查DNS查询响应消息,其中共提供了多少个“answers”?每个answers

包含哪些内容?

其中只有一个answers,包含的内容如下所示:

(24) 考虑一下你的主机随后发送的TCP SYN Segment,包含SYN Segment的

IP分组头部中目的IP地址是否与在DNS查询响应消息中提供的某个IP地址相对应?

SYN Segment的IP分组头部中目的IP地址是202.114.0.245 与下面的相对应

(25) 打开的WEB页中包含图片,在获取每一个图片之前,你的主机发出新

的DNS查询了吗? 不发送新的dns查询

(26) DNS查询消息的目的端口号是多少?DNS查询响应消息的源端口号是

多少?

Dns查询的目的端口是53 ,dns查询响应源端口也是53

(27) DNS查询消息发送的目的地的IP地址是多少?这个地址是你的默认本

地DNS服务器的地址吗?

查询消息发的目的ip是202.103.24.68 这个地址是你的默认本地DNS服务器的地址

(28) 检查DNS查询消息,它是哪一类型的DNS查询?该查询消息中包含

“answers”吗?

他是递归查询,没有包含answers消息

(29) 检查DNS查询响应消息,其中提供了多少个“answers”?每个answers

包含哪些内容?

包含了一个answers,他内容是如下图所示

(30) DNS查询消息发送的目的地的IP地址是多少?这个地址是你的默认本

地DNS服务器地址吗?

目的ip是202.103.24.68 是默认的本地dns服务器地址

(31) 检查DNS查询消息,它是哪一类型的DNS查询?该查询报文中包含

“answers”吗?

他是递归查询,该报文中不包含answers

(32) 检查DNS查询响应消息,其中响应消息提供了哪些MIT名称服务器?

响应消息提供这些MIT名称服务器的IP地址了吗? 响应消息里包含了一下的服务器

没有提供ip

(33) DNS查询消息发送的目的地的IP地址是多少?这个地址是你的默认本

地DNS服务器的地址吗?如果不是,这个IP地址相当于什么? 目的ip地址是202.103.24.68 这个地址是我的默认服务器ip地址

(34) 检查DNS查询消息,它是哪一类型的DNS查询?该查询报文中包含

“answers”吗?

是递归查询,该报文没哟包含answers

(35) 检查DNS查询响应消息,其中提供了多少个“answers”?每个answers

包含哪些内容?

包含的内容如下面图中所示:

实验总结:

本次实验的过程中我学会了怎么使用wireshark进行基本的数据的抓取,以及对数据

的基本的一个分析,已经基本掌握了对数据包结构的了解。同时也更好的理解了数据报的内容以及wireshark的使用方法。

本文来源:https://www.bwwdw.com/article/6ir8.html

Top