wireshark 分析 http
- 格式:ppt
- 大小:251.50 KB
- 文档页数:23
实验六利用W i r e s h a r k 分析协议H T T P文件编码(GHTU-UITID-GGBKT-POIU-WUUI-8968)实验六利用W i r e s h a r k分析协议H T T P 一、实验目的分析HTTP协议二、实验环境与因特网连接的计算机,操作系统为Windows,安装有Wireshark、IE等软件。
三、实验步骤1、利用Wireshark俘获HTTP分组(1)在进行跟踪之前,我们首先清空Web 浏览器的高速缓存来确保Web网页是从网络中获取的,而不是从高速缓冲中取得的。
之后,还要在客户端清空DNS高速缓存,来确保Web服务器域名到IP地址的映射是从网络中请求。
在WindowsXP机器上,可在命令提示行输入ipconfig/flushdns(清除DNS解析程序缓存)完成操作。
(2)启动Wireshark 分组俘获器。
(3)在Web 浏览器中输入:(4)停止分组俘获。
图利用Wireshark俘获的HTTP分组在URL 中,是一个具体的web 服务器的域名。
最前面有两个DNS 分组。
第一个分组是将域名转换成为对应的IP 地址的请求,第二个分组包含了转换的结果。
这个转换是必要的,因为网络层协议——IP协议,是通过点分十进制来表示因特网主机的,而不是通过这样的域名。
当输入URL http://时,将要求Web服务器从主机上请求数据,但首先Web 浏览器必须确定这个主机的IP地址。
随着转换的完成,Web浏览器与Web服务器建立一个TCP连接。
最后,Web 浏览器使用已建立好的TCP连接来发送请求“GET/HTTP/1.1”。
这个分组描述了要求的行为(“GET”)及文件(只写“/”是因为我们没有指定额外的文件名),还有所用到的协议的版本(“HTTP/1.1”)。
2、HTTP GET/response交互(1)在协议框中,选择“GET/HTTP/1.1” 所在的分组会看到这个基本请求行后跟随着一系列额外的请求首部。
用wireshark分析Http 和Dns 报文一、http请求报文和响应报文wireshark所抓的一个含有http请求报文的帧:1、帧的解释链路层的信息上是以帧的形式进行传输的,帧封装了应用层、传输层、网络层的数据。
而wireshark抓到的就是链路层的一帧。
图中解释:Frame 18:所抓帧的序号是11,大小是409字节Ethernet :以太网,有线局域网技术,属链路层Inernet Protocol:即IP协议,也称网际协议,属网络层Transmisson Control Protocol:即TCP协议,也称传输控制协议。
属传输层Hypertext transfer protocol:即http协议,也称超文本传输协议。
属应用层图形下面的数据是对上面数据的16进制表示。
2、分析上图中的http请求报文报文分析:请求行:GET /img/2009people_index/images/hot_key.gif HTTP/1.1 方法字段/ URL字段/http协议的版本我们发现,报文里有对请求行字段的相关解释。
该报文请求的是一个对象,该对象是图像。
首部行:Accept: */*Referer: /这是网站网址Accept-Language: zh-cn 语言中文Accept-Encoding: gzip, deflate 可接受编码,文件格式User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; CIBA; .NET CLR 2.0.50727; .NET CLR 1.1.4322; .NET CLR 3.0.04506.30; 360SE)用户代理,浏览器的类型是Netscape浏览器;括号内是相关解释Host: 目标所在的主机Connection: Keep-Alive 激活连接在抓包分析的过程中还发现了另外一些http请求报文中所特有的首部字段名,比如下面http请求报文中橙黄色首部字段名:Accept: */*Referer: /thread-345413-1-1.html这是html文件网址Accept-Language: zh-cn 语言中文Accept-Encoding: gzip, deflate 可接受编码,文件格式If-Modified-Since: Sat, 13 Mar 2010 06:59:06 GMT 内容是否被修改:最后一次修改时间If-None-Match: "9a4041-197-2f11e280" 关于资源的任何属性(ET ags值)在ETags的值中可以体现,是否改变User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; CIBA; .NET CLR 2.0.50727; .NET CLR 1.1.4322; .NET CLR 3.0.04506.30; 360SE)用户代理,浏览器的类型是Netscape浏览器;括号内是相关解释Host: 目标所在的主机Connection: Keep-Alive 激活连接Cookie: cdb_sid=0Ocz4H; cdb_oldtopics=D345413D; cdb_visitedfid=17; __gads=ID=7ab350574834b14b:T=1287731680:S=ALNI_Mam5QHAAK2cJdDTRuSxY 24VDbjc1Acookie,允许站点跟踪用户,coolie ID是7ab350574834b14b3、分析http的响应报文,针对上面请求报文的响应报文如下:wireshark对于2中http请求报文的响应报文:展开http响应报文:报文分析:状态行:HTTP/1.0 200 OK首部行:Content-Length: 159 内容长度Accept-Ranges: bytes 接受范围Server: nginx 服务器X-Cache: MISS from 经过了缓存服务器Via::80(squid/2.6.STABLE14-20070808) 路由响应信息Date: Fri, 22 Oct 2010 12:09:42 GMT 响应信息创建的时间Content-Type: image/gif 内容类型图像Expires: Fri, 22 Oct 2010 12:10:19 GMT 设置内容过期时间Last-Modified: Fri, 11 Jun 2010 00:50:48 GMT 内容最后一次修改时间Powered-By-ChinaCache:PENDING from CNC-BJ-D-3BA ChinaCache的是一家领先的内容分发网络(CDN)在中国的服务提供商。
实验七利用分组嗅探器(Wireshark)分析协议HTTP和DNS一、实验目的1、分析HTTP协议2、分析DNS协议二、实验环境与因特网连接的计算机网络系统;主机操作系统为Windows;Wireshark、IE 等软件。
三、实验步骤1、HTTP GET/response交互首先通过下载一个非常简单的HTML文件(该文件非常短,并且不嵌入任何对象)。
(1)启动Web browser。
(2)启动Wireshark分组嗅探器。
在窗口的显示过滤说明处输入“http”,分组列表子窗口中将只显示所俘获到的HTTP报文。
(3)一分钟以后,开始Wireshark分组俘获。
(4)在打开的Web browser窗口中输入一下地址(浏览器中将显示一个只有一行文字的非常简单的HTML文件):/ethereal-labs/HTTP-ethereal-file1.html(5)停止分组俘获。
图1分组俘获窗口2、HTTP 条件GET/response交互(1)启动浏览器,清空浏览器的缓存(在浏览器中,选择“工具”菜单中的“Internet选项”命令,在出现的对话框中,选择“删除文件”)。
(2)启动Wireshark分组俘获器。
开始Wireshark分组俘获。
(3)在浏览器的地址栏中输入以下URL:/ethereal-labs/HTTP-ethereal-file2.html 你的浏览器中将显示一个具有五行的非常简单的HTML文件。
(4)在你的浏览器中重新输入相同的URL或单击浏览器中的“刷新”按钮。
(5)停止Wireshark分组俘获,在显示过滤筛选说明处输入“http”,分组列表子窗口中将只显示所俘获到的HTTP报文。
3、获取长文件(1)启动浏览器,将浏览器的缓存清空。
(2)启动Wireshark分组俘获器。
开始Wireshark分组俘获。
(3)在浏览器的地址栏中输入以下URL:/ethereal-labs/HTTP-ethereal-file3.html 浏览器将显示一个相当大的美国权力法案。
选择向QQ邮箱传输200K大小文件1.题。
答:我的IP: TCP端口号:802.题。
答:3.题。
答:图中可以看到wireshark截获到了三次握手的三个数据包。
第四个包才是HTTP的,这说明HTTP的确是使用TCP建立连接的。
4.题。
答:如图所示:5.题。
答:6.题。
答:编号24:RTT编号25:RTT编号26:RTT编号27:RTT编号28:RTT7.题。
答:最先的六个TCP 片段的每一个长度分别为750 bytes、1408 bytes、1408 bytes、1408 bytes、1408 bytes、1408 bytes规律:一般的话只有第一个和最后一个片段长度特殊,其他片段等长。
8.题。
答:接受方通知给发送方的最低窗口大小为5840字节,即在服务器端传回的第一个ACKz 中的窗口大小。
接收方的窗口大小没有抑制发送方的传输速率,因为窗口大小从5840逐步增加到65535,窗口大小始终大于发送方发送的分组的容量。
9.题。
答:没有,从表中可以看出从源端发往目的地的序号逐渐增加,如果这其中有重传的报文段,则其序号中应该有小于其临近的分组序号的分组,图中未看到这样的分组,故没有重发片段。
12.题。
13.题。
答:TCP的发送方会试探性的发送数据(即慢启动阶段),如果太多的数据使网络拥塞了,那么发送方会根据AIMD算法进行调整。
但是在实际中,TCP的行为主要依赖于应用程序怎么设计。
在这次抓包中,在发送方还可以发送数据的时候,已经没有数据可发了。
在web 应用中,有些web对象比较小,在慢启动还没有结束之前,传送就结束啦,因此,传送小的web对象受到TCP慢启动阶段的影响,导致较长的延迟。
wireshark分析HTTP利⽤Wireshark分析协议HTTP⼀、实验⽬的分析HTTP协议⼆、实验环境与因特⽹连接的计算机,操作系统为Windows,安装有Wireshark、IE等软件。
三、实验步骤3.1课程设计步骤(1)启动WireShark。
图 3.1 wireshark启动界⾯(2)启动PC上的chrome浏览器。
图3.2 启动chrome浏览器(3) 开始分组捕获:选择“抓包”下拉菜单中的“抓包参数选择”命令,在WireShark:“抓包选项”窗⼝中可以设置分组捕获的选项。
(4) 在这次实验中,使⽤窗⼝中显⽰的默认值。
选择“抓包”下拉菜单中的“⽹络接⼝”命令,显⽰计算机中所安装的⽹络接⼝(即⽹卡)。
我们需要选择电脑真实的⽹卡,点击后显⽰本机的IP地址。
(5) 随后,点击“开始”则进⾏分组捕获,所有由选定⽹卡发送和接收的分组都将被捕获。
图3.4 抓包选项设置(6) 待捕获⼀段时间,关闭浏览器,选择主窗⼝中有的“stop”按钮,可以停⽌分组的捕获。
图3.5 结束按钮3.2 抓包并分析过程这次实验通过分析打开⾕歌主页来分析http协议的作⽤。
在filter中输⼊http进⾏筛选。
wireshark所抓的含有http请求报⽂的帧:图3.6 打开⾕歌主页抓到的HTTP包对打开⾕歌⽹页这个事务进⾏分析:在浏览器中输⼊⾕歌主页地址,敲击回车的过程中,浏览器向DNS请求解析/doc/263e29c283d049649b665872.html 的IP地址。
域名系统DNS 解析出⾕歌服务器的IP地址为173.194.72.199在这个过程中本机IP 10.10.22.75。
然后浏览器与服务器建⽴TCP连接(服务器端的IP地址为173.194.72.199,端⼝是80)。
然后浏览器发出取⽂件命令:GET /webhp?hl=zh-CN&sourceid=cnhp HTTP/1.1\r\n。
服务器给出响应把⽂件(text/html)发送给浏览器,浏览器显⽰text/html中的所有⽂本。
实验七利用分组嗅探器(Wireshark)分析协议HTTP和DNS一、实验目的1、分析HTTP协议2、分析DNS协议二、实验环境与因特网连接的计算机网络系统;主机操作系统为Windows;Wireshark、IE 等软件。
三、实验步骤1、HTTP GET/response交互首先通过下载一个非常简单的HTML文件(该文件非常短,并且不嵌入任何对象)。
(1)启动Web browser。
(2)启动Wireshark分组嗅探器。
在窗口的显示过滤说明处输入“http”,分组列表子窗口中将只显示所俘获到的HTTP报文。
(3)一分钟以后,开始Wireshark分组俘获。
(4)在打开的Web browser窗口中输入一下地址(浏览器中将显示一个只有一行文字的非常简单的HTML文件):/ethereal-labs/HTTP-ethereal-file1.html(5)停止分组俘获。
图1分组俘获窗口2、HTTP 条件GET/response交互(1)启动浏览器,清空浏览器的缓存(在浏览器中,选择“工具”菜单中的“Internet选项”命令,在出现的对话框中,选择“删除文件”)。
(2)启动Wireshark分组俘获器。
开始Wireshark分组俘获。
(3)在浏览器的地址栏中输入以下URL:/ethereal-labs/HTTP-ethereal-file2.html 你的浏览器中将显示一个具有五行的非常简单的HTML文件。
(4)在你的浏览器中重新输入相同的URL或单击浏览器中的“刷新”按钮。
(5)停止Wireshark分组俘获,在显示过滤筛选说明处输入“http”,分组列表子窗口中将只显示所俘获到的HTTP报文。
3、获取长文件(1)启动浏览器,将浏览器的缓存清空。
(2)启动Wireshark分组俘获器。
开始Wireshark分组俘获。
(3)在浏览器的地址栏中输入以下URL:/ethereal-labs/HTTP-ethereal-file3.html 浏览器将显示一个相当大的美国权力法案。
Wireshark抓包分析HTTPS与HTTP报⽂的差异⼀、什么是HTTPS:HTTPS(Secure Hypertext Transfer Protocol)安全超⽂本传输协议它是⼀个安全通信通道,它基于HTTP开发,⽤于在客户计算机和服务器之间交换信息。
它使⽤安全套接字层(SSL)进⾏信息交换,简单来说它是HTTP的安全版。
它是由Netscape开发并内置于其浏览器中,⽤于对数据进⾏压缩和解压操作,并返回⽹络上传送回的结果。
HTTPS实际上应⽤了Netscape的安全全套接字层(SSL)作为HTTP应⽤层的⼦层。
(HTTPS使⽤端⼝443,⽽不是象HTTP那样使⽤端⼝80来和TCP/IP进⾏通信。
)SSL使⽤40 位关键字作为RC4流加密算法,这对于商业信息的加密是合适的。
HTTPS和SSL⽀持使⽤X。
509数字认证,如果需要的话⽤户可以确认发送者是谁。
⼆、HTTPS和HTTP的区别:https协议需要到ca申请证书,⼀般免费证书很少,需要交费。
http是超⽂本传输协议,信息是明⽂传输,https 则是具有安全性的ssl加密传输协议 http和https使⽤的是完全不同的连接⽅式⽤的端⼝也不⼀样:前者是80,后者是443。
http的连接很简单,是⽆状态的 HTTPS协议是由SSL+HTTP协议构建的可进⾏加密传输、⾝份认证的⽹络协议要⽐http协议安全。
三、⽐较操作步骤:***https传输中抓包***1.开启wireshark并配置受监听的⽹卡,点击捕获->选项2.选择正在使⽤的⽹卡,点击开始。
3.电脑中开启浏览器或其他应⽤的时候都会有流量产⽣,有流量产⽣就会被wireshark捕捉到,下图为刚刚开启wireshark后的捕捉状态,会抓到各种各样的流量,稍后我们会进⾏过滤操作。
4.浏览器中输⼊带有https的⽹址,让wireshrk可以抓到包。
5.再次返回到wireshark页⾯,然后在应⽤显⽰过滤器⼀栏中输⼊过滤语句,本例中输⼊ip.dst == 192.168.12.93,即指定wireshark只列出⽬标地址是192.168.12.93的流量。
利用WireShark分析HTTP和DNS一、实验目的及任务1、熟悉并掌握WireShark的基本操作,了解网络协议实体间的交互以及报文交换。
2、分析HTTP协议3、分析DNS协议二、实验环境与因特网连接的计算机网络系统;主机操作系统为Windows2000或Windows XP;WireShark等软件。
三、预备知识要深入理解网络协议,需要仔细观察协议实体之间交换的报文序列。
为探究协议操作细节,可使协议实体执行某些动作,观察这些动作及其影响。
这些任务可以在仿真环境下或在如因特网这样的真实网络环境中完成。
观察在正在运行协议实体间交换报文的基本工具被称为分组嗅探器(packet sniffer)。
顾名思义,一个分组嗅探器捕获(嗅探)计算机发送和接收的报文。
一般情况下,分组嗅探器将存储和显示出被捕获报文的各协议头部字段内容。
图1为一个分组嗅探器的结构。
图1右边是计算机上正常运行的协议(在这里是因特网协议)和应用程序(如:web浏览器和ftp客户端)。
分组嗅探器(虚线框中的部分)是附加计算机普通软件上的,主要有两部分组成。
分组捕获库接收计算机发送和接收的每一个链路层帧的拷贝。
高层协议(如:HTTP、FTP、TCP、UDP、DNS、IP等)交换的报文都被封装在链路层帧(Frame)中,并沿着物理介质(如以太网的电缆)传输。
图1假设所使用的物理媒体是以太网,上层协议的报文最终封装在以太网帧中。
分组嗅探器的第二个组成部分是分析器。
分析器用来显示协议报文所有字段的内容。
为此,分析器必须能够理解协议所交换的所有报文的结构。
例如:我们要显示图1中HTTP协议所交换的报文的各个字段。
分组分析器理解以太网帧格式,能够识别包含在帧中的IP数据报。
分组分析器也要理解IP数据报的格式,并能从IP数据报中提取出TCP报文段。
然后,它需要理解TCP报文段,并能够从中提取出HTTP消息。
最后,它需要理解HTTP消息。
WireShark是一种可以运行在Windows, UNIX, Linux等操作系统上的分组分析器.用户界面如图2所示。
实验1Wireshark协议分析-HTTP协议实验⼆利⽤Wireshark分析协议HTTP⼀、实验⽬的分析HTTP协议⼆、实验环境与因特⽹连接的计算机,操作系统为Windows,安装有Wireshark、IE等软件。
三、实验步骤1、利⽤Wireshark俘获HTTP分组(1)在进⾏跟踪之前,我们⾸先清空Web 浏览器的⾼速缓存来确保Web⽹页是从⽹络中获取的,⽽不是从⾼速缓冲中取得的。
打开浏览器,找到Internet选项,点击后出现如图1所⽰的界⾯。
以IE浏览器为例,步骤为:点击浏览器右上⾓的“⼯具”-“Internet选项”。
图1 Internet选项之后,还要在客户端清空DNS⾼速缓存,以确保Web服务器域名到IP地址的映射是从⽹络中请求的。
在Windows系列的机器上,可在命令提⽰⾏输⼊ipconfig/flushdns 完成操作(如图2所⽰);具体步骤及Linux、MAC等系统的清空⽅法请参见:。
图2 命令提⽰⾏输⼊ipconfig/flushdns完成操作(2)启动Wireshark 分组俘获器。
(3)在Web 浏览器中输⼊:(重庆⼤学⽹站)。
(4)停⽌分组俘获。
图3 利⽤Wireshark俘获的HTTP分组在URL 中,是⼀个具体的web 服务器的主机名。
最前⾯有两个DNS分组。
第⼀个分组是将主机名转换成为对应的IP 地址的请求,第⼆个分组包含了转换的结果。
这个转换是必要的,因为⽹络层协议——IP协议,是通过点分⼗进制来表⽰因特⽹主机的,⽽不是通过这样的主机名。
当输⼊URL 时,将要求Web服务器从主机上请求数据,但⾸先Web浏览器必须确定这个主机的IP地址。
⼩提⽰--域名和主机关系举例:域名下,有主机server1和server2,其主机全名就是和。
随着转换的完成,Web浏览器与Web服务器建⽴⼀个TCP连接。
最后,Web 浏览器使⽤已建⽴好的TCP连接来发送请求“GET/HTTP/”。
wireshark实验报告Wireshark实验报告Wireshark是一个非常强大的网络协议分析工具,它可以帮助我们监控和分析网络上的数据包,从而深入了解网络通信的细节。
在本次实验中,我们使用Wireshark来分析一个简单的网络通信场景,并进行一些实验来了解它的功能和用途。
实验一:捕获数据包首先,我们打开Wireshark并选择要监控的网络接口,然后开始捕获数据包。
在捕获过程中,我们可以看到不断出现的数据包,它们包含了网络通信中的各种信息,如源地址、目标地址、协议类型等。
通过Wireshark的过滤功能,我们可以只显示特定协议的数据包,从而更方便地进行分析。
实验二:分析HTTP通信接下来,我们模拟了一个简单的HTTP通信场景,比如在浏览器中访问一个网页。
通过Wireshark捕获到的数据包,我们可以看到HTTP请求和响应的细节,包括请求头、响应头、数据内容等。
通过分析这些数据包,我们可以了解HTTP 通信的工作原理,以及了解网页加载过程中的各种细节。
实验三:检测网络异常最后,我们模拟了一个网络异常的场景,比如断开网络连接或者遭遇网络攻击。
通过Wireshark捕获到的数据包,我们可以看到异常情况下的网络通信情况,从而及时发现问题并进行处理。
Wireshark的强大过滤功能可以帮助我们快速定位异常数据包,以便更快地解决网络问题。
通过以上实验,我们对Wireshark的功能和用途有了更深入的了解。
它不仅可以帮助我们监控网络通信,还可以帮助我们分析网络问题、学习网络协议等。
在今后的网络工作中,Wireshark将成为我们不可或缺的利器,帮助我们更好地理解和管理网络通信。
利用wireshark分析HTTP协议实验报告实验目的:通过利用Wireshark分析HTTP协议,实验理解HTTP协议的工作原理和常见的HTTP请求和响应消息的格式,并学会利用Wireshark工具进行网络流量分析和调试。
实验步骤:1.实验环境准备:b. 打开Wireshark工具,并选择适当的网络接口开始抓包。
2.抓取HTTP协议数据包:a. 在Wireshark工具中点击“开始”按钮,开始抓包。
c. 在Wireshark工具中停止抓包。
3.分析HTTP消息:a. 在Wireshark工具中选择一个HTTP数据包,并展开协议分析窗口。
b.分析HTTP请求消息的格式,包括请求方法、URL、HTTP版本、请求头和请求体等。
c.分析HTTP响应消息的格式,包括状态码、状态描述、响应头和响应体等。
4.进行HTTP会话分析:a. 在Wireshark工具中选择一个HTTP请求数据包,并右击菜单选择“Follow TCP Stream”选项。
b.分析TCP流的数据包,包括请求和响应的传输数据等。
5.进行HTTP分片分析:a. 在Wireshark工具中选择一个HTTP数据包,并展开协议分析窗口。
b.分析数据包的分片情况,包括分片的数量和分片的大小等。
6.进行HTTP身份认证分析:a. 在Wireshark工具中选择一个HTTPS数据包,并展开协议分析窗口。
b.分析HTTPS数据包的SSL/TLS握手过程和加密信息等。
实验结果:通过对Wireshark抓包和分析,我们可以得到一个完整的HTTP会话过程。
通过分析HTTP请求和响应消息的格式,可以了解到HTTP协议的工作原理和常见的消息头信息。
通过分析TCP流的数据包,可以了解到HTTP数据的传输情况和时序关系。
通过分析HTTP的分片情况,可以了解到HTTP数据在传输过程中可能发生的分片现象。
通过分析HTTPS数据包,可以了解到HTTPS协议的加密过程和身份认证机制。
利用wireshark分析HTTP协议HTTP协议是一种为了Web浏览器和Web服务器之间进行通信而设计的协议。
它定义了客户端和服务器之间传输数据的规则、格式和约定。
本文将利用Wireshark来分析HTTP协议的工作原理和数据传输过程。
Wireshark是一款流行的网络协议分析工具,它可以捕获网络数据包并进行详细的分析。
为了分析HTTP协议,我们需要在Wireshark中设置过滤器来捕获HTTP数据包。
当我们在浏览器中输入网址并按下回车键时,浏览器将发送一系列HTTP请求到服务器。
通过Wireshark捕获的数据包,我们可以看到每个请求的详细信息。
HTTP请求由几个部分组成,包括请求行、请求头和请求体。
请求行包括请求方法(GET、POST等)、请求的URL和使用的协议版本。
请求头包括一些额外的信息如Host、User-Agent、Accept等。
请求体根据请求的类型可能包含数据。
在Wireshark的捕获结果中,我们可以看到每个HTTP请求的详细信息,包括请求方法、URL、协议版本和请求头字段。
通过查看这些信息,我们可以了解每个请求的具体内容和目的。
对于HTTP响应,它包含了服务器返回给客户端的数据。
响应也由几个部分组成,包括响应状态行、响应头和响应体。
响应状态行包括协议版本、状态码和状态描述。
响应头包括一些额外的信息如Server、Content-Type、Content-Length等。
响应体包含实际的数据。
通过Wireshark,我们可以查看每个HTTP响应的详细信息,包括协议版本、状态码、状态描述和响应头字段。
我们还可以通过查看响应体来获取服务器返回的实际数据。
在Wireshark的捕获结果中,我们可以看到HTTP请求和响应之间的往返,也就是请求和响应的交互过程。
通过查看每个数据包的时间戳,我们可以估计出数据传输的延迟和效率。
此外,通过Wireshark还可以分析HTTP协议的性能和安全性。
HTTP报⽂格式及WireShark抓包分析HTTP请求报⽂格式在这个请求格式之中空⾏是必不可少的⼀⾏。
空⾏之后是请求实体。
⼀个具体的HTTP请求报⽂格式如下:GET /su?wd=www.&action=opensearch&ie=UTF-8 HTTP/1.1Host: Connection: keep-aliveUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.98 Safari/537.36Accept-Encoding: gzip, deflateAccept-Language: zh-CN,zh;q=0.9Cookie: BAIDUID=C2208EC4A287F1C78E1868E06C12C32F:FG=1; BIDUPSID=B7762029AFC604941206D91099D1D897; PSTM=1545827421; BDUSS=WFMRW5qRVBQRDhxNDN0UEpSMlJzZWhJTklITGY3eUVmLTFFeX5iNzY3RDQ1MHRjQV 请求格式之中的⽅法是指GET,PSOT,HEAD等⽅法。
get⽅法是获取URL指定资源。
使⽤GET ⽅法时,可以将请求参数和对应的值附加在 URI 后⾯,利⽤⼀个问号(“?”)将资源的URI和请求参数隔开,参数之间使⽤与符号(“&”)隔开。
⼀般适合于请求信息⽐较短的场合。
使⽤URL请求也会把信息暴露出来。
post请求⼀般是客户端提交给服务器的表单数据。
当然,如果是上传⽂件,也应当使⽤post请求。
post请求还可以较get请求更好的隐藏信息。
head⽅法与get⽤法相同,但没有响应实体。
URI是Uniform Resource Identifiers的缩写,它是URL的⼀种扩展,我们在HTTP协议中使⽤的URI其实都是URL。
1.清除DNS域名解析缓存2.2.HTTP请求报文格式首部名首部值含义accept */* 接受referer Accept-Language zh-cn 接受语言Accept-Encoding Gzip,deflate 接受编码User-Agent Mozilla/4.0 (compatible; MSIE 6.0;请求的WEB浏览器及客户机器Windows NT 5.1; ...................)host Url域名是connection Keep-alive 表明发送请求之后TCP连接继续保持3.HTTP应答报文格式首部名首部值含义HTTP/1.1 200 ok 显示服务器使用的HTTP版本Cache-Control private 表明是否可以将返回的数据副本存储或高速缓存。
Date Fri,13 May 2012 01:41:12 GMT 消息返回的时间Content-Length 18596 数据的长度Content-Type Txt/css 返回对象的类型Last-Modified Fri,13 May 2012 01:41:12 GMT 返回对象的最后修改日期Server Microsoft 6.0 IIS WEB服务器问题回答:(1)你的浏览器运行的是HTTP1.0,还是HTTP1.1?你所访问的服务器所运行的HTTP版本号是多少?答:我的浏览器上运行HTTP version 1.1(2)你的浏览器向服务器指出它能接收何种语言版本的对象?答:浏览器语言为:简体中文accept language : zh -cn\r\n(3)你的计算机的IP地址是多少?服务器的IP地址是多少?本机IP:10.0.163.199服务器IP地址:128.119.245.12(5)你从服务器上所获取的HTML文件的最后修改时间是多少?Fri,13 May 2012 01:41:12(6)返回到你的浏览器的内容以供多少字节?18596(7)分析你的浏览器向服务器发出的第一个HTTP GET请求的内容,在该请求报文中,是否有一行是:IF-MODIFIED-SINCE?没有。
山东建筑大学计算机学院实验报告班级:______ 姓名:______ 学号:实验成绩:__________课程:______________________________ 同组者:__________ 实验日期:__________ 实验一利用WireShark分析HTTP和DNS一、实验目的及任务1、熟悉并掌握Wireshark的基本操作,了解网络协议实体间的交互以及报文交换。
2、分析HTTP协议3、分析DNS协议二、实验环境与因特网连接的计算机网络系统;主机操作系统为Windows2000或Windows XP;Wireshark等软件。
三、实验预习1、Internet协议栈分为哪几层?每一层的功能、典型协议各是什么?并给出典型协议的英文全称。
应用层运输层网络层链路层物理层应用层:网络应用程序及他们的应用层协议保存的地方 HTTP SMTP FTP运输层:在应用程序端点之间传送应用层报文 TCP UDP网络层:负责将数据包的网络层分组从一台主机移动到另一台主机 IP协议链路层:主要为网络层提供传输服务物理层:将帧中的一个一个比特从一个节点移动到下一个节点2、HTTP请求报文的基本格式是什么?列举四种常见的首部字段名,并解释其后“值”字段的含义。
Accept:用于高速服务器,客户机支持的数据类型Accept-Charset:用于告诉服务器,客户机采用的编码格式Accept-Encoding:用于告诉服务器,客户机支持的数据压缩格式Accept-Language:客户机的语言环境3、HTTP响应报文的基本格式是什么?列举五种常见的首部字段名,并解释其后“值”字段的含义。
4、应用“条件Get”方法的基本目的是什么?该方法所用到的典型的首部字段名是什么?当客户端要从服务器中读取文档时,使用GET方法。
GET方法要求服务器将URL定位的资源放在响应报文的数据部分,回送给客户端。
5、DNS有哪两层基本含义?DNS层次结构中包含哪三类DNS服务器?分布式数据库层次数据库根DNS服务器顶级域名服务器权威DNS服务器6、DNS报文的基本格式是什么?7、列举三种常见的DNS记录,并解释记录中每个字段的含义。
完整利用wireshark分析HTTP协议HTTP协议是超文本传输协议的缩写。
它是一种应用层协议,用于在Web浏览器和Web服务器之间传输数据。
Wireshark是一个用于网络分析和协议开发的免费开源程序,它可以用来捕获和分析网络数据包。
在使用Wireshark分析HTTP协议时,我们可以通过以下步骤来进行:1. 启动Wireshark并选择要捕获的网卡。
在Wireshark的主界面上,可以选择“Capture”选项卡来选择网卡。
点击“Start”按钮来开始捕获数据包。
3. 分析捕获的HTTP数据包。
Wireshark将以表格的形式显示捕获的数据包,其中列出了源IP地址、目的IP地址、协议类型等信息。
我们可以查看数据包的详细信息,包括源端口、目的端口、传输层协议等。
4.分析HTTP请求。
选择一个HTTP请求的数据包,点击“+]”按钮来展开其详细信息。
在详细信息中,可以查看请求的方法(GET、POST等)、请求的URL、请求的头部信息等。
5.分析HTTP响应。
选择一个HTTP响应的数据包,点击“+]”按钮来展开其详细信息。
在详细信息中,可以查看响应的状态码、响应的头部信息以及响应的正文内容。
6. 进一步分析HTTP请求和响应的头部信息。
HTTP请求和响应的头部信息包含了很多有用的信息。
例如,可以通过查看“Content-Type”来确定返回的数据类型是HTML、CSS、JavaScript还是其他类型的文件。
可以查看“Cookie”来查看是否存在会话信息。
还可以查看其他头部信息,如“User-Agent”来确定浏览器和操作系统的类型。
7. 查看HTTP的传输过程。
Wireshark可以以图形化的方式显示HTTP请求和响应的传输过程。
在摘要视图中,选择一个HTTP请求或响应,右键单击并选择“Follow”>“HTTP Stream”,可以查看完整的HTTP报文的传输过程。
8. 分析HTTP压缩。
1.你的浏览器运行的是,还是你所访问的服务器所运行的HTTP版本号是多少答:HTTP version 42. 你的浏览器向服务器指出它能接收何种语言版本的对象答:Accept language: zh-CN\r\n3. 你的计算机的IP地址是多少服务器的IP地址是多少答:我的IP是:服务器:从服务器向你的浏览器返回的状态代码是多少答:200 OK5. 你从服务器上所获取的HTML文件的最后修改时间是多少答:如图6.返回到你的浏览器的内容以供多少字节答:24370在浏览器地址栏中如下网址:分析你的浏览器向服务器发出的第一个HTTP GET请求的内容,在该请求报文中,是否有一行是:IF-MODIFIED-SINCE答:没有9.分析服务器响应报文的内容,服务器是否明确返回了文件的内容如何获知答:有HTTP/ 200 OK(text/html)10.分析你的浏览器向服务器发出的第二个“HTTP GET”请求,在该请求报文中是否有一行是:IF-MODIFIED-SINCE如果有,在该首部行后面跟着的信息是什么答:仍然没有。
如图。
11.服务器对第二个HTTP GET请求的响应中的HTTP状态代码是多少服务器是否明确返回了文件的内容请解释。
答:状态码和相应状态信息的值为304 NOT Modified,他表示缓存器可以使用该对象。
第二次没有返回文件的内容,因为他只是作为对该条件GET的响应,WEB服务器只发送一个响应报文,不包含请求的对象。
12. 你的浏览器一共发出了多少个HTTP GET请求答:1个13. 传输这一个HTTP响应需要多少个TCP报文段答:4个。
14. 这个HTTP GET请求相对应的响应报文的状态代码和状态短语是什么答:15.在TCP “Continuation”附加关联的传输数据中有没有HTTP状态码和短语答:没有。