wireshark抓包实验机协议分析.docx
- 文档编号:10951379
- 上传时间:2023-02-23
- 格式:DOCX
- 页数:28
- 大小:499.04KB
wireshark抓包实验机协议分析.docx
《wireshark抓包实验机协议分析.docx》由会员分享,可在线阅读,更多相关《wireshark抓包实验机协议分析.docx(28页珍藏版)》请在冰豆网上搜索。
wireshark抓包实验机协议分析
Wireshark抓包及分析实验
学生姓名:
夏效程
学号:
V200748016
任务分配日期:
2009-12-16
课程名称:
计算机组网技术
WireShark实验报告:
用Wireshark完成计算机网络协议分析
报告开始时间:
2009-12-16
报告截至日期:
2009-12-30
一.实验的目的
本次实验的目的就是要学会wireshark抓包软件的基本使用方法,wireshark抓包的基本过程,以及对所抓到的数据包进行详细的分析并能很好的李杰一些基本的数据的含义。
能达到对网络数据的基本的监控和查询的能力。
实验一802.3协议分析和以太网
(一)实验目的
1、分析802.3协议
2、熟悉以太网帧的格式、了解ARP、ICMP、IP数据包格式
实验步骤:
1、捕获并分析以太帧
(1)清空浏览器缓存(在IE窗口中,选择“工具/Internet选项/删除文件”命令)。
如下图
(2)启动WireShark,开始分组捕获。
(3)在浏览器的地址栏中输入:
浏览器将显示华科大主页。
如下图所示:
(4)停止分组捕获。
首先,找到你的主机向服务器发送的HTTPGET消息的Segment序号,以及服务器发送到你主机上的HTTP响应消息的序号。
http的segement段序号是474554如下图:
由下图可以得到服务器发送到我主机上的http响应消息的序号是:
由上图可知为44
:
1、你的主机的48位以太网地址(MAC地址)是多少?
我的主机的mac地址是:
2、目标MAC地址是服务器的MAC地址吗?
如果不是,该地址是什么设备的MAC地址?
不是服务器的MAC地址;该地址是网关的地址。
3、给出Frame头部Type字段(2字节)的十六进制值。
十六进制的值是0800如图所示:
4、在包含“HTTPGET”的以太网帧中,字符“G”的位置(是第几个字节,假设Frame头部第一个字节的顺序为1)?
如果frame得头部为顺序1,则“G”的位置为67。
如下图所示:
5、以太Frame的源MAC地址是多少?
该地址是你主机的MAC地址吗?
是服务器的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字段的十六进制值。
由上图可以知道:
十六进制的值是:
0806
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的值是0001
②在ARP报文中是否包含发送方的IP地址?
包含发送方的ip地址,但是是默认网关的ip地址
13、包含ARP响应(reply)报文的以太网帧中,源地址和目的地址的十六进制值各是多少?
以上的de146efe为源地址的值
上面的显示的de146e27是目的地址的值。
实验三TCP协议分析
(一)实验目的及任务
1、熟悉TCP协议的基本原理
2、利用WireShark对TCP协议进行分析
(二)实验环境
1、与因特网连接的计算机网络系统;操作系统为Windows;WireShark、IE等软件。
2、预备知识
要深入理解网络协议,需要仔细观察协议实体之间交换的报文序列。
为探究协议操作细节,可使协议实体执行某些动作,观察这些动作及其影响。
这些任务可以在仿真环境下或在如因特网这样的真实网络环境中完成。
观察在正在运行协议实体间交换报文的基本工具被称为分组嗅探器(packetsniffer)。
顾名思义,一个分组嗅探器捕获(嗅探)计算机发送和接收的报文。
一般情况下,分组嗅探器将存储和显示出被捕获报文的各协议头部字段内容。
在WireShark介绍部分Figure1为一个分组嗅探器的结构。
Figure1右边是计算机上正常运行的协议(在这里是因特网协议)和应用程序(如:
web浏览器和ftp客户端)。
分组嗅探器(虚线框中的部分)是附加计算机普通软件上的,主要有两部分组成。
分组捕获库接收计算机发送和接收的每一个链路层帧的拷贝。
高层协议(如:
HTTP、FTP、TCP、UDP、DNS、IP等)交换的报文都被封装在链路层帧(Frame)中,并沿着物理介质(如以太网的电缆)传输。
Figure1假设所使用的物理媒体是以太网,上层协议的报文最终封装在以太网帧中。
分组嗅探器的第二个组成部分是分析器。
分析器用来显示协议报文所有字段的内容。
为此,分析器必须能够理解协议所交换的所有报文的结构。
例如:
我们要显示Figure1中HTTP协议所交换的报文的各个字段。
分组分析器理解以太网帧格式,能够识别包含在帧中的IP数据报。
分组分析器也要理解IP数据报的格式,并能从IP数据报中提取出TCP报文段。
然后,它需要理解TCP报文段,并能够从中提取出HTTP消息。
最后,它需要理解HTTP消息。
WireShark是一种可以运行在Windows,UNIX,Linux等操作系统上的分组分析器。
最初,各窗口中并无数据显示。
WireShark的界面主要有五个组成部分:
命令菜单(commandmenus):
命令菜单位于窗口的最顶部,是标准的下拉式菜单。
最常用菜单命令有两个:
File、Capture。
File菜单允许你保存捕获的分组数据或打开一个已被保存的捕获分组数据文件或退出WireShark程序。
Capture菜单允许你开始捕获分组。
捕获分组列表(listingofcapturedpackets):
按行显示已被捕获的分组内容,其中包括:
WireShark赋予的分组序号、捕获时间、分组的源地址和目的地址、协议类型、分组中所包含的协议说明信息。
单击某一列的列名,可以使分组按指定列进行排序。
在该列表中,所显示的协议类型是发送或接收分组的最高层协议的类型。
分组头部明细(detailsofselectedpacketheader):
显示捕获分组列表窗口中被选中分组的头部详细信息。
包括:
与以太网帧有关的信息,与包含在该分组中的IP数据报有关的信息。
单击以太网帧或IP数据报所在行左边的向右或向下的箭头可以展开或最小化相关信息。
另外,如果利用TCP或UDP承载分组,WireShark也会显示TCP或UDP协议头部信息。
最后,分组最高层协议的头部字段也会显示在此窗口中。
分组内容窗口(packetcontent):
以ASCII码和十六进制两种格式显示被捕获帧的完整内容。
显示筛选规则(displayfilterspecification):
在该字段中,可以填写协议的名称或其他信息,根据此内容可以对分组列表窗口中的分组进行过滤。
(三)实验步骤
1、捕获大量的由本地主机到远程服务器的TCP分组
(1)启动WireShark,开始分组捕获。
(2)启动浏览器,打开
(3)停止分组捕获。
2、浏览追踪信息
(1)在显示筛选规则编辑框中输入“tcp”,可以看到在本地主机和服务器之间传输的一系列tcp和HTTP消息,你应该能看到包含SYNSegment的三次握手。
也可以看到有主机向服务器发送的一个HTTPPOST消息和一系列的“httpcontinuation”报文。
如下图所示:
(2)根据操作回答“(四)实验报告内容”中的1-2题。
3、TCP基础
根据操作回答“(四)实验报告内容”中的3-10题
4、TCP拥塞控制
(1)在WireShark已捕获分组列表子窗口中选择一个TCP报文段。
选择菜单:
Statistics->TCPStreamGraph->Time-Sequence-Graph(Stevens)。
你会看到如下所示的图。
(2)根据操作回答“(四)实验报告内容”中的11-12题。
(四)实验报告内容
在实验的基础上,回答以下问题:
1、向服务器传送文件的客户端主机的IP地址和TCP端口号分别是多少?
222.20.110.120如下图所示:
Tcp的端口号是3490
2、服务器的IP地址是多少?
对这一连接,它用来发送和接收TCP报文的端口号是多少?
服务器的ip地址是202.114.0.245
Tcp的端口是80
3、客户服务器之间用于初始化TCP连接的TCPSYN报文段的序号(sequencenumber)是多少?
在该报文段中,是用什么来标示该报文段是SYN报文段的?
由上图可以知道客户服务器之间用于初始化TCP连接的TCPSYN报文段的序号是0,用下面图中所示
标示值为0x02
4、服务器向客户端发送的SYNACK报文段序号是多少?
该报文段中,Acknowledgement字段的值是多少?
服务器是如何决定此值的?
在该报文段中,是用什么来标识该报文段是SYNACK报文段的?
序号是如图所示:
为59
下面图中所示:
值为1
随机生成的Acknowledgement。
如下图所示可以知道标志为0x10
5、包含HTTPPOST消息的TCP报文段的序号是多少?
6、如果将包含HTTPPOST消息的TCP报文段看作是TCP连接上的第一个报文段,那么该TCP连接上的第六个报文段的序号是多少?
是何时发送的?
该报文段所对应的ACK是何时接收的?
7、前六个TCP报文段的长度各是多少?
前六个报文段的长度分别是78,66,54,674,60,261。
8、在整个跟踪过程中,接收端向发送端通知的最小可用缓存是多少?
限制发送端的传输以后,接收端的缓存是否仍然不够用?
由下图可以知道最小的缓存是65535
够用
9、在跟踪文件中是否有重传的报文段?
判断的依据是什么?
10、TCP连接的吞吐率(bytestransferredperunittime,单位时间传输的字节数)是多少?
写出你的计算过程。
由上图可以知道在这个过程中有241个tcp包进行了传递,而用的时间是13.302451000秒所以就可以进行计算241/13.302451000=18.116962个/秒
11、利用Time-Sequence-Graph(Stevens)plotting工具,浏览由客户端向服务器发送的报文段序号和时间对应关系图。
你能否辨别出TCP慢启动阶段的起止,以及在何处转入避免拥塞阶段?
12、阐述所测量到的数据与TCP理想化的行为有何不同?
理想化的行为是没有包括网络的拥塞情况的,在实际的网络环境中是不可能没有延时的,就好似时间的长短问题,所以测量到得会比理想化的小一些,就是效率会低一些。
实验四利用WireShark分析HTTP和DNS
(一)实验目的及任务
1、熟悉并掌握WireShark的基本操作,了解网络协议实体间的交互以及报文交换。
2、分析HTTP协议
3、分析DNS协议
(二)实验环境
与因特网连接的计算机网络系统;主机操作系统为Windows2000或WindowsXP;WireShark等软件。
(三)实验步骤
1、WireShark的使用
(1)启动主机上的web浏览器。
(2)启动WireShark。
(3)开始分组捕获:
选择“capture”下拉菜单中的“Optios”命令,在“WireShark:
CaptureOptions”窗口中可以设置分组捕获的选项。
(4)在实验中,可以使用窗口中显示的默认值。
在“WireShark:
CaptureOptions”窗口的最上面有一个“interface”下拉菜单,其中显示计算机中所安装的网络接口(即网卡)。
当计算机具有多个活动网卡(装有多块网卡,并且均正常工作)时,需要选择其中一个用来发送或接收分组的网络接口(如某个有线接口)。
(5)随后,单击“Start”开始进行分组捕获,所有由选定网卡发送和接收的分组都将被捕获。
(6)开始分组捕获后,会出现分组捕获统计窗口。
该窗口统计显示各类已捕获分组的数量。
在该窗口中有一个“stop”按钮,可以停止分组的捕获。
(7)在运行分组捕获的同时,在浏览器地址栏中输入某网页的URL,如:
。
i.为显示该网页,浏览器需要连接的服务器,并与之交换HTTP消息,以下载该网页。
包含这些HTTP消息的以太网帧(Frame)将被WireShark捕获。
ii.WireShark主窗口显示已捕获的你的计算机与其他网络实体交换的所有协议报文,其中一部分就是与服务器交换的HTTP消息。
(8)在显示筛选编辑框中输入“http”,单击“apply”,分组列表窗口将只显示HTTP消息。
(9)选择分组列表窗口中的第一条HTTP消息。
它应该是你的计算机发向服务器的HTTPGET消息。
当你选择该消息后,以太网帧、IP数据报、TCP报文段、以及HTTP消息首部信息都将显示在分组首部子窗口中。
单击分组首部详细信息子窗口中向右和向下箭头,可以最小化帧、以太网、IP、TCP信息显示量,可以最大化HTTP协议相关信息的显示量。
2、HTTP和DNS分析
(1)HTTPGET/response交互
首先通过下载一个非常简单的HTML文件(该文件非常短,并且不嵌入任何对象)。
(a)启动Web浏览器,然后启动WireShark。
在窗口的显示过滤规则编辑框处输入“http”,分组列表子窗口中将只显示所捕获到的HTTP消息。
(b)一分钟以后,开始WireShark分组捕获。
(c)在打开的Web浏览器窗口中输入以下地址:
(d)停止分组捕获。
根据捕获窗口内容,回答“(四)实验报告内容”中的“2、HTTP和DNS分析”1-6题。
(2)HTTP条件GET/response交互
(a)启动浏览器,清空浏览器的缓存(在浏览器中,选择“工具”菜单中“Internet选项”命令,在出现的对话框中,选择“删除文件”)。
(b)启动WireShark。
开始WireShark分组捕获。
(c)在浏览器的地址栏中输入以下URL:
(d)在你的浏览器中重新输入相同的URL或单击浏览器中的“刷新”按钮。
(e)停止WireShark分组捕获,在显示过滤筛选说明处输入“http”,分组列表子窗口中将只显示所捕获到的HTTP消息。
根据操作回答“(四)实验报告内容”中的“2、HTTP和DNS分析”7-10题。
(3)获取长文件
(a)启动浏览器,将浏览器的缓存清空。
(b)启动WireShark,开始WireShark分组捕获。
(c)在浏览器的地址栏中输入以下URL:
(d)停止WireShark分组捕获,在显示过滤筛选编辑框中输入“http”,分组列表子窗口中将只显示所捕获到的HTTP消息。
根据操作回答“(四)实验报告内容”中的“2、HTTP和DNS分析”的11-14题。
(4)嵌有对象的HTML文档
(a)启动浏览器,将浏览器的缓存清空。
(b)启动WireShark。
开始WireShark分组捕获。
(c)在浏览器的地址栏中输入以下URL:
(d)停止WireShark分组捕获,在显示过滤筛选说明处输入“http”,分组列表子窗口中将只显示所捕获到的HTTP消息。
根据操作回答“(四)实验报告内容”中的“2、HTTP和DNS分析”的15-16题。
(5)HTTP认证(选作)
(a)启动浏览器,将浏览器的缓存清空。
(b)启动WireShark。
开始WireShark分组捕获。
(c)在浏览器的地址栏中输入以下URL:
(d)停止WireShark分组捕获,在显示过滤筛选说明处输入“http”,分组列表子窗口中将只显示所捕获到的HTTP消息。
根据操作回答“(四)实验报告内容”中的“2、HTTP和DNS分析”的17-18题。
(6)跟踪DNS
nslookup工具允许主机向指定的DNS服务器查询某个DNS记录。
如果没有指明DNS服务器,nslookup将把查询请求发向默认的DNS服务器。
nslookup的一般格式是:
nslookup–option1–option2host-to-finddns-server
ipconfig命令用来显示你当前的TCP/IP信息,包括:
你的地址、DNS服务器的地址、适配器的类型等信息。
如果,要显示与主机相关的信息用命令:
ipconfig/all
如果查看DNS缓存中的记录用命令:
ipconfig/displaydns
要清空DNS缓存,用命令:
ipconfig/flushdns
运行以上命令需要进入MSDOS环境。
(开始菜单->运行->输入命令“cmd”)
(a)利用ipconfig命令清空主机上的DNS缓存。
启动浏览器,并将浏览器的缓存清空。
(b)启动WireShark,在显示过滤筛选规则编辑框处输入:
“ip.addr==your_IP_address”(如:
ip.addr==202.112.20.13)过滤器将会删除所有目的地址和源地址与指定IP地址都不同的分组。
(c)开始WireShark分组捕获。
(d)在浏览器的地址栏中输入:
(e)停止分组捕获。
(f)根据操作回答“(四)实验报告内容”中的“2、HTTP和DNS分析”19-25题。
(g)开始WireShark分组捕获。
(h)在
(i)停止分组捕获。
(j)根据操作回答“(四)实验报告内容”中的“2、HTTP和DNS分析”26-29题。
(k)重复上面的实验,只是将命令替换为:
nslookup–type=NSmit.edu
(l)根据操作回答“(四)实验报告内容”中的“2、HTTP和DNS分析”30-32题。
(m)根据操作回答“(四)实验报告内容”中的“2、HTTP和DNS分析”33-35题。
(四)实验报告内容
1、WireShark的使用
(1)列出在第7步中分组列表子窗口所显示的所有协议类型。
我所看到的是如下图所示:
(2)从发出HTTPGET消息到接收到HTTPOK响应报文共需要多长时间?
(在默认的情况下,分组列表窗口中Time列的值是从WireShark开始追踪到分组被捕获时总的时间,以秒为单位。
若要按time-of-day格式显示Time列的值,需选择View下拉菜单,再选择TimeDisplayFormat,然后选择Time-of-day。
)
由下图可以知道
时间是0.006917000S
(3)你主机的IP地址是什么?
你所访问的主页所在服务器的IP地址是什么?
我的主机的ip地址是222.20.110.120我所访问服务器的的ip地址是:
202.114.0.245如下图所示:
(4)写出两个第9步所显示的HTTP消息头部行信息。
2、HTTP和DNS分析
(1)你的浏览器使用的是HTTP1.0,还是HTTP1.1?
你所访问的Web服务器所使用HTTP协议的版本号是多少?
我的浏览器是使用的http1.1的;访问的web页也是使用的http1.1
(2)你的浏览器向服务器指出它能接收何种语言版本的对象?
我的浏览器指出能接受的语言是html
(3)你的计算机的IP地址是多少?
服务器的IP地址是多少?
我的计算机ip地址是222.20.110.120服务器的IP地址是202.114.0.245
(4)从服务器向你的浏览器返回response消息的状态代码是多少?
304如下图所示:
(5)你从服务器上所获取的HTML文件的最后修改时间是多少?
最后的修改时间如下图所示为:
可知道是2009年12月12号
(6)返回到浏览器的内容一共多少字节?
(7)分析你的浏览器向服务器发出的第一个HTTPGET请求的内容,在该请求消息中,是否有一行是:
IF-MODIFIED-SINCE?
有如下图所示:
(8)分析服务器响应消息的内容,服务器是否明确返回了文件的内容?
如何获知?
由下面的两个图可以知道服务器返回了文件内容:
可以看到一些内容图片信息等。
(9)分析你的浏览器向服务器发出的第二个“HTTPGET”请求,在该请求报文中是否有一行是:
IF-MODIFIED-SINCE?
如果有,在该首部行后面跟着的信息是什么?
有
信息是资源创建的时间。
(10)服务器对第二个HTTPGET请求的响应消息中的HTTP状态代码是多少?
服务器是否明确返回了文件的内容?
请解释。
状态的代码是
服务器返回的文件内容是如下图所示:
可以看到data之后就是所返回的数据。
(11)你的浏览器一共发出了多少个HTTPGET请求?
我的浏览器一共发了46个httpget请求
(12)承载这一个HTTP响应报文一共需要多少个TCP报文段?
一共需要三个tcp报文段
(13)与这个HTTPGET请求相对应的响应报文的状态代码和状态短语是什么?
状态代码是304状态短语是
(14)在被传送的数据中一共有多少个HTTP状态行?
一共有9
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- wireshark 实验 协议 分析