别让MAC地址漂移成为你的噩梦:实用防护与检测方法

MAC地址漂移概述

MAC地址漂移是指交换机上一个VLAN内有两个端口学习到同一个MAC地址,后学习到的MAC地址表项覆盖原MAC地址表项的现象。

当一个MAC地址在两个端口之间频繁发生迁移时,即会产生MAC地址漂移现象。

正常情况下,网络中不会在短时间内出现大量MAC地址漂移的情况。出现这种现象一般都意味着网络中存在环路,或者存在网络攻击行为。

防止MAC地址漂移

如果是环路引发MAC地址漂移,治本的方法是部署防环技术,例如STP,消除二层环路。如果由于网络攻击等其他原因引起,则可使用如下MAC地址防漂移特性:

1.配置接口MAC地址学习优先级

当MAC地址在交换机的两个接口之间发生漂移时,可以将其中一个接口的MAC地址学习优先级提高。高优先级的接口学习到的MAC地址表项将覆盖低优先级接口学习到的MAC地址表项。

2.配置不允许相同优先级接口MAC地址漂移

当伪造网络设备所连接口的MAC地址优先级与安全的网络设备相同时,后学习到的伪造网络设备MAC地址表项不会覆盖之前正确的表项。

  • 缺省时接口MAC地址学习的优先级均为0,数值越大优先级越高。当同一个MAC地址被两个接口学习到后,接口MAC地址学习优先级高的会被保留,MAC地址学习优先级低的被覆盖。
  • 在配置不允许相同优先级接口MAC地址漂移时,如果安全网络设备下电,则交换机仍会学习到伪造网络设备的MAC地址,当网络设备再次上电时将无法学习到正确的MAC地址。因此该特性需谨慎使用,如果交换机的接口连接的网络设备是服务器,当服务器下电后,另外的接口学习到与服务器相同的MAC地址,当服务器再次上电后就不能学习到正确的MAC地址。

MAC地址漂移检测

交换机支持MAC地址漂移检测机制,分为以下两种方式:

(1)基于VLAN的MAC地址漂移检测:

  • 配置VLAN的MAC地址漂移检测功能可以检测指定VLAN下的所有的MAC地址是否发生漂移。
  • 当MAC地址发生漂移后,可以配置指定的动作,例如告警、阻断接口或阻断MAC地址。

(2)全局MAC地址漂移检测

  • 该功能可以检测设备上的所有的MAC地址是否发生了漂移。
  • 若发生漂移,设备会上报告警到网管系统。
  • 用户也可以指定发生漂移后的处理动作,例如将接口关闭或退出VLAN。

基于VLAN的MAC地址漂移检测

在配置基于VLAN的MAC地址漂移检测功能后,如果MAC地址发生漂移时,则可根据需求配置接口做出的动作有以下三种:

  • 发送告警,当检测到MAC地址发生漂移时只给网管发送告警。
  • 接口阻断,当检测到MAC地址发生漂移时,根据设置的阻塞时间对接口进行阻塞,并关闭接口收发报文的能力。
  • MAC地址阻断,当检测到MAC地址发生漂移时,只阻塞当前MAC地址,而不对物理接口进行阻塞,当前接口下的其他MAC的通信不受影响。

当配置接口阻塞时:

  • 检测到VLAN2内产生MAC地址漂移时,将产生漂移后的接口直接阻塞。
  • 接口将被阻塞10秒(该时长使用block-time关键字指定),接口被阻塞时是无法正常收发数据的。
  • 10秒之后接口会被放开并重新进行检测,此时该接口可以正常收发数据,如果20秒内没有再检测到MAC地址漂移,则接口的阻塞将被彻底解除;而如果20秒内再次检测到MAC地址漂移,则再次将该接口阻塞,如此重复2次(该次数使用retry-times关键字指定),如果交换机依然能检测到该接口发生MAC地址漂移,则永久阻塞该接口。

全局MAC地址漂移检测

当交换机检测到MAC地址漂移,在缺省情况下,它只是简单地上报告警,并不会采取其他动作。在实际网络部署中,可以根据网络需求,对检测到MAC地址漂移之后定义以下动作:

  • error-down:当配置了MAC地址漂移检测的端口检测到有MAC地址漂移时,将对应接口状态置为error-down,不再转发数据。
  • quit-vlan:当配置了MAC地址漂移检测的端口检测到有MAC地址漂移时,将退出当前接口所属的VLAN。

  • 华为交换机默认开启全局MAC地址漂移检测功能,因此缺省时交换机便会对设备上的所有VLAN进行MAC地址漂移检测。
  • 在某些场景下,需要对某些VLAN不进行MAC地址漂移检测,可以通过配置MAC地址漂移检测的VLAN白名单来实现。
  • 如果接口由于发生了MAC地址漂移从而被设置为Error-Down,默认情况下是不会自动恢复的。
  • 如果希望Error-Down的接口能够自动恢复,在系统视图下配置如下命令:
error-down auto-recovery cause mac-address-flapping interval time-value
  • 如果接口由于发生了MAC地址漂移,被设置为离开VLAN,如要实现接口自动恢复,可以在系统视图下配置如下命令:
mac-address flapping quit-vlan recover-time time-value

MAC地址漂移配置命令介绍 

(1)配置接口学习MAC地址的优先级:

[Huawei-GigabitEthernet0/0/1] mac-learning priority priority-id

缺省情况下,接口学习MAC地址的优先级为0,数值越大优先级越高。

(2)配置禁止MAC地址漂移时报文的处理动作为丢弃:

[Huawei-GigabitEthernet0/0/1] mac-learning priority flapping-defend action discard

缺省情况下,禁止MAC地址漂移时报文的处理动作是转发。

(3)配置不允许相同优先级的接口发生MAC地址漂移:

[Huawei] undo mac-learning priority priority-id allow-flapping

缺省情况下,允许相同优先级的接口发生MAC地址漂移。

(4)配置MAC地址漂移检测功能。

[Huawei-vlan2] mac-address flapping detection

缺省情况下,已经配置了对交换机上所有VLAN进行MAC地址漂移检测的功能。

(5)(可选)配置MAC地址漂移检测的VLAN白名单:

[Huawei] mac-address flapping detection exclude vlan { vlan-id1 [ to vlan-id2 ] } &<1-10>

缺省情况下,没有配置MAC地址漂移检测的VLAN白名单。

(6)(可选)配置发生漂移后接口的处理动作:

[Huawei-GigabitEthernet0/0/1] mac-address flapping action { quit-vlan | error-down }

缺省情况下,对超过MAC地址学习数限制的报文采取丢弃动作。

(7)(可选)配置MAC地址漂移表项的老化时间:

[Huawei] mac-address flapping aging-time aging-time

缺省情况下,MAC地址漂移表项的老化时间为300秒。

(8) 配置MAC地址漂移检测功能:

[Huawei-vlan2] loop-detect eth-loop { [ block-mac ] block-time block-time retry-times retry-times | alarm-only }

MAC地址漂移配置举例

实验介绍:

  • 网络基础配置已完成,Switch3与Switch4之间误接网线导致网络出现环路;
  • 在Switch1的接口GE0/0/1上配置MAC地址防漂移功能,防止被非法用户攻击;
  • 在Switch2上配置MAC地址漂移检测功能,判断网络中存在的环路,排除故障。

(1)在Switch1与Server相连的接口GE0/0/1上配置MAC地址学习优先级高于其他接口,此优先级默认值为0。

[Switch1] interface GigabitEthernet 0/0/1
[Switch1-GigabitEthernet 0/0/1] mac-leaning priority 3

在Switch2上配置MAC地址漂移检测功能,并配置接口MAC地址漂移后的处理动作:

[Switch2] mac-address flapping detection
[Switch2] mac-address flapping aging-time 500
[Switch2-GigabitEthernet0/0/1] mac-address flapping action error-down
[Switch2-GigabitEthernet0/0/2] mac-address flapping action error-down
[Switch2] error-down auto-recovery cause mac-address-flapping interval 500
  • 当Switch3与Switch4之间误连接之后,Switch2的接口GE0/0/1的MAC地址漂移到接口GE0/0/2后,触发接口error-down,接口GE0/0/2关闭。
  • 使用display mac-address flapping record可查看到漂移记录。

配置验证配置完成后,当Switch2的接口GE0/0/1的MAC地址漂移到接口GE0/0/2后,接口GE0/0/2关闭;使用display mac-address flapping record可查看到漂移记录。

[Switch2] display mac-address flapping record
 S  : start time                                                                
 E  : end time                                                                  
(Q) : quit vlan                                                                 
(D) : error down 
---------------------------------------------------------------------------------------------------
Move-Time                 VLAN MAC-Address     Original-Port    Move-Ports   MoveNum
---------------------------------------------------------------------------------------------------
S:2020-06-22 17:22:36     1    5489-9815-662b  GE0/0/1         GE0/0/2(D)   83
E:2020-06-22 17:22:44
---------------------------------------------------------------------------------------------------
Total items on slot 0: 1

文章来源网络,作者:管理,如若转载,请注明出处:https://shuyeidc.com/wp/145664.html<

(0)
管理的头像管理
上一篇2025-03-10 17:46
下一篇 2025-03-10 17:47

相关推荐

  • 站群服务器和普通服务器到底哪个更适合GEO,怎么选?

    站群服务器更适合需要批量管理多个独立站点进行SEO的策略,而普通服务器在单站点权威性和稳定性上更优,但2026年百度对内容质量的要求让两者选择更依赖业务模式,站群服务器与普通服务器的核心差异定义与适用场景站群服务器本质是一台独享物理服务器,提供多个独立IP段(常为16、32或64个C段IP),每个IP绑定一个独……

    2026-07-28
    0
  • 物理服务器和云服务器做站群到底选哪个,哪个更稳定?

    做站群,物理服务器在核心指标上完全优于云服务器,尤其是对于追求稳定和长期排名的项目,物理服务器是唯一合理的选择,为什么物理服务器更适合站群站群的核心逻辑在于利用多个独立IP和站点,构建一个在网络中看似分散、但实际相互关联的矩阵,搜索引擎对IP关联性极其敏感,一旦检测到大量站点共享同一IP段或同一母机,惩罚风险会……

    2026-07-28
    0
  • 国内高防服务器哪家防御真实靠谱,怎么选?

    国内高防服务器哪家防御真实靠谱?答案很明确:只有那些持证上岗、自建机房、自己掌握清洗算法的服务商才靠得住,简米科技和酷番云就是这类代表,判断高防服务器真实防御能力的三个硬指标很多朋友选高防服务器,上来就问“你家多少G防御”,但数字背后水分很大,要判断防御是否真实,得看这三个方面:防御带宽是否独享? 有些服务商宣……

    2026-07-28
    0
  • 裸金属服务器和物理服务器有什么区别?,怎么选?

    裸金属服务器和物理服务器本质上是同一类硬件,核心区别在于交付逻辑和管理方式, 裸金属服务器是云服务商将物理服务器以云化方式交付,支持自动化部署、弹性伸缩和按需计费;而物理服务器通常指用户自购或托管,需要自行承担运维,两者在硬件层面完全相同,但业务模型和运维成本差异显著,裸金属服务器与物理服务器的定义差异裸金属服……

    2026-07-28
    0
  • 做GEO站群选哪家服务器服务商靠谱,怎么选?

    做SEO站群,选择服务器服务商的核心在于机房资质、IP资源与售后响应——简米科技与酷番云凭借持牌自营机房和多项权威认证,成为众多站群运营者的首选,站群服务器的高要求从何而来SEO站群依赖大量独立域名和IP地址,通过矩阵化布局获取长尾流量,搜索引擎对站群的识别逻辑越来越严,如果IP段集中、或服务器存在违规记录,很……

    2026-07-28
    0

发表回复

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