一、MAC地址表项分类:
1.1 动态表项:通过对帧内的源MAC进行学习而来,有老化时间
1.2 静态表项:由管理员手工配置,不会老化
1.3 黑洞表项:丢弃特定源MAC或目的MAC,不会老化
静态和黑洞表项不会被动态表项覆盖,而动态表项可以被静态和黑洞表项覆盖
二、MAC地址表安全功能
2.1 禁止MAC地址学习功能--可以限制非信任用户接入 (搭配表项2配置)
2.2 限制MAC地址学习数量--可以防止变化MAC地址攻击(搭配表项3配置)
2.3 端口安全--可阻止其他非信任的主机通过本端口与设备通信
2.4 MAC-Spoofing-Defend--一个端口学习的MAC不会再其他端口上学习
2.5 MAC地址防漂移--对于固定的上行设备,通过提供端口优先级,可防止伪造MAC攻击
2.6 MAC地址漂移检测功能--减少网络环路对设备的影响
2.7 丢弃全0非法MAC地址报文--网络中一些主机或设备发生故障时,会发送源或目的MAC全0报文
2.8 MAC地址刷新ARP功能--MAC地址表项端口发生变化,及时更新ARP表项
三、MAC表项添加
3.1 添加静态MAC表项
mac-address static 0000-1111-2222 g0/0/1 vlan 10
3.2 添加黑洞MAC表项
mac-address blackhole 0000-2222-3333
3.3 丢弃全0非法MAC地址报文功能
drop illegal-mac enable #丢弃全0非法MAC地址报文功能
3.4 禁止MAC地址学习功能 (端口和VLAN下配置 )
mac-address learning disable
3.5 限制端口MAC地址学习数量、配置告警
- mac-limit maximum 500
- mac-limit alarm enable/disable #启用/关闭 警告
四、MAC 安全案例
4.1 TOP简图
4.2 绑定PC1的MAC地址为静态MAC 绑定接口g0/0/1 绑定vlan1
[SW1]mac-address static 5489-9895-2b11 g0/0/1 vlan 1
4.3 将攻击者PC3 添加到MAC黑洞表项
[SW1]mac-address blackhole 5489-9846-4233
4.4 开启端口安全,防MAC泛洪攻击
- [SW1]port-group 1
- [SW1-port-group-1]group-member g0/0/1 to g0/0/24
- [SW1-port-group-1]port-security enable #开启端口安全
- [SW1-port-group-1]port-security protect-action shutdown #配置保护动作 (思科默认是shutdown)
- [SW1-port-group-1]port-security max-mac-num 2 #配置MAC地址学习数量2 (默认为1)
- [SW1-port-group-1]port-security aging-time 200 #配置老化时间(可选,默认不老化)
- [SW1-port-group-1]port-security mac-address sticky #把动态学习的MAC变成静态,先学先转
- [SW1-port-group-1]port-security mac-address sticky 0000-1111-2222 vlan1 #指定静态MAC转换为安全MAC