交换机有mac地址吗_MAC地址老化:交换机收到包就更新,真累

概述

我们在上一篇文章中介绍了MAC地址学习机制,我们知道交换机收到任何一个报文,都会做如下两个动作:

78f5fa15d67618e2efa456a00b9f0fc1.png

接收到的报文

  • 动作1:取出源MAC地址,查找MAC地址表,看是否已经存在这个MAC地址对应的表项,如果没有,则添加,否则会刷新表项;
  • 动作2:取出目的MAC地址(单播),查找MAC地址表,看是否已经存在这个MAC地址对应的表项,如果有,则只从特定的接口发送出去,否则会泛洪。

从上面描述可以看出,交换机只要收到报文就会添加或者刷新MAC地址表,但是我们有没有想过,已经学习到的MAC地址会不会一直存放在交换机中呢?

38d20a7109279ea7211e81ce8468d07f.png

MAC地址表

答案是肯定是否定的!因为不管交换机性能有多强,它的MAC地址表项总是有限的,如果一直存放在MAC地址表中,总有一天会达到它的最大规格,这样就会出现流量溢出现象,发送给新设备的流量都会被泛洪。

那交换机什么时候清除已经学习到的MAC地址表项,有没有什么规律呢?答案是肯定的,交换机使用MAC地址老化进制来确保上面的情况不会发生。

我们下面还是以一个例子来阐述MAC地址老化机制!

MAC地址老化机制

原理

当交换机把MAC地址添加进MAC地址表以后,就会对这个MAC启用一个定时器,如果定时器达到最大值,交换机就会把这个MAC地址从MAC地址表中清除,这个定时器就称为老化时间(aging time);

市场上几乎所有交换机厂商的默认的老化时间都为300秒,这个时间是经验值,在效率和流量之间做了平衡。

bb5dfbcb44a51db20871c5774e68f8ea.png

默认老化时间

对于特定的MAC,交换机每收到一个包含这个MAC的报文,就会把定时器进行重置。这个对于交换机也是不小的负担,例如1G端口以最大速率来接收报文,则交换机每秒最多要检测148.8万次,真够累的:)

拓扑

74300364baa8fca5d84e7c2eb5fd8538.png
  • PC1和PC2配置在相同的网段
  • 和PC相连的交换机接口,配置在同一个VLAN 10里

配置

PC1的配置

3ed54c0b5da341d177719980f84ba533.png

PC1配置

PC2的配置

fefac8e578d648e1613fd2de024653db.png

PC2配置

交换机的配置

ac572ca4857be91ba888ac80e6919475.png

交换机配置

原理概述

当PC1访问PC2时,发送报文的源MAC是PC1的MAC,目的MAC是PC2的MAC;

8707be72640e2a0172fd63139dbe1bc8.png

PC1发送报文

此时交换机就会在MAC地址表中记录PC1和PC2的MAC:

37e8c972b7e49344894d62fd5bcb1f96.png

MAC地址表

此时查看MAC地址老化时间,发现是默认的300秒:

a9d86b368fcb543ae546acc1d3291fb3.png

默认300秒

如果此后PC1和PC2一直不向外发送数据,则过了300秒以后,MAC地址就会被清空:

f7f92f0d344fd397bc18e0f0fcfaf1bd.png

MAC地址表被清空

修改默认的MAC地址老化时间

在我们日常测试中,300秒的时间太长了,等5分钟对我们是极大的浪费,所以我们经常会修改这个老化时间,例如修改为30秒,修改命令如下:

241b666519cc41d5fd1bec08b856344d.png

修改老化时间命令

查看配置结果:

8e3a67e948fa437b2bfc2186c0165b45.png

查看修改以后的时间

从上面的命令中, 我们发现还可以通过把老化时间设置为0来禁用MAC地址老化,这样学习到的MAC地址会一直存在于交换机中,直到手工被清除或者交换机重启。

不过我们要注意,在实际组网中,老化时间保持默认即可,不能设置的太小,否则网络中会有大量的未知单播报文。

总结

通过上面的描述,我们可以得出如下的结论:

  • 对于动态学习到的MAC地址,如果没有被更新,交换机只会保存一段时间(老化时间),就会清除它们;
  • 交换机每收到一个报文,就会根据源MAC查找MAC地址表,添加或者更新源MAC对应的表项;
  • 交换机默认的老化时间是300秒,但是可以修改,但不建议。

看完上面的文章,各位对应MAC地址老化机制是否了解了呢?如果还有疑问,欢迎留言讨论!也非常欢迎关注我,一起探讨网络问题!

  • 2
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值