2直接连接的网络与VLAN划分-2.2-2.3【实验】【计算机网络】
- 前言
- 推荐
- 2直接连接的网络与VLAN划分
- 2.1共享式以太网和交换式以太网
- 2.2交换机MAC地址表建立与帧转发
- 实验目的
- 实验内容及实验环境
- 实验原理
- 交换机通过逆向学习帧的源地址,构建MAC地址表;
- 交换机中MAC地址的构建
- 交换机对于入境帧的转发处理:
- 交换机MAC地址表构建与帧转发原理
- 实验过程
- 搭建实验环境
- 训练
- 泛洪未知帧
- 转发已知帧
- 连接集线器与交换机
- 泛洪广播帧
- 手工配置
- 配置错误对转发的影响
- 小结
- 2.2.1实验章节测验
- 最后
前言
2023-5-10 16:22:03
以下内容源自《【实验】【计算机网络】》
仅供学习交流使用
推荐
2直接连接的网络与VLAN划分-2.1【实验】【计算机网络】
2直接连接的网络与VLAN划分
2.1共享式以太网和交换式以太网
2直接连接的网络与VLAN划分-2.1【实验】【计算机网络】
2.2交换机MAC地址表建立与帧转发
实验目的
1.理解交换机通过逆向学习算法建立MAC地址表的过程。
2.能根据站点通信过程正确给出交换机当前的MAC地址表内容;
3.了解动态表项和静态表项的区别,能够正确添加静态表项。
4.理解交换机对入境帧的处理过程。
5.能够根据实际数据传输场景,准确判断交换机对入境帧的转发处理
实验内容及实验环境
1.使用1台交换机,1台集线器,5台计算机搭建网络拓扑环境;
2.清空交换机的MAC地址表,构造站点间的通信,观察拓扑中各台交换机的MAC地址表的构建过程;
3.构造不同的数据传输场景,分析交换机对数据帧的处理过程;
4.添加静态表项并验证其有效性;
5.对比静态表项和动态表项的优先级。
实验原理
交换机通过逆向学习帧的源地址,构建MAC地址表;
交换机中MAC地址的构建
下面我们首先来学习交换机如何构建MAC地址表。图中有一台交换机连接了四台主机交换机。在刚启动的时候,MAC地址表是空的,他要通过一个自动的逆向学习园地址的过程来不断的完善这张表。
假设现在A向D发出了一个数据帧,这个数据帧的源MAC地址是Mac-A,目标地址是MAC_D。这个帧由F0/1接口进入交换机后。
交换机:首先要逆向学习园地址,将源地址MAC_A与这个帧的进入端口关联起来,记录在MAC地址表中,这样交换机就知道了主机A所处于的位置。
与此同时呢,我们要记录这个帧的到达时间。并且,设定一个老化的计时器老化计时器,默认从三百秒开始倒计时;计数到零的时候,这个表象呢就要被清除掉。
为什么要定时删除学习到的表项?
假设A发生了故障或者A的连接端口发生了变化,那么交换机刚才学习到的这条表项就失效了,如果没有定时清除这条表项,其他主机给A给A发送的帧依然会被交换机从FO/1端口转发出去。
因此设定老化时间可以…。注意MAC地址表空间满了以后就无法学习新的MAC地址了,设定老化时间的机制有助于MAC地址表空间的及时回收。
现在MAC地址表当中已经有了MAC地址a的相关的这个表项,那么交换机是如何学习到BCD的MAC地址的呢?
不难看出,主机只要向外发送数据,其MAC地址就会被交换机学习到。
比如说主机B向外发送数据帧,交换机收到该帧之后,会将该帧的源地址Mac_B与该帧的入境端口F0/2关联起来,登记在表中。
C向外发送数据时,交换机会将该帧的源地址MAC_C与它的数据端口F0/3关联起来,登记在表中。
同理,D向外发送数据时,交换机会将该帧的源地址MAC_D与该帧的入境端口F0/4关联起来也在表中。
交换机就是通过这样一个源地址自学习的过程,不断的去完善MAC地址表。那么通过查看交换机的MAC地址表,我们能够直观地看出来哪一个设备连接在交换机的哪个接口上。建立好了这个MAC地址表,它的最重要的作用就是作为交换机以后进行数据帧转发的依据。
对于我们图中的这个网络拓扑而言,这个交换机的mac地址表已经完善了。
那么,这个时候如果A向外发出了数据帧,那么交换机还是要去自学习该帧的源地址,但是它发现,这个源地址MAC_A已经在表中了;
这个时候交换机该怎么做呢?他会更新这个真的到达时间;并且,将这个表项的老化时间重置为最大值三百秒。
交换机通过逆向学习真的原地址获知主机所处的位置,构建MAC地址表交换机会依据MAC地址表来完成对入境数据帧的转发处理。
下面我们将详细的为大家讲解交换机对数据帧的三种处理方式,转发泛红过滤。
交换机对于入境帧的转发处理:
- 转发(forwarding)
- 泛洪(flooding)
- 过滤(filtering)
首先我们来看一个交换机转发单播帧的例子,假设A向D发出了一个数据帧,
这个数据帧的目的地址是一个单站地址,我们称这样的数据帧为单播帧,
这个帧用F0/1接口进入了交换机。
交换机首先要做的就是逆向学习源地址。那么这个源地址已经在表中了,那么它会更新这个真的到达时间,并且呢将老化时间重置为最大值。
接下来交换机要根据这个帧的目的地址MAC_D去查表。我们可以找到MAC_D的这条表象,那么它对应的端口呢是F0/4。
这个时候,交换机会将这个帧从F0/4端口转出,那么这个数据帧就到达了主机D。
我们再来看交换机泛红广播帧的例子。假设A发出了一个广播帧。
什么是广播帧?就是帧的目的地址是全一地址,我们知道MAC地址是48个比特位,那么这48个比特位全部为1,那么这样的地址,称为广播地址。如果真的目的地址为广播地址,那么这个针呢被称为广播帧。
这个广播帧由F0/1接口进入交换机之后,交换机首先要学习帧的源地址,这个过程我们不再重复的讲解。
接下来,因为它是一个广播帧,所以交换机会直接地将其呢泛洪到除了入口以外的所有其他出口,也就是BCD都会收到这样一个广播帧。
交换机对广播帧直接执行泛红的操作。
除此以外,交换机对未知单播帧也会进行泛洪。
那什么是未知单播帧呢?就是指针的目的地址在MAC地址表中查不到相关的匹配,像这样的针我们称之为未知单播帧。
下面我们就举一个例子。
假设在这个表中呢MAC_B这个条目,它的老化时间到期了指的是老化时间从最大值三百秒倒计时为零,那么这个表象呢,就应该被清除掉。
假设MAC_B这个表项刚被删除之后,A就向B发出了一个数据帧,这个数据帧用F0/1进入了交换机。
首先应该完成的是原地址的逆向学习过程,然后呢,就要根据这个帧的目的地址来查看MAC地址表,查找相关的匹配。
但是表中呢,已经不存在MAC_B的这个表象了,所以没有查到这个时候交换机会将这个帧泛洪出去,也就是除了入境端口以外的所有其他端口各送一份。
那么这样的一个操作,它的好处是什么呢?保证了B1定收到了这个数据帧。
但是它的缺点是什么呢?使得无关的两个站点也收到了这个数据帧对他们来说是一种干扰,那么从安全的角度来考虑,那么C和D可以轻松的看到AB之间转发的这个数据帧,这是存在安全隐患的。
最后我们来学习一下交换机是如何过滤数据帧的。
首先我们将拓扑进行了一些改动。交换机的右侧F0/3接口出来连接集线器,由集线器连接主机C和D。
假设MAC地址表示完善的。这个时候,C向D发出了一个数据帧,这个数据帧由集线器直接就可以转发到的。
但是由于集线器是广播式的,转发会有一个副本呢。通过F0/3接口。
进入交换机交换机:
首先,完成的就是逆向学习园地址的过程。
然后,根据该帧的目的地址去查看MAC地址表,找到相关的表项。这个匹配项告知交换机,这个帧应该从F 0-3接口转出,
但是交换机发现帧的入境口和他的出境口是相等的。这种情况下交换机不会转发该帧,而是将这个针直接丢弃。
那么丢弃的这个操作使得这个帧,不会通过交换机转发到无关的网段去。
那么对于其他网段而言,实现了数据帧的过滤。
下面我们对之前讲过的原理性内容,进行一个简单的小结。
交换机MAC地址表构建与帧转发原理
逆向学习源地址
- 根据帧的源地址在MAC地址表查找匹配表项:
- 如果没有,则增加一个新表项(源地址、入境端口、帧到达时间)
- 如果有,则更新原表项的帧到达时间,重置老化时间。
对入境帧的转发处理过程(三选一)
- 根据帧的目的地址在MAC地址表查找匹配表项:
- 如果有,且入境端口≠出境端口,则从对应的出境端口转发帧;
- 如果有,且入境端口=出境端口,则丢弃帧(即过滤帧);
- 如果没有,则向除入境端口以外的其它所有端口泛洪帧。
实验原理讲到这里,下面演示实验过程。
实验过程
交换机使用PT-Switch而不是2096
PT-Switch的端口不一样,自己对应匹配
或者在手工配置中重新用PT-Switch来搭建网络拓扑
之前使用2096做实验并没有修改
搭建实验环境
选择一台交换机、三台PC:使用直通线将交换机与PC连接
选择一台集线器、两台PC:使用直通线将集线器与PC连接
交换机与集线器先不要连接
给五台PC配置IP地址:
PC1:192.168.1.1
PC2:192.168.1.2
PC3:192.168.1.3
PC4:192.168.1.4
PC5:192.168.1.5
为每台PC标注MAC地址
在Config:FE0:MAC地址找到
这样,在实验中,方便我们通过MAC地址找到具体主机。
现在,我们已经网络拓扑中的设备和链接的位置调整到位了
并且进行了相关的标注:PC名称与MAC地址
训练
下面,进行训练,避免ARP请求使得情况复杂。
PC1给PC3发送简单数据包
PC1给PC2发送简单数据包
PC2给PC3发送简单数据包
PC4给PC5发送简单数据包
然后,清除当前场景,切换到Simulation模式
在事件列表过滤器中选择ICMP
对实验环境进行初始化:
因为之前对训练,会对交换机的MAC地址表做出改变
点击交换机,进入CLI选项卡:
Switch>enable
Switch#show mac-address-table
Mac Address Table
-------------------------------------------
Vlan Mac Address Type Ports
---- ----------- -------- -----
1 0001.439a.461a DYNAMIC Fa0/2
1 0060.5c83.34e6 DYNAMIC Fa0/3
1 00d0.ff0c.173d DYNAMIC Fa0/1
Switch#clear mac-address-table
Switch#show mac-address-table
Mac Address Table
-------------------------------------------
Vlan Mac Address Type Ports
---- ----------- -------- -----
Switch#
为了,清楚:
点击Inspect,查看交换机的MAC Table
泛洪未知帧
现在开始演示:
PC1给PC3发送简单数据表
单步执行仿真
逆向学习源地址
单步执行仿真
可以看到,交换机进行了泛洪操作
为什么会进行泛洪操作?
因为,目的地址PC3未在MAC表中出现
交换机会对未知单播帧进行泛洪
转发已知帧
单步执行仿真
PC3给PC1响应
首先,逆向学习源地址。
通过MAC帧的目的地址,进行转发
MAC表中找到了PC1的MAC地址
单步执行仿真
交换机转发已知帧
清除当前场景
PC2给PC3发送数据
首先,学习源地址MAC_2与路径端口F0/2关联起来,存进表中
通过目的地址,转发给PC3
PC3向PC2发回响应数据
已有条目,更新其到达时间,更新老化时间为最大值300秒
根据目的地址,找到匹配
从F0/2转出
连接集线器与交换机
下面我们将集线器与交换机用交叉线连接起来
并尽快将阻塞变为转发状态
现在,
PC4给PC5发数据
集线器会广播该帧
另外一个副本会被交换机收到
学习源地址MAC_4
泛洪未知帧
同时,PC5给PC4的响应到达集线器
PC4受到了响应
同时交换机收到了这个副本
交换机学习源地址
可以看到MAC地址表中有两条端口对应F0/4
这是因为网络拓扑中PC4与PC5都连接到交换机的F0/4上
交换机通过目的地址进行转发
找到PC4对应F0/4
这个端口既是入境端口又是出境端口,会被交换机丢弃
清除当前场景
泛洪广播帧
接下来,让PC1发送一个广播帧,观察情况
创建一个复杂PDU
交换机对所有端口进行泛洪
清除场景
手工配置
下面:来演示手工配置
打开配置:CLI选项
输入enable,进入特权模式
输入config terminal 进入全局配置模式
输入mac-address-table static 00D0.FF0C.173D vlan 1 interface f0/4
将PC1的mac地址添加 错写端口f0/4而不是f0/1
出现命令不正确的问题:
发生在交换机2960
思科2950配置mac地址表超时 用:2950(config)#mac-address-table aging-time 100
解决:换一台交换机PT-Switch
重新搭建网络拓扑
如下
进行配置
打开配置:CLI选项
输入enable,进入特权模式
输入config terminal 进入全局配置模式
输入mac-address-table static 000C.CF1E.93C7 vlan 1 interface f3/1
将PC1的mac地址添加 错写端口f3/1而不是f0/1
配置错误对转发的影响
下面:演示配置错误MAC地址的影响
PC3给PC1发送数据包
数据帧到达交换机
学习源地址MAC_3 f2/1
转出
观察到它从f3/1转出
因为找到的mac表项的mac地址匹配的端口是f3/1
然后,集线器发给PC4与PC5
由于帧的目的地址与其不匹配,而丢弃
下面:
如果PC1向外发送数据
会不会替换原有的静态表项
PC1向PC3发送数据
到达交换机,之后
发现:静态表项并没有改变
由于静态表项的优先级高于动态
PC3给PC1响应时:
还是从f3/1转出
导致PC1收不到PC3的响应
小结
通过本次实验:
我们学习到交换机如何通过逆向学习源地址来构建MAC地址转发表
以及交换机如何利用mac地址转发表对帧进行合理的转发操作
实验过程的演示就到这里
2.2.1实验章节测验
1【单选题】交换机中的转发表是如何建立的?
A交换机在处理数据帧时学习源地址得来。
B由生产厂家在出厂时写入交换机。
C由网络管理员根据网络实际情况,写入交换机。
D交换机和路由器交换信息得来。
A
2【单选题】某以太网拓扑及交换机当前转发表如下图所示:
主机00-e1-d5-00-23-a1向主机00-e1-d5-00-23-c1发送1个请求数据帧,之后主机00-e1-d5-00-23-c1收到该帧后向主机00-e1-d5-00-23-a1发送1个响应数据帧,交换机对这两个帧的转发出口分别是()。
A{3}和{1}
B{2,3}和{1}
C{2,3}和{1,2}
D{(1,2,3}和{1}
B
3【单选题】
路由器R通过以太网交换机S1和S2连接两个网络,R的接口、主机H1和H2的IP地址与MAC地址如上图所示。若H1向H2发送一个IP分组P,则H1发出的封装P的以太网帧的目的MAC地址和H2收到的封装P的以太网帧的源MAC地址分别是()
A 00-a1-b2-c3-d4-62、00-1a-2b-3c-4d-52
B 00-1a-2b-3c-4d-51、00-1a-2b-3c-4d-52o
C 00-a1-b2-c3-d4-62、00-1a-2b-3c-4d-61
D 00-1a-2b-3c-4d-51、00-a1-b2-c3-d4-61
D
4【单选题】交换机依据(),判断如何转发数据帧。
A依据帧的源地址在路由表中查找匹配
B依据帧的源地址在MAC地址表中查找匹配
C依据帧的目的地址在访问权限表中查找匹配
D依据帧的目的地址在静态列表中查找匹配
E依据帧的目的地址在MAC地址表中查找匹配
F依据帧的目的地址在路由表中查找匹配
E
5【单选题】一台交换机有8个端口,一个单播帧从某一端口进入了该交换机,但交换机在MAC地址表中查不到关于该帧的目的MAC地址的表项,那么交换机对该帧进行的操作是?()
A丢弃
B泛洪
C转发
B
6【单选题】一台交换机有8个端口,一个单播帧从某一端口进入了该交换机,交换机在MAC地址表中查到了关于该帧的目的MAC地址的表项,那么交换机对该帧进行的操作是?()
A一定是转发
B 一定是丢弃
C 可能是转发,也可能是丢弃
D 泛洪
C
7
【单选题】标准规定,MAC地址表中的倒数计时器的缺省初始值是?()
A 100s
B 5min
C 30min
D 300ms
B
8【单选题】交换机上连接了两台主机,假设交换机MAC地址表为空,当PC1 ping PC2时,交换机先学习到()的MAC地址。
A PC1
B PC2
C 同时学习到两个MAC地址
D 不会学习地址
A
9【阅读理解】
嫳络拓扑图如上,假设嫟嫮机刚嬶动MAC地址表为空,嬺嬹答相嬸问题:
(1) [多选题]
若主机PC1向主机PC3发送1个数据帧,从物理层上能够收到该数据帧的主机有( )
A、PC0
B、PC2
C、PC3
D、没有主机收到
ABC
(2) [单选题]
若主机PC1向主机PC3发送1个请求帧,主机PC3向主机PC1立即发送一个响应帧,从物理层上能够收到该响应帧的主机有( )
A、仅PC1
B、仅PC2
C、PC0和PC1
D、PC1和PC2
E、PC1 、PC2和PC3
D
10【多选题】以下关于MAC地址表的说法,错误的是( )
AMAC地址表是交换机的转发数据帧的依据。
B交换机的MAC地址表需要占据设备的存储空间,因此它不能无限扩大。
CMAC地址表项有静态及动态之分,静态MAC地址表项需要网络管理员手工配置,并且永不老化。
DMAC地址表中的所有表项保存在交换机的内存中,重启之后表项不会丢失。
EMAC地址表中静态表项的优先级低于动态表项。
DE
11【多选题】下列描述中正确的是?()
A交换机的某个端口在收到一个广播帧后,会对该帧执行泛洪操作
B交换机中的MAC地址表也具有老化机制
C从统计的角度看,如果交换机MAC地址表中的地址表项越少,则交换机执行泛洪操作的可能性就越大
D交换机的某个端口在收到一个广播帧后,一定会将帧中的载荷数据送给上层协议去处理
ABC
最后
2023-5-12 21:03:00
你对我百般注视,
并不能构成万分之一的我,
却是一览无余的你。
祝大家逢考必过
点赞收藏关注哦