观察和配置MAC地址表

目录

原理概述

实验目的

实验内容

实验拓扑

​编辑1.基本配置

2.观察正常状态时的MAC地址表

 4.配置静态MAC地址表项


原理概述

       MAC 地址表是交换机的一个核心组成部分,交换机主要是根据 MAC 地址表来进行帧的转发的。交换机对帧的转发操作行为一共有3种:泛洪( Flooding )、转发( Forwarding )和丢弃( Discarding )。关于这3种转发操作行为的具体含义在此不再赘述。
       在不涉及 VLAN 的情况下,交换机的转发原理可以概括地描述为:(1)如果进入交换机的是一个单播帧,则交换机会去 MAC 地址表中查找这个帧的目的 MAC 地址,如果查不到这个 MAC 地址,则交换机将对该帧执行泛洪操作;如果查到了这个 MAC 地址,则比较这个 MAC 地址在 MAC 地址表中对应的端口是不是这个帧进入交换机的那个端口,如果不是,则交换机将对该帧执行转发操作,如果是,则交换机将对该帧执行丢弃操作。(2)如果进入交换机的是一个广播帧,则交换机不会去查 MAC 地址表,而是直接对该帧执行泛洪操作。(3)如果进入交换机的是一个组播帧,则交换机的处理行为比较复杂,超出了这里的学习范围,所以在此不作描述。
       交换机具有转发帧的能力,同时还具有MAC地址学习能力。当一个帧进入交换机后,交换机会检查这个帧的源 MAC 地址,并将该 MAC 地址与这个帧进入交换机的那个端口进行映射,然后将这个映射关系作为一个动态地址表项存放进 MAC 地址表。
        MAC 地址表是一张动态的表,每个表项在创建或刷新时,都会设定并维护一个默认是300s的生存期(也称为老化周期)。一个 MAC 地址表项如果超过了生存期,则该表项会立即被自动清除。
       MAC 地址表中的表项分为动态表项静态表项,前者是交换机通过动态学习过程创建的,后者是通过手工配置创建的。静态表项不存在生存期的概念,并且其优先级高于动态表项:对于一个特定的 MAC 地址,如果手工配置了关于它的静态表项,则 MAC 地址表中将不会再出现关于它的动态表项。
       如果两台主机之间通过交换机相连,那么其中一台主机在向另一台主机发送数据帧的时候,会首先在自己的 ARP 缓存表中查找目标主机的 MAC 地址。如果 ARP 缓存表中不存在目标主机的 MAC 地址,则源主机会以广播帧的形式发送 ARP 请求报文来获取目标主机的 MAC 地址,目标主机接收到该 ARP 请求报文后,会以单播帧的形式回应一个 ARP 回复报文,告知自己的 MAC 地址。源主机在获取了目标主机的 MAC 地址后,一方面可利用该 MAC 地址向目标主机发起通信,另一方面会将目标主机的 IP 地址和 MAC 地址建立一个映射关系,并将此映射关系作为一个条目存放在自己的 ARP 缓存表中。 ARP 缓存表也是一张动态的表,关于其动态机制这里就不再赘述了。

实验目的

理解MAC地址表的基本作用和动态特性

掌握静态MAC地址表项的创建方法

实验内容

实验拓扑如图所示。本实验网络的结构非常简单,只包含一台交换机 SWI 和三台终端电脑 PC-1、 PC-2和 PC-3。网络管理员需要为终端电脑配置固定的 IP 地址,然后观察交换机的 MAC 地址表在终端电脑的通信过程中所发生的各种变化。另外,管理员还需要在SW1上练习使用手动方式创建静态的 MAC地址表项。

实验拓扑


1.基本配置

根据上图进行相应的IP 地址配置,同时设置 PC-1的 MAC 地址为00-01-00-01-00-01, PC-2的MAC 地址为00-02-00-02-00-02, PC-3的 MAC 地址为00-03-00-03-00-03。然后,在 PC-1上使用 ping 命令检测 PC-1和 PC-2之间的连通性,如下图所示。
 PC-1和 PC-3之间以及 PC-2和 P -3之间的连通性测试过程在此省略。 

2.观察正常状态时的MAC地址表

由于在上述步骤中使用了 ping 命令测试3台 PC 之间的连通性,所以交换机应该已经通过动态学习过程而在 MAC 地址表中创建了关于 PC-1、 PC-2、 PC-3的 MAC 地址的表项。为了便于观察 MAC 地址表项的创建过程,可以先用命令把SW1通过动态学习而创建的地址表项清空。

[sw1]undo mac-address dynamic 

然后,在SW1上查看MAC地址表。

[sw1]display mac-address 

可以看到,MAC地址表中现在没有任何内容。

接下来,查看SW1上MAC地址表项的老化周期。

[sw1]display mac-address aging-time 

  Aging time: 300 seconds

可以看到,默认情况下, MAC 地址表项的老化周期为300s。
为了便于接下来的实验观察,避免 MAC 表项因超过了生存期而被清除掉,可以使用命令将老化周期设置为0,这样便关闭了 MAC 地址表的老化功能,地址表项不会再因超过生存期而被清除。 

[sw1]mac-address aging-time 0 

交换机只在接收到数据帧时,才会使用所收到的数据帧的源 MAC 地址来创建相应的地址表项。如图所示,在 PC-1上使用 ping 命令访问 PC-2,这样一来,SW1便会分别接收到以 PC-1的 MAC 地址为源地址和以 PC-2的 MAC 地址为源地址的数据帧。
然后,在SW1上查看 MAC 地址表。 

                                                       图:在PC-1上pingPC-2

       可以看到,SW1分别为 MAC 地址0001-0001-0001和 MAC 地址0002-0002-0002创建了地址表项,每个表项包含了 MAC 地址、 VLAN 、端口编号、类型等信息。
       由于此时SW1尚未收到以 PC-3的 MAC 地址为源地址的数据帧,所以 MAC 地址表中还没有关于 PC-3的 MAC 地址表项。接下来,在 PC-1上使用 ping 命令访问 PC-3,以触发 PC-3发送数据帧,如图下图所示。

                                                       图:在PC-1上ping PC-3

然后,在 SWI 上查看 MAC 地址表。

可以看到, MAC 地址表中现在已经增加了关于 PC-3的 MAC 地址表项。

3.观察 MAC 地址冲突时的 MAC 地址表

接下来,修改 PC-3的 MAC 地址为00-02-00-02-00-02,如图所示,以此来模拟 PC-3与 PC-2产生 MAC 地址冲突的情况。

 然后,在PC-1上使用ping命令访问PC-3,如图所示。

                                                      图:在PC-1上ping PC-3 

从上图中可以看到, PC-3没有任何回应,此时 PC-1与 PC-3无法进行正常的通信。

在 PC-1上查看 ARP 缓存表,如图所示。 

                                                     图:查看PC-1上的ARP缓存表 

      可以看到,此时 PC-1的 ARP 缓存表中,10.0.1.3( PC-3)对应的 MAC 地址依旧为00-03-00-03-00-03。因此, PC-1发往 PC-3的报文其实是封装在目的 MAC 地址为00-03-00-03-00-03的帧中,当 PC-3接收到该帧时,发现该帧的目的 MAC 地址 00-03-00-03-00-03与自己的 MAC 地址:00-02-00-02-00-02不匹配,于是会直接将该帧丢弃。

      在 PC-1上使用命令 arp -d 清空 ARP 缓存表,并使用命令 arp - a 来确认 ARP 缓存表已被清空,如下图所示。

                                                  图:清空 PC-1上的 ARP 缓存表 

从上图可以看到,现在 PC-1的 ARP 缓存表已被清空。在 PC-1上使用 ping 命令访问 PC-3,如下图所示。

                                                     图:在 PC-1上 ping PC-3

可以看到,现在 PC-1可以 ping 通 PC-3了。在SW1上查看 MAC 地址表。 

       观察发现,此时在SW1的 MAC 地址表中,关于 MAC 地址0002-0002-0002的表项的端口编号已经由原来的 GE 0/0/2变为了 GE 0/0/3,这是因为以 PC-3为源的数据帧经过 SW 1时,0002-0002-0002这一表项所对应的端口编号被刷新为连接 PC-3的 GE 0/0/3。
       在 PC-1上使用 ping 命令访问 PC-2,触发 PC-2发送数据帧,如下图所示。

                                                 图:在 PC-1上 ping PC-2 

然后,查看SW1上的 MAC 地址表。 

      观察发现,此时在SW1的 MAC 地址表中,关于 MAC 地址0002-0002-0002的表项的端口编号又由原来的 GE 0/0/3变为了 GE 0/0/2,这是因为以 PC-2为源的数据帧经过 SWI 时,0002-0002-0002这一表项所对应的端口编号被刷新为连接 PC-2的 GE 0/0/2。
       PC-2与 PC-3的 MAC 地址目前是相同的,处于冲突的状态。当不断地有以 PC-2为源的帧和以 PC-3为源的帧通过 SW1时,SW1就需要频繁地刷新0002-0002-0002这个表项所对应的端口编号,从而产生常说的 MAC 地址表翻转现象,耗费大量的系统资源,并且可能会导致通信异常或通信数据丢失的现象。
       在 PC-2和 PC-3上分别使用 ping 命令访问 PC-1,以此来模拟产生 MAC 地址冲突的设备同时有通信流量需要经过SW1的情形,如下图所示。

                                                     图:在PC-2上ping PC-1 

                                                       图:在PC-3上ping PC-1 

查看SW1,发现系统日志输出了如下的警告信息. 

上面的显示信息表明,系统已经出现了 MAC 地址表翻转现象,要求用户进行相应的检查。 

 4.配置静态MAC地址表项

MAC 地址表项可以通过手工配置来创建,所创建的表项称为静态表项。例如,针编号为对 PC -3,可以手工配置一个 MAC 地址为0003-0003-0003、对应 VLAN 为1,对应端口编号为GE 0/0/3的 MAC 地址表项。

[sw1]mac-address static 3-3-3 G0/0/3 vlan 1

 配置完成后,在SW1上查看MAC地址表。

       可以看到,此时 MAC 地址表中多出了一个关于 MAC 地址为0003-0003-0003的表项,类型为 static ,而原有的 MAC 地址为0003-0003-0003、类型为 dynamic 的表项不再存在,这是因为静态表项的优先级要高于动态表项。
       在SW1上为 PC-1和 PC-2也创建静态 MAC 地址表项。 

[sw1]mac-address static 1-1-1 g0/0/1 vlan 1
[sw1]mac-address static 2-2-2 g0/0/2 vlan 1

在 PC-1上使用 ping 命令访问 PC-2和 PC-3,如下图所示。 

可以看到,此时PC-1能够与PC-2正常通信,但与PC-3无法通信。

在SW1上观察MAC地址表。

可以看到,此时MAC地址表中的3个表项类型均为static,并且没有因为PC-1访问了PC-3而使得0002-0002-0002表项的接口由g0/0/2变更为g0/0/3。

接下来,将PC-3的MAC地址修改为正确的00-03-00-03-00-03,然后再PC-1上使用ping命令访问PC-3,如图所示。

                                                    图:在PC-1上ping PC-3 

从上图可以看到,此时PC-1可以与PC-3进行正常的通信了。 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/788959.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

OpenHarmony实战:轻量带屏解决方案之恒玄芯片移植案例

本文章基于恒玄科技 BES2600W 芯片的欧智通 Multi-modal V200Z-R 开发板,进行轻量带屏开发板的标准移植,开发了智能开关面板样例,同时实现了 ace_engine_lite、arkui_ui_lite、aafwk_lite、appexecfwk_lite、HDF 等部件基于 OpenHarmony Lite…

集成电路企业tapeout,如何保证机台数据准确、完整、高效地采集?

Tapeout即流片,集成电路行业中将CDS最终版电路图提交给半导体制造厂商进行物理生产的过程。在芯片设计与制造的流程中,Tapeout是非常重要的阶段,包括了布局(Layout)、连线(Routing)、分析&#…

Linux 线程互斥、互斥量、可重入与线程安全

目录 一、线程互斥 1、回顾相关概念 2、抢票场景分析代码 多个线程同时操作全局变量 产生原因 如何解决 二、互斥量 1、概念 2、初始化互斥量: 方法1:静态分配 方法2:动态分配 3、销毁互斥量: 4、加锁和解锁 示例抢…

企业如何设计和实施有效的网络安全演练?

现实世界中,武装部队一直利用兵棋推演进行实战化训练,为潜在的军事冲突做准备。随着当今的数字化转型,同样的概念正在以网络安全演习的形式在组织中得到应用,很多企业每年都会基于合理的网络攻击场景和事件响应做一些测试和模拟。…

鸿蒙南向开发案例:【智能养花机】

样例简介 智能养花机通过感知花卉、盆栽等植宠生长环境的温度、湿度信息,适时为它们补充水分。在连接网络后,配合数字管家应用,用户可远程进行浇水操作。用户还可在应用中设定日程,有计划的按日、按周进行浇水。在日程中用户可添…

uniapp-打包app-图标配置

依次找到manifest->App图标配置,然后点击浏览,从本地文件夹中选择你们项目的logo,然后点击自动生成所有图标并替换,即可:

uniapp创建opendb-city-china Schema文件后,如何导入城市的数据?

1.点击opendb-city-china后面的详情,进入到gitee代码仓库 2.下载如下图所示的data.json文件 3.将本地创建的opendb-city-china.schema.json上传到云端 4.点击导入json 如果直接将data.json导入会报错,如下图所示: 5.将data.json本来的数组对象&#…

如何展示科技产品的原理和应用

一、合理安排展示区域 不同的科技产品具有不同的展示需求,设计师需要根据展品的特点和大小,合理安排展示区域。对于较大的科技产品,可以设置特定的展台或展示区域,并配备合适的灯光和装饰,以凸显产品的重要性和独特性。…

InterliJ IDEA基本设置

安装好idea后,将软件打开,可以进行基础设置 1.打开软件,先安装插件-汉化包(不推荐,最好使用英文版),本次我们使用汉化版本完成基本设置,后期希望大家适应英文版的开发环境。&#x…

Linux 学习之路 -- 进程篇 2 -- 进程简介

一、简单介绍 在我们写完程序后,由编译器形成二进制的文件,而这个文件在磁盘中存放,磁盘在外设中,如果我们要执行程序,就必需要把程序加载到内存。我们可以打开任务管理器,就可以发现我们的电脑会运行很多…

435.无重叠区间

// 定义一个名为Solution的类 class Solution {// 定义公共方法eraseOverlapIntervals,输入为二维整数数组intervals,返回值类型为整数public int eraseOverlapIntervals(int[][] intervals) {// 首先,按照区间的起始位置对区间进行升序排序A…

【Algorithms 4】算法(第4版)学习笔记 23 - 5.4 正则表达式

文章目录 前言参考目录学习笔记1:正则表达式1.1:表示1.2:快捷表示2:正则表达式与非确定有限状态自动机 REs and NFAs2.1:二元性2.2:模式匹配实现2.3:非确定有限状态自动机 Nondeterministic fin…

慧天[HTWATER]:创新城市水务科技,引领行业变革

【城市内涝水文水动力模型介绍】 慧天[HTWATER]软件:慧天排水数字化分析平台针对城市排水系统基础设施数据管理的需求,以及水文、水力及水质模拟对数据的需求,实现了以数据库方式对相应数据的存储。可以对分流制排水系统及合流制排水系统进行…

PAC下的ROP问题

Armv8.3-A引入了pointer authentication选项。 pointer authentication可以减轻ROP攻击。 为了防止ROP攻击,在函数开始时,LR寄存器中的返回地址被签名。这意味着在寄存器的高位添加了一个PAC。在返回之前,使用PAC对返回地址进行验证。如果检查…

搜索二维矩阵 II - LeetCode 热题 21

大家好!我是曾续缘💗 今天是《LeetCode 热题 100》系列 发车第 21 天 矩阵第 4 题 ❤️点赞 👍 收藏 ⭐再看,养成习惯 搜索二维矩阵 II 编写一个高效的算法来搜索 m x n 矩阵 matrix 中的一个目标值 target 。该矩阵具有以下特性&…

Word的”交叉引用“和”插入题注“快捷键设置

Word的”交叉引用“和”插入题注“快捷键设置 在MSWord2021中,可以自定义设置快捷键。方法如下:文件-选项-自定义功能区-键盘快捷方式(自定义)。具体过程如图所示。 最后,按照上述流程将插入题注(Insert…

VMware vCenter Server 8.0U2c - 集中式管理 vSphere 环境

VMware vCenter Server 8.0U2c - 集中式管理 vSphere 环境 请访问原文链接:https://sysin.org/blog/vmware-vcenter-8-u2/,查看最新版。原创作品,转载请保留出处。 作者主页:sysin.org 无耻抄袭者 Yu Tao,请立遁&…

3D模型格式转换工具HOOPS Exchange如何将3D文件加载到PRC数据结构中?

HOOPS Exchange是一款高效的数据访问工具,专为开发人员设计,用于在不同的CAD(计算机辅助设计)系统之间进行高保真的数据转换和交换。由Tech Soft 3D公司开发,它支持广泛的CAD文件格式,包括但不限于AutoCAD的…

分享高质量嵌入式软件的开发技巧

大家好,今天给大家介绍分享高质量嵌入式软件的开发技巧,文章末尾附有分享大家一个资料包,差不多150多G。里面学习内容、面经、项目都比较新也比较全!可进群免费领取。 高质量嵌入式软件的开发技巧涉及多个方面,从设计、…

不同设备使用同一个Git账号

想要在公司和家里的电脑上用同一个git账号来pull, push代码 1. 查看原设备的用户名和邮箱 第1种方法, 依次输入 git config user.name git config user.email第2种方法, 输入 cat ~/.gitconfig2. 配置新设备的用户名和邮箱 用户名和邮箱与原设备保持…