什么是MAC地址漂移,怎么解决MAC地址漂移?

首先我们来回忆一下什么是MAC地址漂移?

MAC地址漂移是指:在同一个VLAN内,一个MAC地址有两个出接口,并且后学习到的出接口覆盖原出接口的现象。这是官方定义,通俗的讲,MAC地址漂移指的是MAC地址表项的出接口发生了变更。到底什么意思呢?看了下图就明白了。

什么是MAC地址漂移,怎么解决MAC地址漂移?


MAC地址漂移会有什么影响呢?

1、上网响应慢!!

什么是MAC地址漂移,怎么解决MAC地址漂移?

2、上网无响应!!

什么是MAC地址漂移,怎么解决MAC地址漂移?


3、视频卡着不能动!!

什么是MAC地址漂移,怎么解决MAC地址漂移?

以上这些都可能是MAC地址漂移,组网设备成环导致的。只要解决MAC地址漂移,破除组网中的环路,这些讨厌的画面就会自动消失的。

那为什么会有MAC地址漂移呢?

什么是MAC地址漂移,怎么解决MAC地址漂移?

如上图所示,正常情况下,PC的报文通过Port1进入Switch后,会从Port3转发出去,MAC地址表项学习到的出接口是Port1。但是当Switch、Switch1和Swtich2三台设备之间存在环路时,PC的报文通过Switch2-­­­->Switch1后,又会通过Port2进入Switch,导致MAC地址表项的出接口更新为Port2,从而就会产生MAC地址漂移告警。由此可见MAC地址发生漂移的根本原因就是组网中存在二层环路。

怎么判断设备上是否存在MAC地址漂移呢?

  • 方法1:在打开终端显示和MAC地址漂移告警开关情况下,在设备产生MAC地址漂移告警时,就会打印出如下告警信息。并且会间隔一段时间多次打印哟。 
什么是MAC地址漂移,怎么解决MAC地址漂移?
  •  方法2:在打开MAC地址漂移告警开关时,通过命令display trapbuffer查看告警的缓存信息,判断设备上是否存在MAC地址漂移。
什么是MAC地址漂移,怎么解决MAC地址漂移?
  • 方法3:在打开MAC地址漂移检测功能时,通过命令display mac-addressflapping record查看最近一个月MAC地址漂移的信息。记录的信息包括:MAC地址漂移发生的开始时间和结束时间,发生MAC地址漂移的VLAN和MAC,漂移的端口和漂移的次数。
什么是MAC地址漂移,怎么解决MAC地址漂移?
  • 方法4:在没有开启MAC地址漂移检测功能时,只能用最原始的办法—不停的查看MAC地址表项的出接口,来判断设备上是否存在MAC地址漂移了。如下图,多次查看MAC地址表项,出接口信息在两个端口之间跳变。这就可以认为发生了MAC地址漂移。

怎么消除MAC地址漂移告警呢?

消除MAC地址漂移的办法有三种:

第一种:人工把发生漂移的接口shutdown。

优点:最简单可靠

缺点:需要人工参与,整个接口的流量都会中断。

第二种:通过在接口上配置漂移检测动作为error-dwon,自动down掉漂移的端口。

优点:及时快捷,还可以通过配置自动恢复时间定时恢复端口。

缺点:整个接口的流量都会中断。

第三种:通过在接口上配置漂移检测动作为quit-vlan,使发生漂移的接口指定VLAN域内退出,从而消除MAC地址漂移,破除环路。

优点:只解决存在环路的VLAN域,不会使其他正常VLAN域的流量中断。

缺点:指定老化周期内,只能使一个接口从VLAN中退出。如果存在多个环路,破环会比较慢。

交换机实现的MAC地址漂移告警功能有什么亮点呢?

  • 亮点1:在同一个VLAN内,只会记录一个MAC地址漂移记录。即同一个VLAN内,如果有多个MAC地址都在发生漂移,只记录第一个上报漂移的MAC地址。为什么呢?因为只要一个VLAN域内存在环路,该VLAN内所有的MAC地址都会发生漂移的。
  • 亮点2:只有一次或两次MAC地址漂移,不会上报MAC地址漂移告警。默认情况下,在漂移记录老化时间300秒内,MAC地址表项出接口变更10次,才认为发生了MAC地址漂移,才会上报MAC地址漂移告警。
  • 亮点3:可以指定某个VLAN不进行MAC地址漂移的检测。指定某个VLAN不进行MAC地址漂移的检测后,该VLAN内的MAC地址发生漂移时,不会记录信息,也不会上报告警信息。

【江湖小贴士】

所有的MAC地址漂移告警都需要处理吗?其实不是的,只有MAC地址漂移告警在短时间多次出现的情况才需要处理,偶尔出现的可以不用关注啦,类似于下面这两种情况就可以不用关注的。

      1、因为环路切换,导致的MAC地址漂移告警。

      2、因为无线用户漫游,导致的MAC地址漂移告警。

本文来自网络,本文观点不代表CMCC立场,转载请联系原作者。

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注