一、概述 1、MAC地址表项 MAC地址表项记录相邻设备的MAC地址、接口号和所属VLAN ID,注意与ARP表的区别(ARP 是IP与MAC对应关系,通过IP解析MAC)。 静态MAC表项优先级高于动态MAC地址表项 。 在删除静态、动态、黑洞MAC地址表项时如果不指定接口或VLAN参数,将删除全部接口或VLAN下的MAC地址表项。 1、动态表项: 自动生成,会老化,重启设备后丢失。 2、静态表项: 手工配置,不会老化,重启设备后不会丢失。 3、黑洞表项: 手工配置,不会老化,重启设备后不会丢失。 黑洞表项是特殊的静态MAC地址表项,丢弃含有特定源MAC地址或目的的MAC地址的数据帧; 防止无用的MAC地址表项占用MAC地址表;将非信任的MAC配置为黑洞MAC地址,当设备收到目的或源MAC地址为黑洞里的MAC时直接丢弃,防止网络攻击。 - N0 |+ z8 F5 Q, j4 ^( L; ]( w; v
在MAC地址已满的情况下配置静态或黑洞MAC表时,如果表中存在对应的要配置的表则自动覆盖;如果不存在则无法添加静态或黑洞MAC表 在删除MAC地址表项时必须指定接口、vlan,否则会删除所有接口或vlan下的表项。
1 v& z$ X' ~7 ?. P. @* {; |* X8 H* r
二、MAC地址表基本功能配置 具体配置: 1、接口、vlan静态绑定MAC地址(添加MAC地址表项) [Huawei]mac-address static 5489-98b9-6b46 GigabitEthernet 0/0/10 vlan 10 绑定后如果出现自动学习的MAC地址与绑定的冲突则丢弃自动学习的;防止一些关键设备(如服务器、上行设备)被非法恶意修改MAC攻击,因为静态MAC地址表项高于动态MAC地址表项。
6 ~; S8 Y+ J$ @6 z. s' p3 I9 ~2、使能黑洞MAC地址 [Huawei]mac-address blackhole 5489-98ee-3943 vlan 10 将Mac地址添加到黑洞地址后,收到含有这些地址的报文直接被丢弃
) V# G: j8 z) Y2 @% \( Q, W% P! L3、配置动态MAC地址老化时间(缺省300S) [Huawei]mac-address aging-time 200 防止Mac地址表爆炸式增长 ( Y- ?! {" Z9 J1 n4 ?
4、禁止MAC地址学习 [Huawei-GigabitEthernet0/0/2]mac-address learning disable action ? discard Discard packets #与静态MAC地址表匹配则通过,否则丢弃 forward Forward packets #不与静态MAC地址表匹配,直接按照报文中的目的MAC地址转发(缺省配置) [Huawei-vlan100]mac-address learning disable 有两种情况,一是禁止添加MAC地址表项(节省内存、防止攻击等),二是禁止不匹配MAC的数据通过
# ]; ^" O* G- Y' H5 c# R5、限制MAC地址学习数量(接口或vlan配置) [Huawei-GigabitEthernet0/0/10]mac-limit maximum 2 [Huawei-GigabitEthernet0/0/10]mac-limit alarm enable # 使能告警功能(缺省使能) 配置后新MAC地址的报文继续转发但MAC地址表项不记录;防止变换MAC攻击,节省内存容量
/ n4 ^! d+ P3 j7 C2 W" I: G$ F7 s9 U$ G) T" ]. U" x
将设备端口学习到的MAC地址变成安全MAC地址(动态Mac地址和sticky Mac地址)以阻止除安全MAC和静态Mac之外(设置学习数量上限)备通信。 端口安全与以下配置冲突需先关闭以下功能: 1、VLAN功能基于端口的Mac学习限制功能; 2、MAC认证功能; 3、02.1X认证功能; 4、DHCP spooping的Mac安全功能; 5、MUX vlan功能。
- l! t, B( Z, z$ R1、安全动态MAC security是将接口学习到的MAC地址转换为安全动态的Mac或sticky Mac地址,当学习到的MAC数量达到上限后不再学习【可在一定程度上提供安全性(因为非信任的MAC地址在学习到达上限前也可被学习到)】,只允许这些MAC和设备通信。 默认情况下安全动态MAC地址不会被老化(可配置老化时间);设备重启后安全动态MAC会丢失,需要重新学习。 具体配置: 1、使能端口安全功能(只有使能后才可配置安全保护动作、安全动态MAC学习数量等) [Huawei-GigabitEthernet0/0/10]port-security en
: `2 g6 Y3 [ l2 l) G2、配置端口安全动态学习MAC地址最大数量(默认为1) [Huawei-Ethernet0/0/2]port-security max-mac-num ? INTEGER<1-4096> Maximum mac address can learn e. Z$ L; s/ t
3、配置端口的安全保护动作(默认为restrict) [Huawei-Ethernet0/0/2]port-security protect-action ? protect Discard packets #丢弃 restrict Discard packets and warning #丢弃并告警 shutdown Shutdown # 关闭接口,需要手动恢复 4 B, H3 t: ^! [) l4 h" Y
4、接口学习到的安全动态MAC老化时间(缺省不老化) [Huawei-GigabitEthernet0/0/10]port-security aging-time 600 type ? absolute Absolute time(绝对老化时间) inactivity Inactivity time(相对老化时间 & H8 ]8 q! |+ Q. j- k
二、sticky MAC(粘性MAC)功能 与安全动态MAC地址一样,将接口学习到的MAC地址转换为安全动态的Mac或sticky Mac地址,当学习到的MAC数量达到上限后不再学习,只允许这些MAC地址和设备通信; 不同点: 一、永远不会被老化; 二、MAC地址表项设备重启后不会丢失,无需重新学习; 三、MAC地址表项既可动态学习获得,也可手工配置;适合于关键设备服务器或上行设备。 . S. q9 v0 {+ u' e) p
具体配置: 1、使能端口安全功能 [Huawei-GigabitEthernet0/0/10]port-security en 2、使能接口sticky MAC功能(将接口学习到的动态MAC转换为静态sticky MAC,相当于静态MAC) [Huawei-GigabitEthernet0/0/11]port-security mac-address sticky 3、手动配置sticky MAC地址表项 [Huawei-GigabitEthernet0/0/11]port-security mac-address sticky 5489-982c-1632 vlan 20 4、其它参数与安全动态MAC配置一样 ( {9 N% |1 n3 @
三、MAC地址防漂移 MAC漂移就是一个接口上学习到MAC地址在同一vlan中的另一个接口上也被学习到,这样后面学习到的MAC地址表项就会覆盖原来的表项。原因有这几个: 一是网络出现环网;二是仿冒合法MAC攻击 配置后可以保证一个MAC表项仅在一个正确的接口上学习到。有两种方式实现: 一是在接口上配置不同MAC学习优先级,高优先级表项会覆盖低优先级MAC表项; 二是配置不允许相同优先级(默认相同优先级)MAC表项发生漂移(覆盖),这样接口将不再学习相同的MAC地址。 但这样有个负面影响,一旦设备如服务器关机后,可能有个如伪造的相同MAC被学习到导致设备无法正常上线。 具体配置: 1、配置MAC地址学习优先级(数值越大优先级越高,默认为0) [Huawei-GigabitEthernet0/0/15]mac-learning priority 3 2、配置MAC防漂移检测(基于全局或vlan) Vlan下配置 [Huawei-vlan10]loop-detect eth-loop ? alarm-only Only alarm when the loop occurs block-mac Block the mac when the loop occurs block-time Block time 全局配置(有些无法模拟) [Huawei]mac-address flapping detection # 使能漂移检测功能 [Huawei]mac-address flapping detection exclude vlan 10 #排除需要检测的vlan Huawei]mac-address flapping detection vlan 5 security-level [ high middle low ]#漂移检测安全级别 [Huawei]mac-address flapping action [quit-vlan ;error-down] #检测到发送漂移后的动作
2 |# ~. U6 N D: s四、MAC-spoofing-defend功能 MAC防欺骗保护功能与MAC防漂移一样,最终目的是在一个接口上学习的MAC地址不允许在其他接口上学习到,只是所采用的方法不一样而已。 将接口配置为信任接口,以使信任接口学习到的MAC在其他接口上不会在学习到。必须在全局和接口同时使能。 具体配置: [Huawei]mac-spoofing-defend enable [Huawei-GigabitEthernet0/0/12]mac-spoofing-defend enable }$ K- S; Q: Y6 t4 m% B. B
五、丢弃全零MAC报文功能 网络中的一些设备或主机发送故障时,往往会向交换机发送源MAC或目的MAC为0的全0报文 [Huawei]drop illegal-mac enable # 缺省为使能 [Huawei]drop illegal-mac alarm # 收到全0报文告警,只告警一次 Y) k0 X3 S0 j1 g" {8 A
六、MAC刷新ARP功能 设备连接接口发生变化后立即更新ARP表项,无需等待老化(老化时间内是错误的arp通信),默认为使能;只对动态arp生效,静态arp不生效 [Huawei]mac-address update arp & C- }4 b! X3 F1 P$ ]$ u
七、配置端口桥功能 缺省情况下设备收到同源同宿报文判断为非法报文直接丢弃。但有时又确实存在同源通宿的情况: 一、设备下挂有不具备二层转发能力的设备(如集线器),这时候需要将报文上送到二层设备进行转发 二、设备连接了启动多个虚拟机的服务器,如果在服务器内部完成数据转发会影响服务器性能和数据交换机速度,通常也是上送到二层设备进行交换。 [Huawei-GigabitEthernet0/0/12]port bridge enable . a9 b7 o. b, Q% \! f" G6 T
|