77范文网 - 专业文章范例文档资料分享平台

ok网络协议分析实验指导书(Wireshark)

来源:网络收集 时间:2018-10-30 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

图2 FTP控制通道

(5)用户名和密码交换完成,FTP客户端就会发送命令“PWD”来指定当前工作的目录。上图中显示服务器以当前工作的目录是根目录“/”作为响应,客户端也用发出命令“SYST”请求关于FTP服务器的信息。

(6)“PASV”通知服务器准备第一个即将到来的数据连接。服务器响应“227 Entering Passing Mode”,这表示服务器自动打开一个套接字来接受来自客户端的数据连接。

3、查看FTP数据通道

数据通道用于列出当前工作目录的内容。当建立了数据通道后,客户端通过控制通道发送LIST命令,请求列出当前工作目录的内容。当目录列表发送完毕后,数据通道也被关闭。

(1)在目录信息传送之后,FTP客户端将传过来的目录信息显示给我们。在本实验中选择进入in-notes目录,这个动作被解释为CWD in-notes 命令在控制通道中传送。在进入目录in-notes后,目录的内容在第二个数据通道中显示出来,过程与根目录的相同。

(2)在文件传送之前,还有一个额外的命令“TYPE I”。FTP支持多种不同的文件数据表示格式,比如用I表示图像,用A表示ASCII,E表示EBCDIC。

(3)rfc959.txt文件在第三个数据通道以类似传送目录列表的方式传送。 总之,在本机与FTP服务器之间的这个跟踪记录中,建立了4个TCP连接---一个控制通道、两个列举目录的数据通道和一个文件传输的数据通道。如图所示,我们通过使用Analyze菜单下的工具来观察每个连接的一些概要信息。选择Analyze-〉Statisics->Conversation List->TCP(IPv4 IPv6).

图3 TCP会话列表

注意,在出现的TCP对话中,连接不是以它们出现的顺序列出来的。 4、请同学们利用校园网FTP服务器重做此实验。 四、实验报告

1、传送该文件花费了多长时间?全部FTP会话过程呢?只用来传送文件的连接呢? 2、使用Follow TCP Stream检查控制通道,服务器发送多少数据到客户端?客户端发送多少数据到服务器?

3、使用Follow TCP Stream检查每一个数据通道,在每个数据通道中,服务器发送了数据到客户端?客户端发送多少数据到服务器?哪个请求的数据最多,传送RFC文件还是目录列表信息?

实验十 使用Wireshark分析SMTP和POP3协议

一、实验目的

分析SMTP和POP3协议 二、实验环境

与因特网连接的计算机,操作系统为Windows,安装有Wireshark、IE等软件。 三、实验步骤

大多数电子邮件客户端允许用户撰写电子邮件并将其方到发件箱中,还能发送发件箱中的邮件,接收新邮件到收件箱。大多数用户都知道必须连接到因特网才能发送和接收邮件,但他们可能不知道网络通信的细节。

发送邮件的过程和接收邮件的过程截然不同,它们甚至使用不同的应用层协议。电子邮件客户端通常使用邮件传送协议(Simple Mail Transfer Protocol, SMTP)来发送邮件,并用邮局协议(Post Office Protocol, POP)接收邮件。客户端发送邮件时,通常连接一台独立的本地邮件服务器,并将所有外发的邮件发送到这个服务器而不管接收者的地址。本地邮件服务器将报文放在发送邮件队列中。此时,电子邮件客户端不再涉及邮件的传输,而由本地邮件服务器负责对每个接收者传送邮件。SMTP不仅用于电子邮件客户端和本地邮件服务器之间的数据传输,而且还用于本地邮件服务器和每一个接收者的邮件服务器之间的数据传输。

一旦电子邮件报文到达接收者的邮件服务器,就随同该用户的其他接收邮件报文一起放在邮件队列中,用户可以通过类似的POP这样的协议来获取所有的接收邮件。

1、俘获发送邮件时SMTP分组

(1) 启动IE,在IE工具栏中选择“邮件”-> “阅读邮件”,出现Outlook界面,在Outlook中选择“工具”->“选项”->“邮件设置”-> “电子邮件帐户...”,出现“电子邮件帐户”窗口,选择“添加新电子邮件帐户”,单击“下一步”,选择“POP3(P)”,单击“下一步”,将会出现如下界面:

图1、电子邮件帐户

点击“测试帐户设置”,测试成功后,点击“下一步”,最后点击“完成”。即完成Outlook的设置。

(2) 启动Wireshark分组俘获器。

(3) 在Outlook工具栏点击“新建邮件”,写一封新邮件,完成后,点击“发送(S)”发送邮件。

(4) 停止分组俘获。

(5) 过滤分组:在“Filter...”中输入“(not arp) and (not icmp)”。如图2所示.

2、分析俘获的SMTP分组:

图2 Wireshark俘获的分组

在窗口中,初始化了一个从电子邮件客户端到mail.uzz.edu.cn端口25的TCP连接,这就是SMTP邮件服务器监听的众所周知端口。

服务器首先在新建立的连接中发送数据。首个SMTP分组写到“220 ESMTP”。这说明服务器已经做好准备接收邮件并能处理ESMTP。

电子邮件客户端在第二个SMTP分组中响应“EHLO teacher105”。你可以通过选择一个分组,然后再 “Analyze”菜单下选择 “Follow TCP stream”来查看控制通道的全部内容。

基于SMTP电子邮件报文传输包括三个主要的命令:MAIL FROM、RCPT TO及DATA。MAIL FROM指定电子邮件发送者的地址,RCPT TO指定了邮件接收者的地址,多个RCPT TO命令指定了多个接收者。最后DATA命令通知服务器将接下来的行当作邮件报文的主体。

DATA部分即包含了一系列首部(Subject、From、To、Content-Type等),又包括报文的实际文本。这些首部只是SMTP DATA的一部分。只有SMTP命令MAIL FROM和RCPT TO对邮件的传输方式有影响,DATA部分的首部对接收者显示的数据。

最后注意的是,在最后一个首部和电子邮件报文的第一行之间存在一个空行。这是RFC 2822中定义的邮件首部和邮件主体的分界。

3、俘获接收邮件协议POP3分组

网络协议分析实验指导书

谢 涛

宁夏理工电气信息工程学院

2012.8

目 录

实验一 Wireshark的安装与使用 ..................................................................................... 3 实验二 使用Wireshark分析以太网帧与ARP协议 ....................................................... 7 实验三 使用Wireshark分析IP协议 ............................................................................. 11 实验四 利用Wireshark分析ICMP ................................................................................ 19 实验五 使用Wireshark分析UDP协议 ........................................................................ 25 实验六 使用Wireshark分析TCP协议 ......................................................................... 29 实验七 利用Wireshark分析协议HTTP ....................................................................... 35 实验八 利用Wireshark分析DNS协议 ........................................................................ 40 实验九 使用Wireshark分析FTP协议(选作) ......................................................... 44 实验十 使用Wireshark分析SMTP和POP3协议(选作) ....................................... 48

实验一 Wireshark的安装与使用

一、实验目的

1、熟悉并掌握Wireshark的基本使用;

2、了解网络协议实体间进行交互以及报文交换的情况。 二、实验环境

与因特网连接的计算机,操作系统为Windows,安装有Wireshark、IE等软件。 三、预备知识

要深入理解网络协议,需要观察它们的工作过程并使用它们,即观察两个协议实体之间交换的报文序列,探究协议操作的细节,使协议实体执行某些动作,观察这些动作及其影响。这种观察可以在仿真环境下或在因特网这样的真实网络环境中完成。

观察正在运行的协议实体间交换报文的基本工具被称为分组嗅探器(packet sniffer),又称分组捕获器。顾名思义,分组嗅探器捕获(嗅探)你的计算机发送和接收的报文。

图1显示了一个分组嗅探器的结构。

图1

图1右边是计算机上正常运行的协议和应用程序(如:Web浏览器和FTP客户端)。分组嗅探器(虚线框中的部分)主要有两部分组成:第一是分组捕获器,其功能是捕获计算机发送和接收的每一个链路层帧的拷贝;第二个组成部分是分组分析器,其作用是分析并显示协议报文所有字段的内容(它能识别目前使用的各种网络协议)。

Wireshark是一种可以运行在Windows, UNIX, Linux等操作系统上的分组嗅探器,是一个开源免费软件,可以从http://www.wireshark.org下载。

运行Wireshark程序时,其图形用户界面如图2所示。最初,各窗口中并无数据显示。Wireshark的界面主要有五个组成部分:

命令和菜单 协议筛选框

捕获分组 列表

选定分组 首部明细 分组内容 左:十六进制 右:ASCII码

图2

? 命令菜单(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”开始进行分组捕获;

图3

4. 在运行分组捕获的同时,在浏览器地址栏中输入某个网页的URL,如:

http://www.nxist.com

5. 当完整的页面下载完成后,单击捕获对话框中的“stop”按钮,停止分组捕获。此时, Wireshark主窗口显示已捕获的你本次通信的所有协议报文;

6. 在协议筛选框中输入“http”,单击“apply”按钮,分组列表窗口将只显示HTTP协议报文。

7. 选择分组列表窗口中的第一条http报文,它是你的计算机发向服务器(www.nxist.com)的HTTP GET报文。当你选择该报文后,以太网帧、IP数据报、TCP报文段、以及HTTP报文首部信息都将显示在分组首部子窗口中,其结果如图4。

“回答这一问题”DNS服务器的名字和IP地址;(2)www.mit.edu 主机名字和IP地址。

第二条命令:nslookup –type=NS mit.edu

在这个例子中,我们提供了选项“-type=NS”,域为mit.edu。执行这条命令后,屏幕上显示了DNS服务器的名字和地址。接着下面是三个MIT DNS服务器,

每一个服务器是MIT校园里权威的DNS服务器。

第三条命令:nslookup www.aiit.or.kr bitsy.mit.edu

在这个例子中,我们请求返回bitsy.mit.edu DNS server 而不是默认的DNS服务器(uzzdns.edu.cn)。此例中,DNS 服务器bitsy.mit.edu提供主机www.aiit.or.kr 的

IP地址。 2、ipconfig

ipconfig用来显示TCP/IP 信息, 你的主机地址、DNS服务器地址,适配器等信息。如果你想看到所有关于你所在主机的信息,可在命令行键入:

ipconfig /all

ipconfig在管理主机所储存的DNS信息非常有用。 如果查看DNS缓存中的记录用命令:ipconfig /displaydns 要清空DNS缓存,用命令:ipconfig /flushdns

3、利用Wireshark捕获DNS信息

(1)利用ipconfig命令清空你的主机上的DNS缓存。 (2)启动浏览器,将浏览器的缓存清空。

(3)启动Wireshark分组俘获器,在显示过滤筛说明处输入

“ip.addr==your_IP_address”(如:ip.addr==202.202.210.104),过滤器(filter)将会删除所有目的地址和源地址都与指定IP地址不同的分组。

(4)开始Wireshark俘获。

(5)在浏览器的地址栏中输入:http://www.ietf.org (6)停止分组俘获。

(7)重复上面的实验,只是将命令替换为:nslookup –type=NS mit.edu (8)重复上面的实验,只是将命令替换为: nslookup www.aiit.or.kr bitsy.mit.edu 四、实验报告

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

(1)你的浏览器运行的是HTTP1.0,还是HTTP1.1?你所访问的服务器所运行的HTTP版本号是多少?

(2)你的浏览器向服务器指出它能接收何种语言版本的对象?

(3)你的计算机的IP地址是多少?服务器gaia.cs.umass.edu的IP地址是多少? (4)从服务器向你的浏览器返回的状态代码是多少?

(5)你从服务器上所获取的HTML文件的最后修改时间是多少? (6)返回到你的浏览器的内容以供多少字节?

(7)分析服务器响应报文的内容,服务器是否明确返回了文件的内容?如何获知? (8)服务器对第二个HTTP GET请求的响应中的HTTP状态代码是多少?服务器是否明确返回了文件的内容?请解释。

(9)与这个HTTP GET请求相对应的响应报文的状态代码和状态短语是什么? (10)你的浏览器一共发出了多少个HTTP GET请求?这些请求被发送到的目的地的IP地址是多少?

(11)对于浏览器发出的最初的HTTP GET请求,服务器的响应是什么(状态代码和状态短语)?

(12)当浏览器发出第二个HTTP GET请求时,在HTTP GET报文中包含了哪些新的字段?

(13)DNS查询报文的目的端口号是多少?DNS查询响应报文的源端口号是多少?

实验九 使用Wireshark分析FTP协议

一、实验目的

分析FTP协议 二、实验环境

与因特网连接的计算机,操作系统为Windows,安装有Wireshark、IE等软件。 三、实验步骤

HTTP和FTP都可以用来通过网络传输对象和文件,但它们的工作方式截然不同。HTTP侧重于传送立即浏览的文件或供暂时高速缓存于客户端的文件。HTTP还侧重于表达那些包含了用于规定文件格式的首部信息,以便让浏览器能正确解释内容。而

FTP却更侧重于专门进行数据传输,让用户自己去决定文件在本机上的存储时间和

如何处理数据。

FTP是一种有状态的协议。FTP客户端与服务器建立一个持续的会话,并通过这个会话发送多个请求。启动会话要输入用户名和密码,然而许多FTP服务器允许公开访问,即客户端可以使用匿名登录(anonymous)及随意设置的密码连接。

一旦建立连接,对FTP会话的操作类似命令行下的操作,用户在提示符下操作,并能浏览一些文件和目录。用户在浏览目录时,FTP服务器保持对用户目录位置的跟踪。用户还可以请求从服务器获取文件或向服务器存储文件,对这些请求的解释与当前工作的目录有关。

FTP总是为正在进行的控制通道维持一个TCP连接,然后建立一个独立的用于数据传输的TCP连接。控制通道通常建立在从客户端到FTP服务器端口21的连接,它用于描述每一个使用中的数据通道的属性,包括客户端或服务器是否启动传输,以及用什么IP地址和端口连接。

用RFC-Editor搜索功能找到定义FTP协议的RFC文档。搜索结果表明该RFC文档在URL ftp://ftp.rfc-editor.org/in-notes/rfc 959.txt 找到。如果你在浏览器窗口中输入以ftp://开头的URL,那么它将作为FTP客户端来获取想要的文件。

1、俘获FTP分组

(1) 启动Wireshark嗅探器。

(2) 浏览器地址栏中输入如下网址:ftp://ftp.rfc-editor.org

(3) 在停止分组俘获。如图1所示:

图1 俘获的FTP分组

2、查看FTP控制通道

(1)本地客户端首先为控制通道初始化了一个到服务器上FTP端口(端口21)的TCP连接。

(2)一旦控制通道建立,服务器首先通过该通道发送信息。服务器以域名ftp.isi.edu作为响应,表示已经为服务请求做好了准备。

(3)在获取数据之前,FTP客户端必须发送一个用户名到服务器。这一步由FTP命令USER来完成。FTP服务器响应一个报文,并通知客户端发送完整的电子邮件地址作为密码(但许多客户端代之发送一个标识客户端软件的字符串作为密码,一些FTP服务器检查密码是否是电子邮件格式,但大部分不会这么做。)

(4)选择TCP流中的一个分组,然后选择Analyze菜单下的“Follow TCP Stream‖ ,你就会看到控制通道的所有内容。(注意客户端命令带有深暗的背景,以与服务器响应区别)。如图2所示:

(2)关闭连接

当两端交换带有FIN标志的TCP报文段并且每一端都确认另一端发送的FIN包时,TCP连接将会关闭。FIN位字面上的意思是连接一方再也没有更多新的数据发送。然而,那些重传的数据会被传送,直到接收端确认所有的信息。在tcp_pcattcp_n1.cap中,通过分组13至16我们可以看到TCP连接被关闭。

2、TCP重传

当一个TCP发送端传输一个报文段的同时也设置了一个重传计时器。当确认到达时,这个计时器就自动取消。如果在数据的确认信息到达之前这个计时器超时,那么数据就会重传。

重传计时器能够自动灵活设置。最初TCP是基于初始的SYN和SYN ACK之间的时间来设置重传计时器的。它基于这个值多次设置重传计时器来避免不必要的重传。在整个TCP连接中,TCP都会注意每个报文段的发送和接到相应的确认所经历的时间。TCP在重传数据之前不会总是等待一个重传计算器超时。TCP也会把一系列重复确认的分组当作是数据丢失的征兆。

在Wireshark中选择file-〉open,打开文件pcattcp_retrans_t.cap和pcattcp_retrans_r.cap,对所俘获的分组进行分析如下:

(1) SACK选项协商

在上面的每次跟踪中,我们能观察建立连接的三次握手。在SYN分组中,发送端在TCP的首部选项中通过包括SACK permitted选项来希望使用TCP SACK。在SYN ACK包中接收端表示愿意使用SACK。这样双方都同意接收选择性确认信息。SACK选项如图2所示:

图2 SACK选项

在TCP SACK选项中,如果连接的一端接收了失序数据,它将使用选项区字段来发送关于失序数据起始和结束的信息。这样允许发送端仅仅重传丢失的数据。TCP接收端不能传递它们接收到的失序数据给处于等待状态的应用程序,因为它总是传递有序数据。因此,接收到的失序数据要么被丢掉,要么被存储起来。

接收端的存储空间是有限的,TCP发送端必须保存一份已发送的数据的副本,以防止数据需要重发。发送端必须保存数据直到它们收到数据的确认信息为止。

接收端通常会分配一个固定大小的缓冲区来存储这些失序数据和需要等待一个应用程序读取的数据。如果缓冲区空间不能容纳下更多数据,那么接收端只有将数据丢弃,即使它是成功到达的。接收端的通知窗口字段用来通知发送端还有多少空间可以用于输入数据。如果数据发送的速度快于应用程序处理数据的速度,接收端就会发送一些信息来告知发送端其接收窗口正在减小。在这个跟踪文件中,接收端通知窗口的大小是变化的,从16520个字节到17520个字节。

TCP发送端在发送之前有一个容纳数据的有限空间。然而,和接收端不同的是,发送端是限制自己的发送速率。如果缓冲区的空间满了,尝试写入更多数据的应用程序将被阻塞直到有更多的空间可以利用为止。

(2)分组的丢失与重传

用显示过滤器tcp.analysis.retransmission搜索重传。在pcattcp_retrans_t.cap中应用

该过滤器,在这个跟踪文件中,我们看见分组12是这9次重传的第一次。如图所示3:

图3 pcattcp_retrans_t.cap中9次重传

通过观察分组12的细节,我们发现序号是1001,我们发现分组5也有同样的序号。有趣的是,分组5是对1001到2460号字节的传输,而分组12却是对1001到2000号字节的重传。分组20是对2001到2460号字节的重传。

分组4是对1到1000号字节的传输,分组5是对1001到2460号字节的传输,分组7是对2461到3920号字节的传输。

我们已检查了发送端上获取的所有跟踪记录。我们从接收端的角度来看同一个连接,我们会发现有些不同。在pcattcp_retrans_r.cap中,我们发现1到1000号字节是在分组4里被传送的,而2461到3920号字节是在分组6(而不是分组7)中被传送的。在这个跟踪文件中,分组5是1到1000号字节的确认。我们没有看到1001到2460号字节的传输。但是他们确实被传输送了,只是在发送端和接收端的某个环节丢失了。

现在我们来看接收端是如何处理这些丢失字节的。在分组4达到以后,接收端会以确认号1001(分组5)作为响应。在分组6的2461到3920号字节达到之后,接收端仍然以确认号1001(分组7)作为响应。即使它接到的是附加数据,确认号仍然是它期望收到的下一个有序字节的序号。同样在含有3921到5381号字节的分组8到达之后,接

收端仍然以1001响应。

最后,1001到2000号字节被重传。在这两次跟踪中,我们都在分组12里看到这种情况。于是接收端增加它的确认号到2001。

最终2001到2460号字节被重传。在这次重传之后,接收端可以立即从确认字节2001跳到确认字节11221。 四、实验报告内容

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

客户服务器之间用于初始化TCP连接的TCP SYN报文段的序号(sequence

number)是多少?在该报文段中,是用什么来标识该报文段是SYN报文段的?

2、

服务器向客户端发送的SYNACK报文段序号是多少?该报文段中,

ACKnowledgement字段的值是多少?

3、

找出pcattcp_retrans_t.cap中所有在到达接收端之前丢失的分组。对于每个丢

失的报文段,找出重传分组(提示:找出第一个丢失的字节和重传它们的分组).

4、

当接收端发送一个TCP报文段来确认收到的数据时,这个报文段也可能丢

失。在pcattcp_retrans_t.cap和pcattcp_retrans_r.cap中存在这样的丢失吗?你是怎么得到这样的答案的?

实验七 利用Wireshark分析协议HTTP

一、实验目的

分析HTTP协议 二、实验环境

与因特网连接的计算机,操作系统为Windows,安装有Wireshark、IE等软件。 三、实验步骤

1、利用Wireshark俘获HTTP分组

(1)在进行跟踪之前,我们首先清空Web 浏览器的高速缓存来确保Web网页是从网络中获取的,而不是从高速缓冲中取得的。之后,还要在客户端清空DNS高速缓存,来确保Web服务器域名到IP地址的映射是从网络中请求。在WindowsXP机器上,可在命令提示行输入ipconfig/flushdns完成操作。

(2)启动Wireshrk 分组俘获器。

(3)在Web 浏览器中输入:http://www.google.com (4)停止分组俘获。

图1 利用Wireshark俘获的HTTP分组

在URL http://www.google.com中,www.google.com 是一个具体的web 服务器的域名。最前面有两个DNS分组。第一个分组是将域名www.google.com转换成为对应的IP 地址的请求,第二个分组包含了转换的结果。这个转换是必要的,因为网络层协议——IP协议,是通过点分十进制来表示因特网主机的,而不是通过www.google.com这样的域名。当输入URL http://www.google.com时,将要求Web服务器从主机www.google.com上请求数据,但首先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中机器的域名,本例中是www.google.com。这就允许了一个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版本来发送网页。同样,在响应分组中,它后面也跟随着一些首部。最后,被请求的实际数据被发送。

第一个Cache-control首部,用于描述是否将数据的副本存储或高速缓存起来,以便将来引用。一般个人的Web浏览器会高速缓存一些本机最近访问过的网页,随后对同一页面再次进行访问时,如果该网页仍存储于高速缓存中,则不再向服务器请求数据。类似地,在同一个网络中的计算机可以共享一些存在高速缓存中的页面,防止多个用户通过到其他网路的低速网路连接从网上获取相同的数据。这样的高速缓存被称为代理高速缓存(proxy cache)。在我们所俘获的分组中我们看到“Cache-control”首部值是“private”的。这表明服务器已经对这个用户产生了一个个性化的响应,而且可以被存储在本地的高速缓存中,但不是共享的高速缓存代理。

在HTTP请求中,Web服务器列出内容类型及可接受的内容编码。此例中Web服务器选择发送内容的类型是text/html且内容编码是gzip。这表明数据部分是压缩了的HTML。

服务器描述了一些关于自身的信息。此例中,Web服务器软件是Google自己的Web服务器软件。响应分组还用Content-Length首部描述了数据的长度。最后,服务器还在Date首部中列出了数据发送的日期和时间。

根据俘获窗口内容,回答“四、实验报告内容”中的1-6题。 3、HTTP条件GET/response交互 (1)启动浏览器,清空浏览器的缓存。

(2)启动Wireshark分组俘获器,开始Wireshark分组俘获。 (3)在浏览器地址栏中如下网址:

http://gaia.cs.umass.edu/wireshark-labs/HTTP-wireshark-file2.html 你的浏览器中将显示一个具有五行的非常简单的HTML文件。

(4)在你的浏览器中重新输入相同的URL或单击浏览器中的“刷新”按钮。 (5)停止Wireshark分组俘获,在显示过滤筛选说明处输入“http”,分组列表子窗口中将只显示所俘获到的HTTP报文。

根据操作回答“四、实验报告内容”中的7-10题。 4、获取长文件

(1)启动浏览器,将浏览器的缓存清空。

(2)启动Wireshark 分组俘获器,开始Wireshark分组俘获。 (3)在浏览器地址栏中输入如下网址:

http://gaia.cs.umass.edu/wireshark-labs/HTTP-wireshark-file3.html

浏览器将显示一个相当大的美国权力法案

(4)停止Wireshark分组俘获,在显示过滤筛选说明处输入“http”,分组列表子窗口中将只显示所俘获到的HTTP报文。

根据操作回答“四、实验报告内容”中的11-14题。 5、嵌有对象的HTML文档

(1)启动浏览器,将浏览器的缓存清空。

(2)启动Wireshark分组俘获器。开始Wireshark分组俘获。 (3)在浏览器地址栏中输入如下网址:

http://gaia.cs.umass.edu/wireshark-labs/HTTP-wireshark-file4.html 浏览器将显示一个具有两个图片的短HTTP文件。

(4)停止Wireshark分组俘获,在显示过滤筛选说明处输入“http”,分组列表子窗口中将只显示所俘获到的HTTP报文。

根据操作回答“四、实验报告内容”中的15-16题。 6、HTTP认证

(1)启动浏览器,将浏览器的缓存清空。

(2)启动Wireshark分组俘获器。开始Wireshark分组俘获。 (3)在浏览器地址栏中输入如下网址:

http://gaia.cs.umass.edu/wireshark-labs/protected_pages/HTTP-wireshark-file5.html 浏览器将显示一个HTTP文件,输入所需要的用户名和密码(用户名:wireshark-students,密码:network)。

(4)停止Wireshark分组俘获,在显示过滤筛选说明处输入“http”,分组列表子窗口中将只显示所俘获到的HTTP报文。

根据操作回答“四、实验报告内容”中的17-18题。 四、实验报告内容

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

(1)你的浏览器运行的是HTTP1.0,还是HTTP1.1?你所访问的服务器所运行的HTTP版本号是多少?

(2)你的浏览器向服务器指出它能接收何种语言版本的对象?

(3)你的计算机的IP地址是多少?服务器gaia.cs.umass.edu的IP地址是多少? (4)从服务器向你的浏览器返回的状态代码是多少?

(5)你从服务器上所获取的HTML文件的最后修改时间是多少? (6)返回到你的浏览器的内容以供多少字节?

(7)分析你的浏览器向服务器发出的第一个HTTP GET请求的内容,在该请求报文中,是否有一行是:IF-MODIFIED-SINCE?

(8)分析服务器响应报文的内容,服务器是否明确返回了文件的内容?如何获知? (9)分析你的浏览器向服务器发出的第二个“HTTP GET”请求,在该请求报文中是否有一行是:IF-MODIFIED-SINCE?如果有,在该首部行后面跟着的信息是什么?

(10)服务器对第二个HTTP GET请求的响应中的HTTP状态代码是多少?服务器是否明确返回了文件的内容?请解释。

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

(12)承载这一个HTTP响应报文一共需要多少个data-containing TCP报文段? (13)与这个HTTP GET请求相对应的响应报文的状态代码和状态短语是什么? (14)在被传送的数据中一共有多少个HTTP状态行与TCP-induced”continuation”有关?

(15)你的浏览器一共发出了多少个HTTP GET请求?这些请求被发送到的目的地的IP地址是多少?

(16)浏览器在下载这两个图片时,是串行下载还是并行下载?请解释。 (17)对于浏览器发出的最初的HTTP GET请求,服务器的响应是什么(状态代码和状态短语)?

(18)当浏览器发出第二个HTTP GET请求时,在HTTP GET报文中包含了哪些新的字段?

实验八 利用Wireshark分析DNS协议

一、实验目的

分析DNS协议 二、实验环境

与因特网连接的计算机,操作系统为Windows,安装有Wireshark、IE等软件。 三、实验步骤

nslookup工具允许运行该工具的主机向指定的DNS服务器查询某个DNS记录。如果没有指明DNS服务器,nslookup将把查询请求发向默认的DNS服务器。其命令的一般格式是:

nslookup –option1 –option2 host-to-find dns-server 1、打开命令提示符(Command Prompt),输入nslookup命令。

图中显示三条命令,第一条命令:nslookup www.mit.edu “提出一个问题” 即:“将主机www.mit.edu 的IP地址告诉我”。屏幕上出现了两条信息:(1)

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库ok网络协议分析实验指导书(Wireshark)在线全文阅读。

ok网络协议分析实验指导书(Wireshark).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/zonghe/241937.html(转载请注明文章来源)
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: