1、实验三 数据链路层
一、 实验目的
1. 熟悉网络协议分析器Wireshark的使用
2. 掌握以太网帧的结构
二、 实验设备
1. 集线器、交换机各1台
2. PC机2~3台
三、 预备知识
1. Wireshark简介
Wireshark(原名Ethereal)是一个开放源码的网络分析系统,也是是目前最好的开放源码的网络协议分析器,支持Unix、windows等多种平台。它主要是通过侦听网络中的数据来实现分析网络协议、网络故障、网络安全等功能。它使用的一般步骤是:
(1) 设置好捕捉NIC和过滤器后开始捕捉网络数据包;
(2) 捕捉结束后设置好显示过滤器开始分析数据
2、
附:Wireshark中捕捉过滤器和显示过滤器的设置比较
功能
捕捉过滤器表达式
显示过滤器表达式
提取MAC地址为00:11:25:e8:64:ea 的设备通信的所有流量
ether host 00:11:25:e8:64:ea
eth.addr==00:11:25:e8:64:ea
提取IP地址为172.17.1.10 的设备通信的所有流量
host 172.17.1.10
ip.addr==172.17.1.10
提取所有设备WEB浏览的所有数据包
tcp port 80
tcp.port== 80
提取IP地址为172.17.1.10设备中除http以外
3、的所有数据包
host 172.17.1.10 and not tcp port 80
ip.addr==172.17.1.10 && tcp.port!=80
2. Ethernet帧结构有IEEE802.3标准和Ethernet II规范两种,这里主要讨论Ethernet II标准。下图为帧结构:
注意:
n 第三个字段中,如果是EthernetII帧,该段表示封装的上层协议类型;而如果是IEEE802.3的帧,则表示LLC数据(LLC帧+填充)的长度。区分方法:当值小于0600H时,代表数据字段的字节数; 否则代表协议类型,例如:0800H代表IP协议,0806H代表
4、ARP协议。
n 由于CSMA/CD协议要求帧长度最小不能低于64字节,则当IP数据报过小时,发送站的MAC子层就会自动填0代码到PAD区域中。
n CRC校验一般由网卡硬件自动完成,无需操作系统或应用程序处理。
四、 实验内容
1. 用Wireshark捕捉在本机中一次登录Web邮箱过程产生的流量,初步了解其使用方法:
1) 同组计算机用交换机连接组网;
2) 运行Wireshark,打开菜单命令Capture->Options,将Interfaces设为本机NIC,Capture filter不作设置(注:暂不要按Start按钮);
3) 用IE打开本人的一个Web邮箱,依
5、次输入帐号和密码(注:暂不要按登录确定按钮);
4) 切换到Wireshark的窗口,按Start按钮开始捕捉数据,然后再切换至邮箱登录窗口按登录确定按钮;
5) 切换到Wireshark的窗口,按Stop按钮;
6) 在Filter编辑栏中输入http,按下Apply按钮;
7) 在包内容窗口中观察过滤后的前几个http数据包里的内容,找出在邮箱登录窗口输入的帐号、密码对应的相关文本。(注:可以利用Edit--> Find Packet -->Find By:String命令来帮助查找相关文本 )
2. 用Wireshark捕捉本小组中其它计算机产生的流量:
1) 使用本组中两
6、台计算机PCA和PCB,它们用集线器连接组网;
2) 在PCA中运行Wireshark,打开菜单命令Capture->Options,将Interfaces设为本机NIC,Capture filter中输入ether host MACofPCB (PCB的MAC地址);
3) 用PCB登录一个网站,与此同时用PCA捕捉PCB产生的流量
4) 捕捉200个左右的帧后,停止捕捉;
5) 运行命令Statistics ->Summary,观察统计的概要信息;
6) 将捕捉到的数据保存到包文件pcb.cap中。
3. 用Wireshark分析以太网帧结构。
1) 打开实验内容2中保存的包
7、文件pcb.cap;
2) 分析其中任意两不同协议(protocol)的帧,将其相应字段值填入下表:
字段
帧1
帧2
协议
http
tcp
目的MAC地址
00:1f:e2:09:ca:e6
00:d0:f8:f3:7f:4e
源MAC地址
00:d0:f8:f3:7f:4e
00:1f:e2:09:ca:e6
类型
08 00
08 00
帧的总长度
378
60
3) 分别选中这两个帧,并标记(使用右键菜单中的Mark Packet命令),将它们保存到文件pcb2.cap中(在File->Save as窗口的packet range中指定要保存帧范围)。(注:文件pcb2.cap连同实验报告一同上交)
4. 思考题:
(1) 帧的有效长度(不包括前同步码)为64~1518字节,那么用Wireshark捕捉的帧的长度是否也在64~1518字节范围内?为什么?
不是,因为Wireshark不计算帧尾部的4位的CRC校验码。CRC校验一般由网卡硬件自动完成,无需操作系统或应用程序处理。
(2) 将实验内容2 步骤1)中的集线器改成交换机,PCA是否能捕捉到PCB中的流量?为什么?
无法捕捉,因为交换机并不是广播传输而是定点传播,其他机子无法获取信息。所以PCA无法捕捉PCB。