MAC地址表分类:
动态表项由接口通过对报文中的源MAC地址学习方式动态获取到,这类MAC地址有老化的时间,并且可以自己修改,老化时间越短,交换机对周边的网络变化越敏感,适合在网络拓扑变化比较环境中,老化时间越长,越适合在网络拓扑比较稳定的环境中
静态MAC地址和黑洞MAC地址(一种特殊的静态MAC地址)是没有老化时间的。黑洞MAC地址表项的功能是用于丢弃含有特定源MAC地址或目的MAC地址的数据帧(只要其中一个匹配就丢弃),我们可以将非信任用户的MAC地址配置为黑洞MAC地址,当设备收到目的的MAC或源MAC为黑洞MAC地址的报文时,直接丢弃。
MAC地址表的产生方式:
自动学习生成和手工配置,手工配置优先级大于自动学习的MAC地址。在MAC地址表已满的情况下,继续配置静态或黑洞MAC表,则系统的处理方式如下:
1.如果MAC地址表中存在对应MAC地址的动态MAC地址表项,则添加的静态或黑洞MAC地址表项时自动覆盖原来对应的动态MAC地址表项。(进行覆盖)
2. 如果MAC地址表中不混在对应MAC地址的动态MAC地址表项,将无法添加静态或黑洞MAC地址表项。(也就是不会将动态表项挤占)
MAC地址学习实验:
PC1配置:
PC2配置:
1.查看动态MAC地址表和静态MAC地址表:
首先我们用PC1pingPC2:
在交换机上查看MAC地址表项:(学习到了两个动态的mac地址表项)
然后将PC1的MAC地址静态添加到MAC地址上:
mac-address static 5489-9857-0BF2 GigabitEthernet 0/0/1 vlan 1 //将PC1的mac地址绑定在g0/0/1口和vlan1上然后查看其对应的MAC地址表,模拟器和MAC地址其他类型的表项和动态地址表项是分开表示的,我们可以看到其对应的地址从原来的动态类型变为了静态的类型。
2.黑洞静态MAC地址表项的配置:将PC2的MAC地址配置成黑洞MAC地址:
mac-address blackhole 5489-98ED-616D vlan 1 //绑定到vlan1
查看MAC地址表:(配置成功了一条黑洞MAC)
然后我们进行ping测试,按照理论是不会通的:(不通,说明配置成功)
其他功能配置:
1.配置动态条目地址老化的功能:
mac-address aging-time 600 //配置动态MAC表项的老化时间,取值范围为0和10—1000000的整数秒,0代表MAC地址表项不老化,缺省情况下,动态MAC表项的老化时间为300s
2.MAC地址表的学习功能:
如果想提高网络的安全性,防止设备学习到非法的MAC地址,可以选择关闭设备上指定接口或者指定vlan中所有接口的MAC地址学习的功能,这样设备将不会从这些接口上学习新的MAC地址,首先我们清空mac地址表,然后查看在g0/0/1接口上开启禁止学习功能:mac-address learning disable action forward/discard 。discard(默认方式),指的是收到报文后,对报文目的的MAC地址进行匹配,当于MAC地址表中的某个表项匹配时,则对该报文进行转发,否则丢弃该报文。forward,指的是,收到报文后,直接按照报文中的目的MAC地址进行转发(如果没有目的MAC地址就泛洪),默认是这种方式。现在我们用PC1pingPC2,然后查看MAC地址表:g0/0/1端口没有学习到,g0/0/2端口因为没有开启限制功能成功学习到表项,说明配置成功
3.设置接口MAC地址的学习数量:
我们可以基于接口或者vlan来限制对一些频繁遭到攻击的接口或者vlan限制接口可以学习到MAC地址数量,当超过限制的时候,源MAC地址为新MAC地址的报文继续被转发,但是MAC地址表项不记录。
进入接口下或进入vlan视图下:mac-limit maximum 500 //0表示不限制数量,默认进行限制。