当前位置:   article > 正文

以太网交换安全(二)----MAC地址表安全&MAC地址漂移防止与检测_mac地址漂移交换机动作

mac地址漂移交换机动作

目录

一、MAC地址表安全

MAC地址表项类型包括:

MAC地址表安全功能:​

实验部分:

黑洞MAC地址表:

更改动态MAC地址老化时间:​

交换机MAC学习功能切换:

静态MAC地址:

限制接口的MAC地址学习数量:

二、MAC地址漂移

什么是MAC地址漂移?

解决方法:(实验部分:)

1、优先级部署:

​2、还可以拒绝相同的优先级:

3、MAC地址漂移检测

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

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


一、MAC地址表安全

MAC地址表项类型包括:

  • 动态MAC地址表项:由接口通过报文中的源MAC地址学习获得,表项可老化。在系统复位、接口板热插拔或接口板复位后,动态表项会丢失。#无流量无人维护5分钟300s后自动老化
  • 静态MAC地址表项:由用户手工配置并下发到各接口板,表项不老化。在系统复位、接口板热插拔或接口板复位后,保存的表项不会丢失。接口和MAC地址静态绑定后,其他接口收到源MAC是该MAC地址的报文将会被丢弃。
  • 黑洞MAC地址表项:由用户手工配置,并下发到各接口板,表项不可老化。配置黑洞MAC地址后,源MAC地址或目的MAC地址是该MAC的报文将会被丢弃。#只要匹配到手动配置指定的mac地址就丢弃,用于封掉某些出故障中毒的主机,防止一直出故障占用cpu,解决故障后可恢复。

MAC地址表安全功能:

  • 为了防止一些关键设备(如各种服务器或上行设备)被非法用户恶意修改其MAC地址表项,可将这些设备的MAC地址配置为静态MAC地址表项,因为静态MAC地址表项优先于动态MAC地址表项,不易被非法修改。
  • 为了防止无用MAC地址表项占用MAC地址表,同时为了防止黑客通过MAC地址攻击用户设备或网络,可将那些有着恶意历史的非信任MAC地址配置为黑洞MAC地址,使设备在收到目的MAC或源MAC地址为这些黑洞MAC地址的报文时,直接予以丢弃,不修改原有的MAC地址表项,也不增加新的MAC地址表项。
  • 为了减轻手工配置静态MAC地址表项,华为S系列交换机缺省已使能了动态MAC地址表项学习功能。但为了避免MAC地址表项爆炸式增长,可合理配置动态MAC表项的老化时间,以便及时删除MAC地址表中的废弃MAC地址表项。
  • 为了提高网络的安全性,防止设备学习到非法的MAC地址,错误地修改MAC地址表中的原MAC地址表项,可以选择关闭设备上指定接口或指定VLAN中所有接口的MAC地址学习功能,这样设备将不再从这些接口上学习新的MAC地址。
  • 配置限制MAC地址学习数,当超过限制数时不再学习MAC地址,同时可以配置当MAC地址数达到限制后对报文采取的动作,从而防止MAC地址表资源耗尽,提高网络安全性。
     

实验部分:

拓扑:

配好所有地址任意主机产生通信则产生mac-add表:这个表就是动态的表自动生成的

黑洞MAC地址表:

#SW1
mac-address  blackhole  aabb-cc00-0010  vlan  1  (没配vlan,默认vlan)
这里把PC1设置成了黑洞mac-address,于是现象为PC1ping谁也不通,谁也ping不通PC1,黑洞这一词很形象。 
现象如图:

更改动态MAC地址老化时间:

备注:时间一般就默认的即可,现网基本没人动这个,太长更新不及时,太短占用CPU也不太好。

交换机MAC学习功能切换:

控制是否学习MAC地址并指定后续动作:泛洪/丢弃::forward  Forward packets,discard  Discard packets
命令:
#SW1
interface GigabitEthernet0/0/1
mac-address  learning  disable  action   discard 
这里的意思是不学习来自g0/1的源MAC地址并且收到数据包时找不到对应表项不转发泛洪

现象为PC1到PC2/3 不通,交换机也学不到任何mac地址

其他:

静态MAC地址:

最安全但是要手写条目多比较烦,就是手写静态MAC地址,不是手写的就丢弃
配置:接上边的禁止学习之后,禁止学习配置还在
#SW1
mac-address static aabb-cc00-0010 GigabitEthernet  0/0/1 vlan  1 
可以看到PC1到PC2/3通了,这样结合上边的禁止学习功能更加安全实用

限制接口的MAC地址学习数量:

配置:
#SW1
interface  GigabitEthernet  0/0/3 
mac-limit  maximum   3  alarm   enable  
#最多学习3个,超出告警
现象:
3个以内时都是正常:


超过三个后:


可以看到触发告警:

还可以加上动作(模拟器垃圾做不了)

还能基于vlan进行控制

二、MAC地址漂移

什么是MAC地址漂移?

MAC地址漂移是指:
      在同一个VLAN内,一个MAC地址有两个出接口,并且后学习到的出接口覆盖原出接口的现象。这是官方定义,通俗的讲,MAC地址漂移指的是MAC地址表项的出接口发生了变更

图文转自:知乎----作者:网工Fox,原链接:

https://zhuanlan.zhihu.com/p/345269149icon-default.png?t=N7T8https://zhuanlan.zhihu.com/p/345269149

  • MAC地址漂移是指交换机上一个VLAN内有两个端口学习到同一个MAC地址,后学习到的MAC地址表项覆盖原MAC地址表项的现象。同一个mac地址在不同地方学到了
  • 当一个MAC地址在两个端口之间频繁发生迁移时,即会产生MAC地址漂移现象。
  • 正常情况下,网络中不会在短时间内出现大量MAC地址漂移的情况。出现这种现象一般都意味着网络中存在环路,或者存在网络攻击行为。
  • 如图:


但是有的时候漂移是正常的:比如VRRP备设备切换为主设备时发送免费ARP;WLAN的漫游功能也会有漂移。

解决方法:
(实验部分:)

1、优先级部署:

       缺省时接口MAC地址学习的优先级均为0,数值越大优先级越高。当同一个MAC地址被两个个接口学习到后,接口MAC地址学习优先级高的会被保留,MAC地址学习优先级低的被覆盖。
拓扑图
配置之前可以看到攻击者会把主机顶下去造成网络故障:

ping同一个地址都能ping通
配置:
interface  g 0/0/1
mac-learning   priority   3 
可以看到PC2开始不通了,PC1通信正常

mac-address地址表也正常:


2、还可以拒绝相同的优先级:

相同优先级不准漂移,后来的不能覆盖之前的
配置:
#SW1
undo mac-learning  priority  0  allow-flapping   
现象:
先让PC1上线,再让攻击者:PC2上线,可以看到:
地址表正常:


PC1依然正常,PC2失败:

TEST----PC1
TEST----PC2

3、MAC地址漂移检测

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

根据检测做出相应动作:

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

mac-address flapping detection----#默认配置,华为交换机默认开启全局MAC地址漂移检测功能,因此缺省时交换机便会对设备上的所有VLAN进行MAC地址漂移检测。
当交换机检测到MAC地址漂移,在缺省情况下,它只是简单地上报告警,并不会采取其他动作。在实际网络部署中,可以根据网络需求,对检测到MAC地址漂移之后定义以下动作:

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

    其他:
    eNSP上是这个:好像有现象但是我这里做实验的时候bug了

    ​​​​

    还是以PPT上为准吧:
    [Switch2-GigabitEthernet0/0/1] mac-address flapping action error-down

在某些场景下,需要对某些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

配置命令:由于eNSP有的都不支持,就只放截图了看看就好。

display mac-address flapping record 可查看到漂移记录 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Cpp五条/article/detail/548410
推荐阅读
相关标签
  

闽ICP备14008679号