交换机在转发数据时,需要根据MAC地址表来做出相应转发,如果目标主机的MAC地址不在表中,交换机将收到的数据包在所有活动接口上广播发送。当交换机上的接口状态变成UP之后,将动态从该接口上学习MAC地址,并且将学习到的MAC地址与接口相对应后放入MAC地址表。
交换机的MAC地址表除了动态学习之外,还可以静态手工指定,并且在指定MAC地址时,还可以指定在某个VLAN的某个接口收到相应的MAC后,将数据包作丢弃处理。
注:交换机上,一个接口可以对应多个MAC地址,地址的数量无上限,但不超过交换机所支持的MAC地址最大数量。
一个MAC地址可以同时出现在交换机的多个接口上,但此特性并不被所有型号的交换机支持,在某些型号的交换机上,一个MAC地址只能出现在一个接口上,如果出现在另外一个接口上,将会报错,并且数据转发也会出错。
1.查看交换机MAC地址表
(1)查看接口F0/1的MAC地址表
Switch#sh mac-address-table interface f0/1
Mac Address Table
-------------------------------------------
Vlan Mac Address Type Ports
---- ----------- -------- -----
2 0013.1a2f.0680 DYNAMIC Fa0/1
Total Mac Addresses for this criterion: 1
说明:交换机从F0/1上学习到了MAC地址0013.1a2f.0680,并且说明是动态学习到的。
2.手工静态指定MAC地址
(1)手工静态指定MAC地址
Switch(config)#mac-address-table static 0013.1a2f.0680 vlan 1 interface f0/2
说明:指定VLAN 1的接口F0/2的MAC地址为0013.1a2f.0680。
(2)查看接口F0/2的MAC地址表
Switch#sh mac-address-table interface f0/2
Mac Address Table
-------------------------------------------
Vlan Mac Address Type Ports
---- ----------- -------- -----
1 0013.1a2f.0680 STATIC Fa0/2
1 0013.1a7f.a4a0 DYNAMIC Fa0/2
Total Mac Addresses for this criterion: 2
说明:接口F0/2上除了动态学习到的MAC地址之外,还有静态手工指定的地址。
(3)指定丢弃某个MAC地址
Switch(config)#mac-address-table static 0013.1a2f.0680 vlan 2 drop
说明:此配置将使源MAC为0013.1a2f.0680的数据包在VLAN 2被丢弃,但在别的VLAN通信正常。
3.MAC地址老化时间(aging-time)
交换机在一个接口上学习到MAC地址之后,该MAC与接口的映射并不会永远被保存在MAC地址表中,除非是手工静态指定的。当一台主机从某个接口转移后,交换机再将目标MAC为该主机的数据从该接口发出去是毫无意义的,所以MAC地址在MAC地址表中是有最大停留时间的,称为老化时间(aging-time),当相应MAC地址在超出老化时间后还没有数据传输时,该MAC地址将从表中被清除。默认的MAC地址老化时间为300秒(5分钟)。
(1)修改MAC地址的老化时间
说明:只能针对VLAN作修改
Switch(config)#mac-address-table aging-time 60 vlan 1
说明:将VLAN 1的MAC地址老化时间改为60秒。
(2)查看MAC地址的老化时间
Switch#sh mac-address-table aging-time
Global Aging Time: 300
Vlan Aging Time
---- ----------
1 60
2 300
3 300
4 300
说明:可以看到,VLAN 1的MAC地址老化时间为60秒,其它VLAN保存默认300秒。
交换机自身MAC地址
以太网中,每一个节点,都需要一个MAC地址,而以太网交换机可以与多个终端连接,也就有多个节点,因此,交换机上也会有多个MAC地址存在,如交换机的每个接口都有一个MAC地址,包含物理接口和SVI接口。除此之外,还有一个MAC地址是用来表示整台交换机的。
注:都知道2层交换机的VLAN 1为管理VLAN,一个表示整台交换机的MAC地址通常就是VLAN 1的MAC地址,但这种情况又需要根据交换机型号而定,并不适用于任何型号的交换机。
某些型号的交换机,所有VLAN的SVI接口MAC地址全部相同,但某些型号却是不同的,但是连续的。
1.查看交换机的MAC地址
(1)查看表示整台交换机的MAC地址
Switch#sh version
(输出被省略)
512K bytes of flash-simulated non-volatile configuration memory.
Base ethernet MAC Address : 00:1A:6C:6F:FB:00
Motherboard assembly number : 73-9897-06
Power supply part number : 341-0097-02
Motherboard serial number : CAT10475C57
Power supply serial number : AZS104407JE
Model revision number : D0
Motherboard revision number : A0
Model number : WS-C3560-24TS-S
System serial number : CAT1047RJNU
Top Assembly Part Number : 800-26160-02
Top Assembly Revision Number : C0
Version ID : V02
CLEI Code Number : COMMG00ARB
Hardware Board Revision Number : 0x01
Switch Ports Model SW Version SW Image
------ ----- ----- ---------- ----------
* 1 26 WS-C3560-24TS 12.2(35)SE1 C3560-ADVIPSERVICESK
说明:表示整台交换机的MAC地址为00:1A:6C:6F:FB:00。
(2)查看物理接口的MAC地址
Switch#sh int f0/1
FastEthernet0/1 is up, line protocol is up (connected)
Hardware is Fast Ethernet, address is 001a.6c6f.fb03 (bia 001a.6c6f.fb03)
(输出被省略)
说明:可以看到,物理接口的MAC地址是连续的,但无论什么型号的交换机,物理接口的MAC地址一定是不同的。
(3)查看SVI接口的MAC地址
Switch#sh int vlan 1
Vlan1 is up, line protocol is up
Hardware is EtherSVI, address is 001a.6c6f.fb40 (bia 001a.6c6f.fb40)
(输出被省略)
Switch#sh int vlan 2
Vlan2 is up, line protocol is up
Hardware is EtherSVI, address is 001a.6c6f.fb41 (bia 001a.6c6f.fb41)
(输出被省略)
说明:可以看到,交换机SVI接口的MAC地址是连续的,但某些型号的交换机,所有SVI接口的MAC地址全部是相同的。
本文转自zcm8483 51CTO博客,原文链接:http://blog.51cto.com/haolun/991593