计算机网络实验指导书(附部分答案) 下载本文

计算机网络实验指导书

湖南工业大学

计算机与通信学院网络工程系

目 录

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

一、 二、 三、 四、 五、 一、 二、 三、 四、 一、 二、 三、 四、 一、 二、 三、 四、

实验目的 ........................................................................................................... 3 预备知识 ........................................................................................................... 3 实验环境 ........................................................................................................... 4 实验步骤 ........................................................................................................... 5 实验报告内容 ................................................................................................... 6 实验目的 ........................................................................................................... 7 实验环境 ........................................................................................................... 7 实验步骤 ........................................................................................................... 7 实验报告内容 ................................................................................................... 8 实验目的及任务 ............................................................................................... 9 实验环境 ........................................................................................................... 9 实验步骤 ........................................................................................................... 9 实验报告内容 ................................................................................................. 10 实验目的及任务 ............................................................................................. 11 实验环境 ......................................................................................................... 11 实验步骤 ......................................................................................................... 11 实验报告内容 ................................................................................................. 12

实验二 IP层协议分析 .......................................................................................... 7

实验三 TCP协议分析 .......................................................................................... 9

实验四 HTTP和DNS分析................................................................................ 11

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

一、 实验目的

1. 分析802.3协议 2. 熟悉以太网帧的格式 3. 熟悉ARP报文的格式

二、 预备知识

要深入理解网络协议,需要仔细观察协议实体之间交换的报文序列。为探究协议操作细节,可使协议实体执行某些动作,观察这些动作及其影响。这些任务可以在仿真环境下或在如因特网这样的真实网络环境中完成。观察在正在运行协议实体间交换报文的基本工具被称为分组嗅探器(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所示。最初,各窗口中并无数据显示。WireShark的界面主要有五个组成部分:

图2 WireShark的用户界面

(1)命令菜单(command menus):命令菜单位于窗口的最顶部,是标准的下拉式菜单。最常用菜单命令有两个:File、Capture。File菜单允许你保存捕获的分组数据或打开一个已被保存的捕获分组数据文件或退出WireShark程序。Capture菜单允许你开始捕获分组。 (2)捕获分组列表(listing of captured packets):按行显示已被捕获的分组内容,其中包括:WireShark赋予的分组序号、捕获时间、分组的源地址和目的地址、协议类型、分组中所包含的协议说明信息。单击某一列的列名,可以使分组按指定列进行排序。在该列表中,所显示的协议类型是发送或接收分组的最高层协议的类型。

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

(4)分组内容窗口(packet content):以ASCII码和十六进制两种格式显示被捕获帧的完整内容。

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

三、 实验环境

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

四、 实验步骤

1. WireShark的使用及捕获并分析以太帧

(1) 清空浏览器缓存(在IE窗口中,选择“工具/Internet选项/删除文件”命令)。 (2) 启动WireShark,开始分组捕获。 (3) 启动主机上的web浏览器。

(4) 启动WireShark。窗口中没有任何分组列表。

(5) 开始分组捕获:选择“capture”下拉菜单中的“Optios”命令,会出现如图1所示的

“WireShark: Capture Options”窗口,可以设置分组捕获的选项。

图1 WireShark的Capture Option

(6) 在实验中,可以使用窗口中显示的默认值。在“WireShark: Capture Options”窗口

的最上面有一个“interface”下拉菜单,其中显示计算机中所安装的网络接口(即网卡)。当计算机具有多个活动网卡(装有多块网卡,并且均正常工作)时,需要选择其 中一个用来发送或接收分组的网络接口(如某个有线接口)。

(7) 随后,单击“Start”开始进行分组捕获,所有由选定网卡发送和接收的分组都将被

捕获。

(8) 开始分组捕获后,会出现分组捕获统计窗口。该窗口统计显示各类已捕获分组的数

量。在该窗口中有一个“stop”按钮,可以停止分组的捕获。

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

www.http://www.32336.cn/。为显示该网页,浏览器需要连接www.http://www.32336.cn/的服务器,并与之交换HTTP消息,以下载该网页。包含这些HTTP消息的以太网帧(Frame)将被WireShark

捕获。

WireShark主窗口显示已捕获的你的计算机与其他网络实体交换的所有协议报文,其中一部分就是与www.http://www.32336.cn/服务器交换的HTTP消息。

(10) 在显示筛选编辑框中输入“http”,单击“apply”,分组列表窗口将只显示HTTP消息。 (11) 选择分组列表窗口中的第一条HTTP消息。它应该是你的计算机发向

www.http://www.32336.cn/服务器的HTTP GET(HTTP定义的用于获取/查询资源信息的方法)消息。

(12) 选择“Analyze->Enabled Protocols”,取消对IP复选框的选择,单击OK。当你选择该

消息后,以太网帧、IP数据报、TCP报文段、以及HTTP消息首部信息都将显示在分组首部子窗口中。单击分组首部详细信息子窗口中向右和向下箭头,可以最小化帧、以太网、IP、TCP信息显示量,可以最大化HTTP协议相关信息 的显示量。

(13) 选择包含HTTP GET消息的以太网帧,在分组详细信息窗口中,展开Ethernet II

部分。根据操作,回答“五、实验报告内容”中的1-4题 (14) 选择包含HTTP 响应消息第一个字节的以太网帧。 2. ARP

利用MS-DOS命令:arp -a查看主机上ARP缓存的内容。利用MS-DOS命令:arp -d * 以清除主机中ARP缓存的内容。

五、 实验报告内容

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

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

2. 目标MAC地址是www.http://www.32336.cn/服务器的MAC地址吗?如果不是,该地址是什么设

备的MAC地址?

不是(

是 的Mac 3. 给出Frame头部Type字段(2字节)的十六进制值。

4. 在包含“HTTP GET”的以太网帧中,字符“G”的位置(是第几个字节,假设Frame头部第

一个字节的顺序为1)?

第55个

实验二 IP层协议分析

一、 实验目的

1. 了解ICMP、IP数据包格式;

2. 理解ARP命令、PING命令与ARP、ICMP协议的关系; 3. 熟悉ARP和ICMP协议包格式; 4. 了解ARP、ICMP会话过程。

二、 实验环境

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

三、 实验步骤

(说明:以下所截界面上的数据与你电脑上的数据会有所不同) 1. 首先进入MS DOS字符界面

2. 在MS DOS下使用ARP –d *命令清除自己电脑中MAC和IP映射表。见图1所示

图1 ARP及PING命令运行结果

3. 回到windows图形界面下 4. 启动WireShark,开始捕获分组。

5. 在MS DOS下键入Ping www.http://www.32336.cn/,见图1所示。 6. 回到WireShark并停止抓包 。

7. 查找到ARP请求和应答数据包,回答实验报告内容中的1-2题

8. 查到PING命令执行时,产生的ICMP请求和应答报文,回答实验报告内容中的3题

四、 实验报告内容

1. 什么是ARP?ARP与IP的关系。

ARP(Address Resolution Protocol)地址解析协议 /根据目的主机的IP地址,获得其MAC地址。

2. ARP请求和应答数据包的数据部分的内容是什么?代表什么意思? 3. 什么是ICMP?ICMP与IP的关系。

ICMP是“Internet Control Message Protocol”(Internet控制报文协议)的缩写。它是TCP/IP协议族的一个子协议,用于在IP主机、路由器之间传递控制消息。

实验三 TCP协议分析

一、 实验目的及任务

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

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

二、 实验环境

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

三、 实验步骤

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

(2) 启动浏览器,打开http:// www.sina.com.cn/ 网页, (3) 停止分组捕获。 2. 浏览追踪信息

(1) 在显示筛选规则编辑框中输入“tcp”,可以看到在本地主机和服务器之间传输的一

系列tcp和HTTP消息,你应该能看到包含SYN Segment的三次握手。也可以看到有主机向服务器发送的一个HTTP GET消息和一系列的“http continuation”报文。 (2) 根据操作回答“四、实验报告内容”中的1-2题。 3. TCP基础

根据操作回答“四、实验报告内容”中的3-10题 4. TCP拥塞控制

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

四、 实验报告内容

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

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

少? 主机: 端口号:

的端口号是多少? IP地址:端口号:

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

多少?在该报文段中,是用什么来标示该报文段是SYN报文段的? 报文段的序号为0;用seq来标示报文段

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

字段的值是多少?www.sina.com.cn服务器是如何决定此值的?在该报文段中,是用什么来标识该报文段是SYN ACK报文段的?

来标识报文段的

5. 包含HTTP GET消息的TCP报文段的序号是多少?

1 第 1 题 截 图

2. www.sina.com.cn服务器的IP地址是多少?对这一连接,它用来发送和接收TCP报文

第 2 题 截 图

参考资料:

http://wenku.http://www.32336.cn//link?url=b2CJFiX3x-7FUST1EkD1s1FlokJ2gDWHguUmWaLCbCQSMQR0RXpIYVOuJVjUxSfJelDXeN2C0vpwAVYS0Rfck94RJa3Cm9-Ea7MIRQzG9TS

实验四 HTTP和DNS分析

一、 实验目的及任务

1. 熟悉并掌握WireShark的基本操作,了解网络协议实体间的交互以及报文交换。 2. 分析HTTP和DNS协议

二、 实验环境

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

三、 实验步骤

1. HTTP分析

(1) 启动WireShark,开始分组捕获。

(2) 启动主机上的web浏览器,在浏览器的地址栏中输入: www.http://www.32336.cn/;浏览器

将显示百度搜索网页。

(3) 在窗口的显示过滤规则编辑框处输入“http”,分组列表子窗口中将只显示所捕获到

的HTTP消息。选择分组列表窗口中的第一条http报文。它应该是你的计算机发向www.http://www.32336.cn/服务器的HTTP GET报文。 (4) 停止分组捕获。

根据捕获窗口内容,回答“实验报告内容”中的1-4题。 2. 跟踪并分析DNS

nslookup工具允许主机向指定的DNS服务器查询某个DNS记录。如果没有指明DNS服务器,nslookup将把查询请求发向默认的DNS服务器。

nslookup的一般格式是: nslookup –option1 –option2 host-to-find dns-server

ipconfig命令用来显示你当前的TCP/IP信息,包括:你的地址、DNS服务器的地址、适配器的类型等信息。如果,要显示与主机相关的信息用命令: ipconfig/all

如果查看DNS缓存中的记录用命令: ipconfig/displaydns

要清空DNS缓存,用命令: ipconfig /flushdns

运行以上命令需要进入MSDOS环境。(开始菜单->运行->输入命令“cmd”)

(1) 利用ipconfig命令清空主机上的DNS缓存。启动浏览器,并将浏览器的缓存清空。 (2) 启动WireShark,在显示过滤筛选规则编辑框处输入: “ip.addr = = your_IP_address”(如:ip.addr= =10.17.7.23)

过滤器将会删除所有目的地址和源地址与指定IP地址都不同的分组。 (3) 开始WireShark分组捕获。

(4) 在浏览器的地址栏中输入:www.http://www.32336.cn/后,回车。 (5) 停止分组捕获。 (6) 开始WireShark分组捕获。

(7) www.sin.com上进行nslookup(即执行命令:nslookup www.sin.com)。 (8) 停止分组捕获。

四、 实验报告内容

1. HTTP分析

(1) 从发出HTTP GET消息到接收到HTTP OK响应报文共需要多长时间?(在默认的情

况下,分组列表窗口中Time列的值是从WireShark开始追踪到分组被捕获时总的时间, 以秒为单位。若要按time-of-day格式显示Time列的值,需选择View下拉菜单,再选择Time Display Format,然后选择Time-of-day。)

时间是1.566162000 秒

(2) 写出第3步所显示的HTTP消息头部行信息并说明其含义?

(3) 你的浏览器使用的是HTTP1.0,还是HTTP1.1?你所访问的Web服务器所使用HTTP

协议的版本号是多少?

(4) 从服务器向你的浏览器返回response消息的状态代码是多少?表示什么意思? 304;表示重定向,如果完成请求还必须采取进一步的行动 2. 跟踪并分析DNS

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

TCP的?

(2) DNS查询消息的目的端口是多少?DNS查询响应消息的端口号是多少? (3) DNS查询消息发送的目的地址IP是多少?利用ipconfig命令(ipconfig/all)查看

你主机的本地DNS服务器的IP地址。这两个地址相同吗?

(4) 考虑一下你的主机随后发送TCP SYN Segment,包含SYN Segment的IP分组头部

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