计算机网络实验指导书
------网络与通信教研室
枣庄学院信息科学与工程学院
2011.12
目 录
实验一 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.uzz.edu.cn
5. 当完整的页面下载完成后,单击捕获对话框中的“stop”按钮,停止分组捕获。
此时, Wireshark 主窗口显示已捕获的你本次通信的所有协议报文;
6. 在协议筛选框中输入“http”,单击“apply”按钮,分组列表窗口将只显示 HTTP
协议报文。
7. 选 择 分 组 列 表 窗 口 中 的 第 一 条 http 报 文 , 它 是 你 的 计 算 机 发 向 服 务 器
(www.uzz.edu.cn)的 HTTP GET 报文。当你选择该报文后,以太网帧、IP 数据报、TCP
报文段、以及 HTTP 报文首部信息都将显示在分组首部子窗口中,其结果如图 4。
图 4
五、 实验报告内容
在实验基础上,回答以下问题:
(1) 列出在第 5 步中分组列表子窗口所显示的所有协议类型;
(2) 从发出 HTTP GET 报文到接收到对应的 HTTP OK 响应报文共需要多长时间?
(分组列表窗口中 Time 列的值是从 Wireshark 开始追踪到分组被捕获的总的时间数,以
秒为单位)
(3) 你主机的 IP 地址是什么?你访问的服务器的 IP 地址是什么?
实验二 使用 Wireshark 分析以太网帧与 ARP 协议
一、实验目的
分析以太网帧,MAC 地址和 ARP 协议
二、实验环境
与因特网连接的计算机网络系统;主机操作系统为 windows;使用 Wireshark、IE
等软件。
三、实验步骤:
IP 地址用于标识因特网上每台主机,而端口号则用于区别在同一台主机上运行的不
同网络应用程序。在链路层,有介质访问控制(Media Access Control,MAC)地址。在
局域网中,每个网络设备必须有唯一的 MAC 地址。设备监听共享通信介质以获取目标
MAC 地址与自己相匹配的分组。
Wireshark 能 把 MAC 地 址 的 组 织 标 识 转 化 为 代 表 生 产 商 的 字 符 串 , 例 如 ,
00:06:5b:e3:4d:1a 也能以 Dell:e3:4d:1a 显示,因为组织唯一标识符 00:06:5b 属于 Dell。
地址 ff:ff:ff:ff:ff:ff 是一个特殊的 MAC 地址,意味着数据应该广播到局域网的所有设备。
在因特网上,IP 地址用于主机间通信,无论它们是否属于同一局域网。同一局域网
间主机间数据传输前,发送方首先要把目的 IP 地址转换成对应的 MAC 地址。这通过地
址解析协议 ARP 实现。每台主机以 ARP 高速缓存形式维护一张已知 IP 分组就放在链路
层帧的数据部分,而帧的目的地址将被设置为 ARP 高速缓存中找到的 MAC 地址。如果
没有发现 IP 地址的转换项,那么本机将广播一个报文,要求具有此 IP 地址的主机用它
的 MAC 地址作出响应。具有该 IP 地址的主机直接应答请求方,并且把新的映射项填入
ARP 高速缓存。
发送分组到本地网外的主机,需要跨越一组独立的本地网,这些本地网通过称为网
关或路由器的中间机器连接。网关有多个网络接口卡,用它们同时连接多个本地网。最
初的发送者或源主机直接通过本地网发送数据到本地网关,网关转发数据报到其它网
关,直到最后到达目的主机所在的本地网的网关。
1、俘获和分析以太网帧
(1)选择 工具->Internet 选项->删除文件
(2)启动 Wireshark 分组嗅探器
(3)在浏览器地址栏中输入如下网址:
http://gaia.cs.umass.edu/wireshark-labs 会出现美国权利法案。
(4)停止分组俘获。在俘获分组列表中(listing of captured packets)中找到 HTTP
GET 信息和响应信息,如图 1 所示。(如果你无法俘获此分组,在 Wireshark 下打开文
件名为 ethernet--ethereal-trace-1 的文件进行学习)。
HTTP GET 信息被封装在 TCP 分组中,TCP 分组又被封装在 IP 数据报中,IP 数据
报又被封装在以太网帧中)。在分组明细窗口中展开 Ethernet II 信息(packet details
window)。回答下面的问题:
1、你所在的主机 48-bit Ethernet 地址是多少?
2、Ethernet 帧中目的地址是多少?这个目的地址是 gaia.cs.umass.edu 的 Ethernet 地
址吗?
图1 HTTP GET信息和响应信息
2、分析地址 ARP 协议
(1)ARP Caching