搜档网
当前位置:搜档网 › 如何利用Ethereal进行协议分析

如何利用Ethereal进行协议分析

Ethereal是什么?它是一个图形用户接口(GUI)的网络嗅探器,能够完成与TCPDUMP相同的功能,用来捕获网络数据;但其有TCPDUMP无法相比的友好界面;而且其支持的协议之广和全也是别的嗅探器没有办法相提并论的。

那么你可以试着阅读本文,让此文给我们07年岗前实训带来方便!

1. 简单介绍

Ethereal是一个图形用户接口(GUI)的网络嗅探器,能够完成与TCPDUMP相同的功能,但操作界面要比TCPDUMP友好的多。Ethereal和TCPDUMP都依赖于pcap 库(libcap),因此两者在许多方面非常相似(有相同的数据抓取过滤条件和关键字)。同时Ethereal有与其他图形化网络嗅探器相同的界面模式,实际上如果你能够熟练地使用Ethereal,那么你也同样可以使用其他用户界面的网络嗅探器。

Ethereal也是一个跨平台的开源项目,支持Windows和Linux平台。Ethereal 起初由Gerald Combs开发,随后由一个松散的Ethereal团队组织进行维护开发。它目前所提供的强大协议分析功能完全可以同商业的网络协议分析系统媲美,从1998年发布最早的0.2版本至今,大量的志愿者为Ethereal添加新的协议解析器,如今Ethereal已经支持500多种协议解析。很难想象如此多的人开发的代码是如何很好的融入系统中的;实际上在Ethereal中添加一个新的协议解析器非常简单,笔者曾经就在很短的时间内向Ethereal添加一个协议解析器;其实系统为添加协议解析器留出了接口,而在面向程序员的开发文档中对如何添加协议解析器有很好的说明;其实网络协议种类繁多,随着时间推移,各种新的协议层出不穷,如果不是设计良好的系统,也不可能适应不断发展的网络协议。一句话,Ethereal是一个结构设计良好的系统。

那么可以利用Ethereal来做什么呢?实际上Ethereal可以用来捕获网络的数据包,然后利用其对现有协议的分析能力来帮助工作。

2. 安装Ethereal

正如前面所说Ethereal是一个开源的项目,可以从https://www.sodocs.net/doc/3815024561.html, 下载,你不但可以从这里下载到可执行程序,也可以下载到源程序。当前最新版本是0.99.0版。不过正如我们前面说过的,Ethereal是建立在libcap基础之上,所以在安装Ethereal之前请先安装一个libcap的库,可以从

https://www.sodocs.net/doc/3815024561.html,/下载。

Ethereal比较具有吸引力的地方是可以通过阅读其协议分析器的源代码来了解一些不容易得到的协议的详细情况;当然这是比较费力的途径,如果能够得到协议的文档说明还是不要走这条路。

3. 使用Ethereal来捕获数据包

下面以Windows平台上的Ethereal 0.99.0版本介绍一下如何使用Ethereal。

3.1. 捕获数据初级篇

启动Ethereal之后选择Capture菜单,然后选择子菜单Start就可以开始捕获数据包了。

图1:Ethereal开始界面

一旦启动捕获程序以后,Ethereal界面最前面显示一个窗口,这个窗口用来显示各种协议捕获到的数据包数量,以及已经运行的时间。图2显示这个对话框:

图2:Ethereal捕获对话框

3.2. 网络数据的分析

如果你想停止捕获数据包,只需要单击Stop按钮即可。在停止捕获数据包以后,Ethereal将捕获到的数据包进行分析,然后以图形的形式展现在用户面前;如图3所示:

图3:Ethereal网络数据包显示窗口

图3主要包括3部分,分别是:

1.协议数据包窗口;该窗口中概要的显示数据包捕获的时间,源和目的IP

地址,以及使用协议的概况。

2.协议树窗口;该窗口以树形结构显示捕获到的数据包,实际上当在协议数据包窗口中选择一个数据包的时候,该窗口显示的就是该数据包的结构;树的形状按照网络协议的层次从上到下排列。

3. 16进制数据包窗口;该窗口以16进制的形式显示协议数窗口中对应的数据包。

注意,窗口的整体布局(1、2、3窗口的位置)可以通过菜单:Edit->Preferences…来设置。

下面具体介绍上面3个窗口的功能。

3.2.1. 协议数据包窗口

3.2.1.1. 格式

捕获的数据包默认按照时间的顺序全部显示在该窗口中,窗口的选项从左到右分别是:包序号、时间(单位为秒)、数据包源的IP地址、数据包目标的IP地址、协议类型、包信息概述。下面是一个HTTP数据包的例子:

包号是20;当前包到达时间距离第一个包是59.886024秒;包的源IP地址是210.77.145.167;包的目的地址是60.166.179.164,由于是HTTP协议(基于TCP),所以有一个地址应该是本地计算机地址,该目的地址就是本地机器地址。协议类型为HTTP协议,也就是TCP端口号为80,Ethereal对支持的协议都会在这里以协议的名称显示出来,否则这里显示TCP端口号或UDP端口号,当然对于非TCP 和UDP的另当别论。

最后的信息一栏对于TCP和UDP数据包显示数据包从端口到端口,如果有TCP

和UDP标志,也会显示在该栏中;对于TCP会显示其他的参数,如窗口、ACK序号等。下面是另外一个例子。

3.2.1.2. 颜色选项

Ethereal对于不同的协议可设置不同的颜色,从而方便用户观察任何异常的数据包,设置颜色选项通过菜单View->Coloring Rules来设置。选择该菜单以后,出现颜色设置对话框,如下所示:

图4,协议颜色选项

系统提供了默认的协议颜色设置,对于某些铭感的协议标志采用红色或黑色来表示。例如:Bad TCP标志。

3.2.1.3. 浏览TCP数据流的内容

Ethereal提供了一个选项,可以用来浏览一个TCP连接上的数据,这些数据以ASCII码等形式显示;可以在协议数据包窗口中选择一个TCP数据包,然后选择右键菜单:Follow TCP Stream,然后出现如图5所示的窗口:

图5,浏览TCP数据流

Ethereal提供了4种形式来显示数据;如果选择ASCII码,对于明码传递的文本数据都可以在这里查看到,例子中的是一个HTTP协议的TCP流(HTTP是使用80端口的一种TCP协议)。

注意,你可能通过该方式一不小心浏览别人明码方式传递的帐户和口令信息哦。

3.2.2. 协议树窗口

当在协议数据包窗口中选择一个数据包的时候,该数据包的协议树就在协议树窗口中被创建。下图是一个TCP数据包的协议树窗口:

图6,协议树窗口

上面是一个HTTP协议的数据包窗口。协议树窗口显示的协议层次与网络协议的层次对应;下表是上面这个例子的对应关系:

义需要熟读TCP/IP协议族。这里需要记住一点,从应用层到最底层,通过逐渐添加数据包头来完成的,在数据链路层有一个尾部。这里仅仅举两个三个例子:IP协议节点、TCP协议节点、HTTP协议节点。

注意:帧这层没有对应的网络层,实际上该层是Ethereal为了管理自己建立的,其中的帧序号通常是显示过滤条件的重要参数。

3.2.2.1. IP协议节点

图7,IP协议节点

3.2.2.2. TCP协议节点

图8,TCP协议节点

3.2.2.3. 应用层协议节点

图9,应用层协议节点

上面的例子是一个HTTP协议数据包;通常这层节点是应用层数据;例如:WEBEX 的TP/ARM协议,SSL协议等。具体协议参数的含义取决于不同的一些类型。现在的大部分新增的协议都是在这一层之上的,例如:腾讯公司的QQ协议,微软MSN协议等;对于这些来说,他们一般使用一个固定的端口,而Ethereal解析这些协议也正是基于这些端口。作者本人当写添加的协议就是在该层。如果你想为自己公司的协议添加一个协议解析器,你可以工作在这一层;后面我们将介绍如何添加协议解析器。

3.2.3. 16进制数据包窗口

16进制数据包窗口将数据包的所有内容以16进制的形式显示出来,如下图所示:

图10,16进制数据包窗口

该窗口包括3部分,分别是:

1. 16进制的序号,字节为单位

2. 16进制的数据内容;16个字节一行

3. ASCII码数据内容

用户可以通过直接观察数据包的内容来检查数据。16进制数据包窗口和协议树窗口联合在一起用来完整的表示一个数据包;在协议树上选择一个节点会对应到16进制数据包窗口,当然这个协议应该是被解析的。下面就是一个例子:

图11,协议树和16进制窗口的对应关系

图中显示TCP的窗口大小对应的实际值。

提示,如果数据以明码的形式传输,我们可以在3会观察到数据的具体内容。3.3. 数据捕获高级篇

为了更精确的捕获数据,Ethereal提供了捕获数据的过滤条件,可以通过设置过滤条件将不需要的数据过滤掉。

Ethereal使用pcap (libpcap /winpcap)的过滤语言作为过滤条件。在

https://www.sodocs.net/doc/3815024561.html,站点上对该过滤条件有详细的解释;如果对过滤条件有特殊的需要请到这里查找。下面介绍几种常有的数据过滤条件。

3.3.1. 如何设置过滤条件

在3.1节简单介绍如何捕获数据,实际上那里没有设置任何过滤条件,所以所有流过你网卡的数据都会被捕获。

Ethereal提供了两种方式来开始捕获数据:一种是前面已经介绍的;另一种是通过菜单Capture->Interfaces来启动。一旦选择该菜单,就出现一个对话框,如下图:

图12,Capture Interfaces

这里的Interfaces对应机器上的网卡,如果有多块网卡对于Ethereal来说就是多个Interfaces,对于用户来说,需要指定具体捕获那块网卡的数据。在我的计算机中其实只有一块网卡,也就是D-LINK;这个对话框也概要地显示流过该网卡包数量和流速。一旦确定捕获那块网卡上的数据,选择对应的Capture按钮就可以开始捕获了,这个时候会出现如图2的对话框。

当然如果需要进一步设置过滤条件,可以通过上图中Capture旁边的Prepare

这个Button来激活,菜单:Capture->Options也提供了这个功能。激活后就出现下面的过滤条件设置对话框:

图13,过滤条件设置

在这个对话框中也提供了网卡选择的选项。下面具体介绍过滤条件每部分的含义。

这里将过滤条件分成了主要的6部分,其他部分这里不介绍,如图13所示。

1. Interface,用于选择网卡

2. 用来捕获数据的缓冲区;如果注意到有包被丢失,可以将其增大;默认是1MB。

3. 过滤条件;在3.3.2节详细介绍。

4. 捕获模式;一般情况下,网卡只捕获到其本身网络地址的数据,其他都丢弃;但如果想捕获所有网卡能够看到的数据,必须选择这个选项。这里需要注意的是,在交换式网络环境中,很难捕获到目标或源不是Ethereal所在机器的网络数据包(广播包目的是网络中的所有计算机),这是由交换式网络环境决定,因为数据传输过程不需要在目标和源之间直接建立的链路上传输的,也就是数据根本不会到达无关的计算机网卡上;如果你的计算机连接到一个交换机上,那么它肯定是这样的;如果你的计算机连接到一个HUB上,是由HUB的类型决定,交换式的就不会;但如果不是交换式的,它传输数据的方式是广播,这种情况下无关的计算机可以捕获到数据包。更多信息可以参考帮助文档的FAQ

5.1。

5. 限制每个被捕获包的大小

6. 设置Ethereal在满足什么样的条件下自动停止捕获;可以是时间、包的数量、包的字节数等。

7. 设置捕获数据的存储方式;可以是单个文件,也可以是多分文件。3.3.2. 常用的过滤条件

对于过滤条件,这里介绍几个常用的简单例子。

1.捕获到或来自指定以太网地址的数据包

ether host 08:00:08:15:ca:fe(以太网地址)

2.捕获所有来自或去向指定IP地址的数据

host 192.168.0.10(IP地址)

3.捕获指定协议指定端口的数据包

Tcp(协议关键字,小写) port(关键字) 5150(端口)

捕获所有TCP协议,使用5150端口的数据

4.条件的合并;条件可以通过关键字and和or来联合,例如捕获指定IP地址的指定协议和端口的数据包

Host 192.168.0.10 and tcp port 5150

3.4. 显示数据过滤

在数据捕获以后,如果没有过滤条件,所有的数据都出现在协议数据包窗口中;Ethereal考虑的很周到,为挑选数据节省时间其使用了显示过滤条件。这里值得一提的是,这个过滤条件不同于捕获过滤条件,这些条件是由Ethereal自己定义的。

3.4.1. 设置显示过滤条件

在Ethereal主界面协议数据包窗口的上面有一个TOOLBAR就是用来设置过滤条件的,如图:

图14,显示过滤条件BAR

设置方式有四种:直接输入过滤条件、通过Filter来激活以往配置好的条件、选择+Expression来增加新的条件、选择Combo box的下拉箭头来选择以往条件。由于过滤条件是Ethereal自己定制的,与捕获过滤条件比较起来好用许多,许多参数可以+Expression激活的协议参数对话框直接选择。

3.4.2. 常用的过滤条件

语法:其有一种类似C语言的语法;判断条件符号和逻辑操作符号都是C语言的符号;当然其还可以使用and或or等关键字来逻辑的&&和||。

下面是几个简单的例子:

1.查看指定包号到指定包号的数据

frame.no>=100 and frame.no<=200(从100到200之间的所有包)

2.查看指定IP地址的包

Ip.addr == 172.16.201.109

3.查看指定协议端口的包

Tcp.port == 80(使用TCP协议端口为80的所有数据包)

4.查看指定源和目标之间指定协议端口的数据包

Ip.src == 172.16.201.109 and ip.dst == 172.16.202.107 and tcp.port ==1800 所有TCP端口为1800从172.16.201.109到172.16.202.107数据包

5.查看设置了指定TCP协议标志的所有包

tcp.flags.push == 1,所有设置了push标志的包

4. 小结

到目前为止,本文基本上介绍如何通过Ethereal来捕获数据、怎么样分析数据以及过滤数据;这些只是Ethereal的入门,Ethereal还为用户提供了很多其他有用的功能,限于篇幅和时间,这里不在介绍,由读者自己去实践。

TCP协议分析实验报告

TCP协议分析实验报告 实验4传输层协议分析 一、实验目的 1、学习3CDaemon FTP服务器的配置和使用,分析TCP报文格式,理解TCP的连接建立、和连接释放的过程。 2、学习3CDaemon TFTP服务器的配置和使用,分析UDP报文格式,理解TCP 协议与UDP协议的区别。 二、实验工具软件3CDaemon软件简介 3CDaemon是3Com公司推出的功能强大的集FTP Server、TFTP Server、Syslog Server 和TFTP Client于一体的集成工具,界面简单,使用方便。 这里主要介绍实验中需要用到的FTP Server功能和TFTP Server功能。 1、FTP Server功能 (1)配置FTP Server功能:选中左窗格功能窗口,打开FTP Server按钮,单击窗格中的 Configure FTP Server按钮,打开3CDaemon Configuration配置窗口,配置FTP Server功能。 这里需要设置的就是“Upload/Download”路径,作为FTP Server的文件夹,其它选项可以使用系统缺省设置。设置完成后,单击确认按钮,设置生效。 (2)在实验中,我们使用3CDaemon系统内置的匿名帐户“anonymous”登陆FTP 服务器, 客户端使用微软FTP客户端命令,关于Ftp命令的说明介绍如下。 (3) Ftp命令的说明 FTP的命令格式:ftp[-v][-d][-i][-n][-g][-w:windowsize][主机名/IP地址] 其中:

-v不显示远程服务器的所有响应信息; -n限制ftp的自动登录; -i在多个文件传输期间关闭交互提示 -d允许调试、显示客户机和服务器之间传递的全部ftp命令; -g不允许使用文件名通配符; -w:windowsize忽略默认的4096传输缓冲区。 使用FTP命令登录成功远程FTP服务器后进入FTP子环境,在这个子环境下,用户可以使用FTP的内部命令完成相应的文件传输操作。 FTP常用内部命令如下: open host[port]:建立指定ftp服务器连接,可指定连接端口。 user user-name[password][account]:向远程主机表明身份,需要口令时必须输入。 append local-file[remote-file]:将本地文件追加到远程系统主机,若未指定远程系统文件名,则使用本地文件名。 cd remote-dir:进入远程主机目录。 cdup:进入远程主机目录的父目录。 cd[dir]:将本地工作目录切换至dir。 dir[remote-dir][local-file]:显示远程主机目录,并将结果存入本地文件。get remote-file[local-file]:将远程主机的文件remote-file传至本地硬盘的local-file。 ls[remote-dir][local-file]:显示远程目录remote-dir,并存入本地文件local-file。 put local-file[remote-file]:将本地文件local-file传送至远程主机。 mput local-file:将多个文件传输至远程主机。 nlist[remote-dir][local-file]:显示远程主机目录的文件清单,存入本地硬盘local-file。

利用wireshark分析HTTP协议实验报告

利用wireshark分析HTTP协议实验报告 姓名:杨宝芹 学号:2012117270 班级:电子信息科学与技术 时间:2014.12.26

利用wireshark分析HTTP协议实验报告 一、实验目的 分析HTTP协议。 二、实验环境 连接Internet的计算机,操作系统为windows8.1; Wireshark,版本为1.10.7; Google Chrome,版本为39.0.2171.65.m; 三、实验步骤 1.清空缓存 在进行跟踪之前,我们首先清空Web 浏览器的高速缓存来确保Web网页是从网络中获取的,而不是从高速缓冲中取得的。之后,还要在客户端清空DNS 高速缓存,来确保Web服务器域名到IP地址的映射是从网络中请求。 2.启动wireshare 3.开始俘获 1)在菜单中选择capture-options,选择网络,打开start。如下图:

2)在浏览器地址栏中输入https://www.sodocs.net/doc/3815024561.html,,然后结束俘获,得到如下结果: 3)在过滤器中选择HTTP,点击apply,得到如下结果:

在菜单中选择file-save,保存结果,以便分析。(结果另附) 四、分析数据 在协议框中选择“GET/HTTP/1.1”所在的分组会看到这个基本请求行后跟随 着一系列额外的请求首部。在首部后的“\r\n”表示一个回车和换行,以此将该 首部与下一个首部隔开。“Host”首部在HTTP1.1版本中是必须的,它描述了URL 中机器的域名,本实验中式https://www.sodocs.net/doc/3815024561.html,。这就允许了一个Web服务器在同一 时间支持许多不同的域名。有了这个数不,Web服务器就可以区别客户试图连接 哪一个Web服务器,并对每个客户响应不同的内容,这就是HTTP1.0到1.1版本 的主要变化。User-Agent首部描述了提出请求的Web浏览器及客户机器。接下 来是一系列的Accpet首部,包括Accept(接受)、Accept-Language(接受语言)、 Accept-Encoding(接受编码)、Accept-Charset(接受字符集)。它们告诉Web

tcp协议分析报告

tcp协议分析报告 篇一:TCP协议分析报告 TCP/IP协议分析实验报告 一、本人承担的工作 在这次利用Wireshark 进行TCP/IP协议分析实验中,我负责协助使用Wireshark软件分析IP数据包、TCP数据结构,以及编写实验报告。 二、遇到的困难及解决方法 遇到的困难是我们在自己的电脑上ping本地一个IP地址时,出现了错误导致抓包进行不了, 后来在实验室里进行抓包就可以了。我觉得可能是在ping本地IP地址时无法与那个IP地址的主机连接,可以ping其他的本地网关,且让ping的次数增多让Wireshark抓包成功率加大即可。 三、体会与总结 通过这次利用Wireshark捕获数据包并且分析IP, TCP数据结构,结合课本第三章知识,我了解了数据结构包括版本,头部长度,区分服务,总长度,标识,标志,片偏移,生存时间,协议,检验和,源IP地址,目标IP地址,选项等, 1 而且知道ping(packet internet grope)是用于测试源主机到目的主机网络的连通性,Wireshark是用于尝试捕获网络包并显示包的尽可能详细的情况。 篇二:实验报告(TCP协议分析实验报告) 实验四传输层协议分析 一、实验目的

1、学习3CDaemon FTP服务器的配置和使用,分析TCP报文格式,理解TCP的连接建立、和连接释放的过程。 2、学习3CDaemon TFTP服务器的配置和使用,分析UDP报文格式,理解TCP 协议与UDP协议的区别。 二、实验工具软件3CDaemon软件简介 3CDaemon是3Com公司推出的功能强大的集FTP Server、TFTP Server、Syslog Server 和TFTP Client于一体的集成工具,界面简单,使用方便。 这里主要介绍实验中需要用到的FTP Server功能和TFTP Server功能。 1、FTP Server功能 (1)配置FTP Server功能:选中左窗格功能窗口,打开FTP Server按钮,单击窗格中的 Configure FTP Server按钮,打开3CDaemon Configuration配置窗口,配置FTP Server功能。 这里需要设置的就是“Upload/Download”路径,作为FTP Server的文件夹,其它选项可以使用系统缺省设置。设置完 2 成后,单击确认按钮,设置生效。 (2)在实验中,我们使用3CDaemon系统内置的匿名帐户“anonymous”登陆FTP 服务器, 客户端使用微软FTP客户端命令,关于Ftp命令的说明介绍如下。 (3) Ftp命令的说明 FTP的命令格式:ftp[-v][-d][-i][-n][-g][-w:windowsize][主机名/IP地址] 其中: -v不显示远程服务器的所有响应信息; -n限制ftp的自动登录; -i在多个文件传输期间关闭交互提示

网络实验报告 TCP协议分析

《计算机网络(II)》实验报告 实验名称:TCP协议分析 班级:100341C 姓名:汪何媛学号:100341324 任课教师:顾兆军 完成日期:2012.12.14 实验环境:网络结构一 一、实验目的 1)查看TCP连接的建立和释放 2)编辑并发送TCP报文段 3)TCP的重传机制 二、实验内容 练习一:察看TCP连接的建立和释放 1. 主机B、C、D启动协议分析器进行数据捕获,并设置过滤条件(提取TCP协议)。 2. 主机C打开TCP工具,类型选择“服务器”,端口填写大于1024的值; 点击“创建”,如果端口被占用则选择其它。主机A打开TCP工具,类型选择“客户端”,地址填入主机C的IP地址;在端口填入主机C的TCP工具监听的端口;点击[连接]按钮进行连接。

3.察看主机B、C、D捕获的数据,填写下表。

TCP 连接建立时,前两个报文的首部都有一个“maximum segment size”字段,它的值是多少?作用是什么?结合IEEE802.3协议规定的以太网最大帧长度分析此数据是怎样得出的。 maximum segment size=1460 4. 主机A 断开与主机C 的TCP 连接。 5. 察看主机B 、C 、D 捕获的数据,填写下表。 字段名称 报文1 报文2 报文3 序列号 2532372657 1948328206 2532372658 确认号 0 2532372658 1948328207 ACK 0 1 1 SYN 1 1

字段名称 报文4 报文5 报文6 报文7 序列号 3013278418 1558034120 1558034120 3013278419 确认号 1558034120 3013278419 3013278419 1558034121 ACK 1 1 1 1 FIN 1 1 练习二:利用仿真编辑器编辑并发送TCP 数据包 ? 本练习将主机A 和B 作为一组,主机C 和D 作为一组,主机E 和F 作为一组,现仅以主机A 和B 为例,说明实验步骤。 ? 在本实验中由于TCP 连接有超时时间的限制,故仿真编辑器和协议分析器的两位同学要默契配合,某些步骤(如计算TCP 校验和)要求熟练、迅速。 ? 为了实现TCP 三次握手过程的仿真,发送第一个连接请求帧之前,仿真端主机应该使用“仿真编辑器/工具菜单/TCP 屏蔽/启动屏蔽”功能来防止系统干扰(否则计算机系统的网络会对该请求帧的应答帧发出拒绝响应)。 ? 通过手工编辑TCP 数据包实验,要求理解实现TCP 连接建立、数据传输以及断开连接的全过程。在编辑的过程中注意体会TCP 首部中的序列号和标志位的作用。

Ethereal工具的使用方法

Ethereal工具的使用方法 1、抓包设置页面 选择以太网卡 设置为实时刷新报文 设置为是否滚动 设置一次抓包长度或抓包时间 设置抓包存储方式 显示过滤 显示过滤语法: mms 只显示MMS报文 iecgoose 只显示goose报文 tcp 只显示tcp报文 udp 只显示udp报文 ip.addr == 172.20.50.164 显示与地址为172.20.50.164的服务器交互的报文 ip.src == 172.20.50.164 显示源地址IP为172.20.50.164的服务器发出的报文 ip.dst == 172.20.50.164 显示与目的地址IP为172.20.50.164的服务器交互的报文 eth.addr == 5a:48:36:30:35:44 显示与MAC地址为5a:48:36:30:35:44的服务器交互的报文 eth.src == 5a:48:36:30:35:44 显示源MAC地址为5a:48:36:30:35:44的服务器发出的报文

eth.dst == 5a:48:36:30:35:44 显示与目的MAC 地址为5a:48:36:30:35:44的服务器交互的报文 抓捕过滤 抓捕过滤语法 Tcp 只抓捕Tcp 报文 Udp 只抓捕Tcp 报文 Host 172.20.50.164 只抓捕IP 地址为172.20.50.164的报文 Ether host 只抓捕MAC 地址为5a:48:36:30:35:44的报文 限制每个包的大小 2、 协议显示 MMS 报文 SNTP 建立以太网通讯时会发ARP 报文ping 报文 SV 、GOOSE 抓包时间 3、 显示信息

实验一 使用Ethereal工具分析网络协议

实验一使用Ethereal工具分析网络协议 一、实验目的 通过使用Ethereal软件掌握Sniffer(嗅探器)工具的使用方法,实现捕捉网络协议的数据包,以理解TCP/IP协议族中多种协议的数据结构以及多种协议的交互过程。 二、实验环境 安装Windows 2000/XP的PC机,在每一台上安装Ethereal软件。将PC机通过路由器/交换机相连,组成一个局域网。 三、实验内容和步骤 (1)Ethereal 使用说明 1、Ethereal 简介 Ethereal是一款免费的网络协议分析程序,支持Unix、Windows。借助这个程序,你既可以直接从网络上抓取数据进行分析,也可以对由其他嗅探器抓取后保存在硬盘上的数据进行分析。你能交互式地浏览抓取到的数据包,查看每一个数据包的摘要和详细信息。Ethereal有多种强大的特征,如支持几乎所有的协议、丰富的过滤语言、易于查看TCP会话经重构后的数据流等。 它的主要特点为: ?支持Unix系统和Windows系统 ?可以根据不同的标准进行包过滤 ?通过过滤来查找所需要的包 ?根据过滤规则,用不同的颜色来显示不同的包 ?提供了多种分析和统计工具,实现对信息包的分析 2、Ethereal 安装 安装软件可以从https://www.sodocs.net/doc/3815024561.html,网站上下载。

3、Ethereal操作指导 3.1 Ethereal 操作界面 Ethereal软件界面如图上图所示,在这个窗口上,整个界面环境分为三个窗口,最上面的窗口是抓包列表窗口,经过Ethereal软件抓包后的数据包都会列在这个窗口中,同时你可以根据抓包序列号,抓包时间、源地址、目标地址、协议等进行包列表的排序,这样你可以很容易的找到你所需要的信息包。 中间的窗口中显示的是抓包列表上所选择的包对应的各层协议说明,其中,协议层次信息以树型的结构进行显示。 最下面的窗口是数据窗口,显示的是上层窗口选中的信息包的具体数据,同时,在中间树型窗口中所选择的某一协议数据域的内容,在数据窗口中会被突出地显示出来。 3.2 Ethereal 界面菜单 菜单中主要有以下几个部分: File:这个子菜单下的操作与Windows菜单下File下的操作类似,包括了文件的打开,保存、打印以及系统的退出等等。不过这里的文件仅仅指的是抓包文件。Edit:这个子菜单下所包含的操作有:查找某一个特定的帧、跳到某个帧、在一个或更多的帧上打上标记、设置首选项、设置过滤、协议剖析允许/不允许等。在这个菜单下,Windows界面中的一些常用的操作,例如剪切、复制、粘贴等将不再使用。 Capture:在这个菜单下进行开始抓包和停止抓包的操作。

实验三利用Ethereal分析HTTP协议

计算机网络实验报告年级:姓名:学号: 实验日期: 实验名称:实验三利用Ethereal分析HTTP协议 一、实验目的 1、利用抓包工具wireshark来分析http协议; 2、通过分析HTTP协议,探讨有关HTTP协议的以下几个方面: (1)、基本的GET /响应交互, (2)、HTTP的消息格式, (3)、获取较大的HTML文件, (4)、检索与嵌入HTML文件对象, (5)、和HTTP身份验证和安全性。 二、实验器材 1、接入Internet的计算机主机; 2、抓包工具wireshark和截图工具snagit。 三、实验内容 (一). The Basic HTTP GET/response interaction 1. Is your browser running HTTP version 1.0 or 1.1? What version of HTTP is theserver running? 答:我的浏览器上运行HTTP version 1.1如下图 2. What languages (if any) does your browser indicate that it can accept to theserver? 答:浏览器所能接受的语言为:简体中文accept language : zh -cn\r\n 截图如下:

3. What is the IP address of your computer? Of the https://www.sodocs.net/doc/3815024561.html, server? 答:本机IP地址:10.0.163.199,服务器IP地址:128.119.245.12 截图如下: 4. What is the status code returned from the server to your browser? 答:状态码及状态码200ok截图如下: 5. When was the HTML file that you are retrieving last modified at the server? 6. How many bytes of content are being returned to your browser? 7. By inspecting the raw data in the packet content window, do you see any headerswithin the data that are not displayed in the packet-listing window? If so, nameone. 答:没有。 (二). The HTTP CONDITIONAL GET/response interaction1 8. Inspect the contents of the first HTTP GET request from your browser to the server. Do you see an “IF-MODIFIED-SINCE” line in the HTTP GET? 答:没有看到。 9. Inspect the contents of the server response. Did the server explicitly return the contents of the file? How can you tell? 答:反回了,如下图所示 10. Now inspect the contents of the second HTTP GET request from your browser

《TCPIP协议分析》课程设计

成绩: 《TCP/IP协议分析》课程设计 题目: ICMP协议分析 院(系): 专业班级: 姓名: 学号: 任课教师: 2013年6月10日

精品文档 。 1欢迎下载 目 录 1协议概述 (1) 1.1协议名称 (1) 1.2协议主要功能 (1) 1.3协议来源 (1) 1.4协议版本发展历程 (2) 2协议工作原理及流程 (2) 2.1协议工作原理 (2) 2.2协议工作流程分析 (3) 3协议格式分析 (5) 4协议应用 (10) 4.1 ICMP FLOOD 攻击 (10) 4.1.1 ICMP 洪水的成因 (10) 4.1.2 实现ICMP 洪水的前提 (10) 4.1.3 洪水——两败俱伤的攻击方式 (10) 4.1.4 不同方式的ICMP 洪水 (11) 4.2 ICMP 防御 (12) 5结术语 (14) 参考文献 (14)

《TCP/IP协议分析》课程设计 1协议概述 1.1协议名称 ICMP是Internet Control Message Protocol的简称,即Internet控制报文协议。ICMP协议是一种面向连接的协议,属于网络层协议,用来测试网络是否畅通。 1.2协议主要功能 ICMP是Internet控制报文协议。它是TCP/IP协议族的一个子协议,用于在IP主机、路由器之间传递控制消息,包括报告错误、交换受限控制和状态信息等。当遇到IP数据无法访问目标、IP路由器无法按当前的传输速率转发数据包等情况时,会自动发送ICMP消息。控制消息是指网络通不通、主机是否可达、路由是否可用等网络本身的消息。这些控制消息虽然并不传输用户数据,但是对于用户数据的传递起着重要的作用。 ICMP协议是一种面向连接的协议,用于传输出错报告控制信息。它是一个非常重要的协议,它对于网络安全具有极其重要的意义。[1] 主要功能是: 1.侦测远端主机是否存在? 2.建立及维护路由资料? 3.重导资料传送路径。 4.资料流量控制? 1.3协议来源 在IP通信中,经常有数据包不能到达对方的情况,原因是在通信途中的某处的一个路由器由于不能处理所有的数据包,就将数据包一个一个的丢弃。或者因为搞错了端口号,因而服务器软件不能接受它,所以作为IP不可缺少的功能来规定了ICMP网络传输协议。 1

实验一 Ethereal协议分析软件的使用

实验一:使用包嗅探及协议分析软件Ethereal 分析 Ethernet帧及应用层FTP协 议的分析 【实验目的】 1、掌握包嗅探及协议分析软件Ethereal的使用。 2、掌握Ethernet帧的构成 3、掌握 FTP协议包的构成 【实验环境】 安装好Windows 2000 Server操作系统+Ethereal的计算机 【实验时间】2节课 【实验重点及难点】 重点学习掌握如何利用Ethereal来分析Ethernet帧。 【实验内容】 1、捕捉任何主机发出的Ethernet 802.3格式的帧和DIX Ethernet V2(即Ethernet II)格式的帧并进行分析。 2、捕捉并分析局域网上的所有ethernet broadcast帧进行分析。 3、捕捉局域网上的所有ethernet multicast帧进行分析。 【实验步骤】 一、Ethereal的安装 Ethereal是一个图形用户接口(GUI)的网络嗅探器,由于Ethereal需要WinPcap库, 所以先安装WinPcap_2_3.exe, 再安装Ethereal.exe。(已装好)二、仔细阅读附件中的Ethereal使用方法和TcpDump的表达式详解,学习 Ethereal的使用。 三、捕捉任何主机发出的Ethernet 802.3格式的帧和DIX Ethernet V2(即Ethernet II)格式的帧并进行分析。 捕捉任何主机发出的Ethernet 802.3格式的帧(帧的长度字段<=1500),Ethereal的capture filter 的filter string设置为:ether[12:2] <= 1500。捕捉任何主机发出的DIX Ethernet V2(即Ethernet II)格式的帧(帧的长度字段>1500, 帧的长度字段实际上是类型字段),Ethereal的capture filter 的filter string设置为:ether[12:2] > 1500。 ①观察并分析帧结构,802.3格式的帧的上一层主要是哪些PDU?是IP、LLC 还是其它哪种?(学校里可能没有,如果没有,注明没有就可以了) ②观察并分析帧结构,Ethernet II的帧的上一层主要是哪些PDU?是IP、LLC 还是其它哪种? 四、捕捉并分析局域网上的所有ethernet broadcast帧,Ethereal的capture filter 的

协议分析报告

《计算机网络技术及应用》课程论文 题目“腾讯新闻”应用协议分析报告 专业 学生姓名 学号 成绩

目录 1 概述 (1) 1.1 “腾讯新闻”应用软件介绍 (1) 1.2 分析环境 (2) 1.2.1 测试手机配置 (2) 1.2.2 应用软件版本 (2) 1.2.3 分析工具介绍 (3) 1.2.4 网络拓扑 (3) 2 应用软件结构分析 (4) 3 应用协议分析 (5) 3.1 启动(连接)过程分析 (5) 3.1.1 获取新闻各版块 (5) 3.1.2 获取首页新闻列表 (8) 3.2登录(注册)分析 (9) 3.2.1 登陆过程分析 (9) 3.2.2 获取用户评论信息 (10) 3.3 切换版块功能分析 (11) 3.4 读取单条新闻功能分析 (14) 3.5 评论功能分析 (17) 3.5.1 查看评论 (17) 3.5.1发表评论 (22) 4 分析总结 (27)

1 概述 1.1 “腾讯新闻”应用软件介绍 腾讯新闻客户端是基于IOS、Android平台的腾讯新闻服务,快速、客观、公正地提供新闻资讯的中文免费应用程序。凭借优异的用户体验引发用户大量下载,以王者之姿“秒”杀用户,带领移动资讯进入“秒”时代。是腾讯团队用心打造的一款丰富、及时的新闻应用,本着精炼、轻便的目标,为用户提供高效、优质的阅读体验。全球视野,聚焦中国,一朝在手,博览天下。 腾讯新闻功能如下: 1.每日新闻及时报道,洞察真相,领先一步 2.媒体订阅,全面接入优质媒体/微信自媒体,一处订阅,多处可看 3.云收藏,便捷收藏、随时访问、永久保存 4.视频、图片、直播,多媒体资讯,舒适体验,值得拥有 5.专题新闻,聚合报道重要新闻事件,了解事件全貌 6.离线下载智能启动,30秒下载1000条新闻,没有网络也有得看 7.横划手势切换2级栏目,单手操作更方便 8.三种阅读模式,2G/3G/4G/wifi环境顺畅浏览 9.腾讯微博、QQ空间、微信朋友圈、新浪微博、微信好友、手机QQ好友、邮件,随时与好友分享态度 腾讯新闻客户端自上线以来,以快速的推送速度、界面友好、内容专业原创、视频图片优势得到了用户普遍认可,用户数量、活跃度和口碑都在同类软件中名列前茅,一直保持着在App Store新闻软件排名前三位。在欧洲杯赛事和伦敦奥运期间,腾讯新闻客户端开创性的推出视频新闻和奥运专版举动,提高新闻客户端的竞争门槛,更是引发了行业强烈关注。。 腾讯新闻客户端的特色在于把新闻、视频、微博有机地结合了起来,为手机用户提供多形式、多产品精华内容聚合的快速阅读体验。同时拥有优秀的开发和运营团队、腾讯海量的品牌用户、良好的用户口碑以及强大的推广资源等优势腾讯还拥有数量庞大的无线互联网产品,可以互相推荐下载,并会第一时间接入王牌无线产品:微信,让用户能够在微信中分享腾讯新闻,这是其他应用所不具备的。 此外,腾讯新闻客户端具有强大的实时推送功能,7x24小时不间断更新。重大新闻瞬间推送到手机,随时随地掌握天下事。用户通过腾讯新闻客户端,3秒即可连接到世界新闻,重大事件发生时,腾讯新闻客户端版能够实现30秒实时推送新闻。300秒即可尽览每日资讯。通过速度可以让用户真切的感受到了新闻触达指尖的便捷性。

实验四 TCP 协议分析

郑州轻工业学院本科 实验报告 题目:实验四TCP 协议分析 学生姓名:王冲 系别:计算机与通信工程学院 专业:网络运维 班级:网络运维11-01 学号:541107110123 指导教师:熊坤 2014 年10 月28 日

实验四TCP 协议分析 一、实验目的 1、分析HTTP 协议 2、分析DNS 协议 二、实验环境 与因特网连接的计算机网络系统;操作系统为windows;Ethereal、IE 等软件。 三、实验步骤 1.俘获大量的由本地主机到远程服务器的TCP 分组 (1)启动浏览器,打开https://www.sodocs.net/doc/3815024561.html,/ethereal- labs/alice.txt 网页,得到ALICE'S ADVENTURES IN WONDERLAND文本,将该文件保存到你的主机上。

(2)打开https://www.sodocs.net/doc/3815024561.html,/ethereal- labs/TCP-ethereal- file1.html (3)窗口如下图所示。在Browse按钮旁的文本框中输入保存在你的主机上的文件ALICE'S ADVENTURES IN WONDERLAND的全名(含路径),此时不要按“Upload alice.txt file”按钮 (4)启动Ethereal,开始分组俘获。 (5)在浏览器中,单击“Upload alice.txt file”按钮,将文件上传到https://www.sodocs.net/doc/3815024561.html,服务器,一旦文件上传完毕,一个简短的贺词信息将显示在你的浏览器窗口中。 (6)停止俘获。 2.浏览追踪信息

(1)在显示筛选规则中输入“tcp”,可以看到在本地主机和服务器之间传输的一系列tcp和http报文,你应该能看到包含SYN报文的三次握手。也可以看到有主机向服务器发送的一个HTTP POST 报文和一系列的“http continuation”报文。 (2)根据操作回答“四、实验报告内容”中的1-2题。 3.TCP 基础 根据操作回答“四、实验报告内容”中的3-10 题 4.TCP 拥塞控制 (1)在Ethereal已俘获分组列表子窗口中选择一个TCP 报文段。选择菜单: Statistics->TCP Stream Graph-> Time-Sequence-Graph(Stevens)。你会看到如下所示的图。

ethereal使用以及IP协议解析

1.主界面介绍 随着3G的普及,手机数据业务量(如浏览器,彩信等)的日益增长,对手机侧网络包的分析显得越来越重要。 一般来说,手机数据业务的抓包工具为QXDM,在抓LOG指导里面已经有了详细参数的配置介绍(详情见《IP数据包抓取方法.doc》)。但需要注意的是,在将LOG转化为.pcap文件时,必须保证当前电脑里安装有Ethereal软件,否者PCAPGenerator这个工具不会出现。(针对使用Tools->PCAPGenerator转化.isf文件出错的情况,可以做如下尝试:先使用Tools->ISF File Converter将刚刚保存的.isf文件其转化为.dlf文件,然后使用Tools->PCAPGenerator将.dlf 文件转换成.pcap文件)。 这里主要针对抓到IP包后,怎么样使用Ethereal软件对IP包进行分析,以及一些简单的TCP/IP协议介绍。 直接点击打开.pcap文件,可以看到如下图1所示界面。 图1 中间彩色的区域就是IP数据包。从左到右,字段分别是No.,Time,Source,Destination,Protocol以及Info。IP包是按照流经手机网卡的时间顺序排列的,NO.是标示抓到的IP包是该抓包文件中的第几个,Time则是计算的所有包与第一个包之间的间隔时间,单位毫秒ms。Source和Destination字段分别表示IP包的源地址和目的地址。Protocol显示当前IP包的上层协议,如TCP,UDP,如果应用层协议头也在该IP包中,优先显示应用层协议,如RTSP,HTTP等。 注意中间的彩色显示,不同的颜色代表该IP包中包含了不同内容,这是方便我们对IP 包查看。如上面的大红色,表示的是该数据包损坏,可能是只有一半的内容,也可能是指在该包与其他包的序号不连续(指在协议层不连续),中间可能出现丢包的现象。很多时候,Ethereal是用不同颜色来区分上层协议的不同(注意IP包中必须包含上层协议的包头,才能以该应用的颜色进行标示。因为很多数据包比较大,是通过几个IP包进行传输的,那么就只有第一个包是以上层应用的颜色进行标示,后面的显示为协议层颜色)。如下图2中,可以看到DNS是以淡蓝色标示,ICMP是以黑色标示,TCP的同步(SYN&FIN建立TCP连接的三次握手)以深灰色进行标示,而其它的TCP包则以浅灰色标示,HTTP协议使用绿色进

TCPIP协议分析试验报告

.. TCP/IP协议分析及应用实验报告 学号:姓名:班级: 实验项目编号: B03862704 实验项目名称:传输控制协议TCP 一、实验目的: 1. 掌握TCP协议的报文格式。 2. 掌握TCP连接的建立和释放过程。 3. 掌握TCP数据传输中编号与确认的过程。 4. 掌握TCP协议校验和的计算方法。 5. 理解TCP重传机制。 二、实验环境: Windows server 2003 TCP/IP协议分析及应用教学实验平台 三、实验原理(或要求): TCP报文格式 16位源端口号 16位目的端口号 位序号32 位确认序号32F P U A R S 4位首6保留(16I 位窗口大小 C 部长R S S Y 位)N N T G K H 度位紧急指针16位校验和16 选项数据 连接的建立TCP在面向连接的环境中,开始传输数据之前,在两个终 TCP是面 向连接的协议。通信双方必须用彼此的初端之间必须先建立一个连接。对于一个 要建立的连接,(指明希望收到的下一个ackseq始化序列号和来自对方成功传输 确认的应答号。ACK,应答信号写为八位组的编号)来同步,习惯上将同步信 号写为SYN整个同步的过程称为三次握手,如图: 优质范文.

连接的释放TCP附加标记的报FINTCP使用四次握手来结束通话(使用一个带有对于一个已经建立的连接,如图。文段) TCP重传机制只要计时器设置的重传时间到期,就对这个报文段设置一次计时器。TCP每发送一个报文段,但还没有收到确认,就要重传这一报文段。

优质范文. .. 四、实验步骤: 练习一:察看TCP连接的建立和释放 主机B、C、D启动协议分析器进行数据捕获,并设置过滤条件(提取TCP协议)。主机A启动仿真编辑器,进入TCP连接视图。在“服务器信息/IP地址”中填入主机C的IP地址;使用“端口扫描”获取主机C的TCP端口列表,在“服务器信息/端口”中填入主机C的一个TCP端口(大于1024);点击“连接”按钮进行连接。 察看主机B、C、D捕获的数据,填写下表。 字段名称报文1 报文2 报文3 Sequence Number Acknowledgement Number ACK SYN TCP连接建立时,前两个报文的首部都有一个“maximum segment size”字段,它的值是多少?作用是什么?结合IEEE802.3协议规定的以太网最大帧长度分析此数据是怎样得出的。 主机A断开与主机C的TCP连接。 察看主机B、C、D捕获的数据,填写下表。

ethereal抓包工具的使用

《高级网络技术》 实验一 ethereal抓包工具的使用 课程实验报告 课程名称:高级网络技术 专业班级: 姓名: 学号: 指导教师: 完成时间:2012 年10 月24 日

实验一 ethereal抓包工具的使用 一、实验目的 1.熟悉Ethereal网络抓包工具软件的作用和使用方法; 2.通过Ethereal工具软件的帮助,对抓到包进行分析。 二、实验内容 学习Ethereal网络抓包工具以及对ARP packet format进行分析。 三、实验设备及工具 硬件:安装了网卡的PC机。 软件:PC 机操作系统WinXP,安装了网卡驱动程序,以及ethereal抓包软件 四、实验步骤 1)安装winpcap和ethereal; 2)ARP协议分析 由ethereal抓取的包格式和下图一样,首先,对下图所示帧格式进行了解。如图所示,前14字节是数据链路层所附加的帧头,后28字节是来自网络层的ARP数据包内容。 然后,我们根据所抓取的实际例子来分析协议各个部分,如下图所示。 在这个例子中,编号256的包:物理地址是00:21:86:a2:c6:d3,IP地址是

192.168.60.42的主机或路由器,向网络中发送广播,内容是一个ARP协议的request, 希望获得IP地址为192.168.60.140的主机的物理地址。编号为257的包:IP地址为192.168.60.42的主机,收到广播的request后,向广播发送端发送单播reply,告诉 对方自己的物理地址为00:1d:ba:18:cb:dc。 256和257号包的详细内容如下所示。 256号包 257号包 由图可见,前14字节为帧头。其中,前6字节为目的物理地址,当向网络中发送广播时,目的物理地址为全f;7-12字节为源物理地址;最后两个字节表示帧类型,ox0806表示这是一个ARP数据帧;由于是在以太网中传输,当帧长度不足46字节是,可能在

使用Ethereal工具分析网络协议

实验五使用Ethereal工具分析网络 协议 一、实验目的 通过使用Ethereal软件掌握Sniffer(嗅探器)工具的使用方法,实现捕捉网络协议的数据包,以理解TCP/IP协议族中多种协议的数据结构以及多种协议的交互过程。 二、实验内容 1.静态路由的配置。 2.路由协议RIP、RIP V2,OSPF。 三、实验环境 安装Windows 2000/XP的PC机,在每一台上安装Ethereal软件。将PC机通过路由器/交换机相连,组成一个局域网。 四、实验指导 1、Ethereal 简介 Ethereal是一款免费的网络协议分析程序,支持Unix、Windows。借助这个程序,你既可以直接从网络上抓取数据进行分析,也可以对由其他嗅探器抓取后保存在硬盘上的数据进行分析。你能交互式地浏览抓取到的数据包,查看每一个数据包的摘要和详细信息。Ethereal 有多种强大的特征,如支持几乎所有的协议、丰富的过滤语言、易于查看TCP会话经重构后的数据流等。 它的主要特点为: ?支持Unix系统和Windows系统 ?可以根据不同的标准进行包过滤 ?通过过滤来查找所需要的包 ?根据过滤规则,用不同的颜色来显示不同的包 ?提供了多种分析和统计工具,实现对信息包的分析 2、Ethereal 安装 安装软件可以从https://www.sodocs.net/doc/3815024561.html,网站上下载。 3、Ethereal操作指导 3.1 Ethereal 操作界面

Ethereal软件界面如图上图所示,在这个窗口上,整个界面环境分为三个窗口,最上面的窗口是抓包列表窗口,经过Ethereal软件抓包后的数据包都会列在这个窗口中,同时你可以根据抓包序列号,抓包时间、源地址、目标地址、协议等进行包列表的排序,这样你可以很容易的找到你所需要的信息包。 中间的窗口中显示的是抓包列表上所选择的包对应的各层协议说明,其中,协议层次信息以树型的结构进行显示。 最下面的窗口是数据窗口,显示的是上层窗口选中的信息包的具体数据,同时,在中间树型窗口中所选择的某一协议数据域的内容,在数据窗口中会被突出地显示出来。 3.2 Ethereal 界面菜单 菜单中主要有以下几个部分: File:这个子菜单下的操作与Windows菜单下File下的操作类似,包括了文件的打开,保存、打印以及系统的退出等等。不过这里的文件仅仅指的是抓包文件。 Edit:这个子菜单下所包含的操作有:查找某一个特定的帧、跳到某个帧、在一个或更多的帧上打上标记、设置首选项、设置过滤、协议剖析允许/不允许等。在这个菜单下,Windows 界面中的一些常用的操作,例如剪切、复制、粘贴等将不再使用。 Capture:在这个菜单下进行开始抓包和停止抓包的操作。 3.3 相关操作 3.3.1 抓包

实验六利用Wireshark分析协议HTTP

实验六利用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 浏览器中输入:https://www.sodocs.net/doc/3815024561.html, (4)停止分组俘获。 图1.1 利用Wireshark俘获的HTTP分组 在URL https://www.sodocs.net/doc/3815024561.html,中,https://www.sodocs.net/doc/3815024561.html,是一个具体的web 服务器的域名。最前面有两个DNS分组。第一个分组是将域名https://www.sodocs.net/doc/3815024561.html,

转换成为对应的IP 地址的请求,第二个分组包含了转换的结果。这个转换是必要的,因为网络层协议——IP协议,是通过点分十进制来表示因特网主机的,而不是通过https://www.sodocs.net/doc/3815024561.html,这样的域名。当输入URL http://https://www.sodocs.net/doc/3815024561.html, 时,将要求Web服务器从主机https://www.sodocs.net/doc/3815024561.html,上请求数据,但首先Web浏览器必须确定这个主机的IP地址。 随着转换的完成,Web浏览器与Web服务器建立一个TCP连接。最后,Web 浏览器使用已建立好的TCP连接来发送请求“GET/HTTP/1.1”。这个分组描述了要求的行为(“GET”)及文件(只写“/”是因为我们没有指定额外的文件名),还有所用到的协议的版本(“HTTP/1.1”)。 2、HTTP GET/response交互 (1)在协议框中,选择“GET/HTTP/1.1” 所在的分组会看到这个基本请求行后跟随着一系列额外的请求首部。在首部后的“\r\n”表示一个回车和换行,以此将该首部与下一个首部隔开。 “Host”首部在HTTP1.1版本中是必须的,它描述了URL中机器的域名,本例中是https://www.sodocs.net/doc/3815024561.html,。这就允许了一个Web服务器在同一时间支持许多不同的域名。有了这个数不,Web服务器就可以区别客户试图连接哪一个Web服务器,并对每个客户响应不同的内容,这就是HTTP1.0到1.1版本的主要变化。 User-Agent首部描述了提出请求的Web浏览器及客户机器。 接下来是一系列的Accpet首部,包括Accept(接受)、Accept-Language (接受语言)、Accept-Encoding(接受编码)、Accept-Charset(接受字符集)。它们告诉Web服务器客户Web浏览器准备处理的数据类型。Web服务器可以将数据转变为不同的语言和格式。这些首部表明了客户的能力和偏好。 Keep-Alive及Connection首部描述了有关TCP连接的信息,通过此连接发送HTTP请求和响应。它表明在发送请求之后连接是否保持活动状态及保持多久。大多数HTTP1.1连接是持久的(persistent),意思是在每次请求后不关闭TCP 连接,而是保持该连接以接受从同一台服务器发来的多个请求。 (2)我们已经察看了由Web浏览器发送的请求,现在我们来观察Web服务器的回答。响应首先发送“HTTP/1.1 200 ok”,指明它开始使用HTTP1.1版本来发送网页。同样,在响应分组中,它后面也跟随着一些首部。最后,被请求的实际数据被发送。

相关主题