实
验
报
告
实验名称
以太网帧分层结构分析
队
别
姓
名
学
号
实验日期
2015.3.15
实验报告要求:
1.
实验目的
2.
实验要求
3.
实验环境
4.
实验作业
5.
问题及解决
6.
思考问题
7.
实验体会
【实验目的】
1
.复习
Wireshark
抓包工具的使用及数据包分析方法。
2
.通过分析以太网帧了解以太网数据包传输原理。
【实验要求】
用
Wireshark1.4.9
截包,分析数据包。
观察以太网帧,
Ping
同学的
IP
地址,得到自己和同学的
mac
地址。
观察以太网广播地址,观察
ARP
请求的帧中目标
mac
地址的格式。
用
ping-l
指定数据包长度,观察最小帧长和最大帧长。
观察封装
IP
和
ARP
的帧中的类型字段。
【实验环境】
用以太网交换机连接起来的
windows 7
操作系统的计算机,通过
802.1x
方式接入
Internet
。
【实验中出现问题及解决方法】
1
.在使用命令行“
ping
-l
0
IP
”观察最小帧长时抓到了长度为
42
字节的帧,与理论上最小帧长
64
字节相差甚远。通过询问教员和简单的分析,知道了缺少字节的原因是当
Wireshark
抓到这个
ping
请求
包时,物理层还没有将填充(
Trailer
)字符加到数据段后面,也没有算出最后
4
字节的校验和序列,导致
出现最小
42
字节的“半成品”帧。可以通过网卡的设置将这个过程提前。
2
.
在做
ping
同学主机的实验中,
发现抓到的所有
ping
请求帧中
IP
数据部分的头校验和都是错误的。
原本以为错误的原因与上一个问题有关,即校验和错误是因为物理层还没有将填充字符加到数据段后面。
但是这个想法很快被证明是错误的,
因为在观察最大帧长时,
不需要填充字符的帧也有同样的错误。
一个
有趣的现象是,封装在更里层的
ICMP
数据包的校验和都是正确的。这就表明
IP
层的头校验和错误并没
有影响正常通信。进一步观察发现,这些出错的头校验和的值都是
0x0000
,这显然不是偶然的错误。虽
然目前还没有得到权威的答案,但是可以推测,可能是这一项校验实际上并没有被启用。作为中间层的
IP
头的意义是承上启下,
而校验的工作在更需要的上层的
IMCP
包和下层
MAC
头中都有,
因此没有必要
多此一举。
【思考问题】
1
.为什么可以
ping
到同宿舍(连接在同一个交换机上)的主机而
ping
不到隔壁宿舍的主机?
通常情况下,如果配置正确,设备都连接着同一个网络(互联网),而且没有防火墙等阻拦,就可以
正常
ping
到同一网络中的任何主机。在第一次实验中,我们曾成功地
ping
到了
baidu.com
的
IP
。
在
ping
其他宿舍的
IP
时需要通过宿舍的交换机将
ping
请求先转发给楼层交换机,
再由楼层交换机转
发给目标
IP
所在的宿舍交换机。分析无法
ping
到隔壁宿舍主机的原因,很可能是楼层交换机设置了禁止
内部
ping
的防火墙,阻止了本楼层交换机地址段内的主机相互
ping
对方。而同宿舍之所以可以相互
ping
到,是因为
ping
请求没有经过楼层交换机,直接由宿舍交换机转发给了目标
IP
主机。
2
.什么是
ARP
攻击?
让我们继续分析
4.1 ARP
原理,
A
得到
ARP
应答后,
将
B
的
MAC
地址放入本机缓存。
但是本机
MAC
缓存是有生存期的,生存期结束后,将再次重复上面的过程。(类似与我们所学的学习网桥)。
然而,
ARP
协议并不只在发送了
ARP
请求才接收
ARP
应答。当计算机接收到
ARP
应答数据包的时
候,就会对本地的
ARP
缓存进行更新,将应答中的
IP
和
MAC
地址存储在
ARP
缓存中。
这时,我们假设局域网中的某台机器
C
冒充
B
向
A
发送一个自己伪造的
ARP
应答,即
IP
地址为
B