14-MAC地址转发表管理操作
本章节下载 (213.65 KB)
目 录
& 说明:
本章节内容只涉及静态和动态MAC地址表项的管理,有关组播MAC地址表项管理的内容,请参见《H3C S7500 系列以太网交换机 操作手册》中“组播协议”部分。
为了快速转发报文,以太网交换机需要维护MAC地址转发表。MAC地址转发表是一张基于端口的二层转发表,是以太网交换机实现二层报文快速转发的基础。MAC地址转发表的表项包括:
l 目的MAC地址
l 端口所属的VLAN ID
l 转发端口号
以太网交换机通过查找MAC地址转发表得到二层报文的转发端口号,从而实现二层报文的快速转发。
MAC地址转发表中的动态表项(非手工配置)是由以太网交换机学习得来的。以太网交换机学习MAC地址的过程如下:
如果从某端口(假设为端口1)收到一个数据帧,以太网交换机就会分析该数据帧的源MAC地址(假设为MAC-SOURCE)并认为目的MAC地址为MAC-SOURCE的报文可以由端口1转发。
l 如果MAC地址转发表中已经包含MAC-SOURCE,交换机将对应表项进行更新。
l 如果MAC地址转发表中尚未包含MAC-SOURCE,交换机则将这个新MAC地址(以及该MAC地址对应的转发端口)作为一个新的表项加入到MAC地址转发表中。
图1-1 以太网交换机利用MAC地址转发表转发报文
完成对报文的源地址学习过程后,交换机开始转发报文:
l 对于目的MAC地址已经存在于MAC地址转发表中的报文,系统将直接使用硬件转发。
l 对于目的MAC地址没有存在于MAC地址转发表中的报文,系统将在接收端口所在VLAN内向除接收端口外的所有端口转发该报文,通常称为对该报文进行广播操作。
在对该报文进行广播操作之后,交换机根据是否收到应答报文会采取以下的操作:
l 如果交换机收到目的设备对此广播报文的回应,表示报文已正常发送至目的设备。在应答报文中将包含目的设备的MAC地址,交换机通过地址学习将目的设备的MAC地址加入到MAC地址转发表中。之后去往同一目的MAC地址的报文,就可以利用该新增的MAC地址表项直接进行转发了。
l 如果交换机没有收到目的设备的回应,表示目的设备不可达或目的设备虽然收到报文但没有回复。这种情况下,交换机仍将无法学习到目的设备的MAC地址。因此,交换机在下一次转发目的为该MAC地址的报文时,依然以广播方式进行发送。
以太网交换机的MAC地址转发表是有容量限制的,为了最大限度利用地址转发表资源,以太网交换机利用老化机制更新MAC地址转发表,即:如果在老化时间内没有收到来自某网络设备的报文,交换机就会把与此设备相关的MAC地址表项删除。MAC地址老化对静态MAC地址表项无效。
用户可以根据网络实际情况人工配置(添加或修改)MAC地址表项,添加或修改的表项可以是静态的表项或者动态的表项。
& 说明:
交换机通过MAC地址学习机制只能学习到单播地址,对于源MAC地址是广播地址的报文,交换机将直接丢弃。
根据自身特点和配置方式等的不同,MAC地址表项可以分为两类:
l 静态MAC地址表项:也称为“永久地址”,由用户手工添加和删除,不会随着时间老化。对于一个设备变动较小的网络,手工添加静态地址表项可以减少网络中的广播流量。
l 动态MAC地址表项:指可以按照用户配置的老化时间而老化掉的MAC地址表项,交换机可以通过MAC地址学习机制或通过用户手工建立的方式添加动态MAC地址表项。
MAC地址表项的分类与特点如表1-1所示。
表1-1 MAC地址表项的分类与特点
MAC地址 |
配置方式 |
有无老化时间 |
设备复位后是否被保留(在保存配置的情况下) |
静态MAC地址表项 |
用户手工配置 |
无 |
是 |
动态MAC地址表项 |
由设备通过MAC地址学习机制生成或者由用户手工配置 |
有 |
否 |
表1-2 MAC地址转发表配置任务简介
配置任务 |
说明 |
详细配置 |
设置MAC地址表项 |
必选 |
|
设置系统MAC地址老化时间 |
可选 |
|
设置以太网端口最多可以学习到的MAC地址数量 |
可选 |
|
禁止端口的MAC地址学习功能 |
可选 |
|
配置单板芯片间的MAC地址表项同步功能 |
可选 |
|
设置对目的MAC为设备桥MAC报文的处理方式 |
可选 |
管理员根据实际情况可以人工添加、修改或删除MAC地址转发表中的表项。可以删除与某个端口相关的所有MAC地址表项(只能是单播地址),也可以选择删除某类MAC地址表项如动态表项、静态表项。
表1-3 设置MAC地址表项
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
添加MAC地址表项 |
mac-address { static | dynamic } mac-address interface interface-type interface-number vlan vlan-id |
必选 |
注意:
在添加MAC地址转发表项时,命令中interface参数指定的端口必须属于vlan参数指定的VLAN,否则将添加失败。
设置合适的老化时间可以有效实现MAC地址的老化功能。用户设置的老化时间过长或者过短,都可能导致以太网交换机广播大量找不到目的MAC地址的数据报文,影响交换机的运行性能。
l 如果用户设置的老化时间太长,以太网交换机可能会保存许多过时的MAC地址表项,从而耗尽MAC地址转发表资源,导致交换机无法根据网络的变化更新MAC地址转发表。
l 如果用户设置的老化时间太短,以太网交换机可能会删除有效的MAC地址表项,降低转发效率。
表1-4 设置系统MAC地址老化时间
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
设置MAC地址表项的老化时间 |
mac-address timer { aging age | no-aging } |
必选 缺省情况下,MAC地址表项的老化时间为300秒 |
此命令为系统视图命令,作用于全部端口上。地址老化只对动态的(学习到的或者用户配置可老化的)MAC地址表项起作用。
一般情况下,推荐使用老化时间的缺省值300秒。使用参数no-aging时表示不对MAC地址表项进行老化。
以太网交换机可以利用MAC地址学习功能获取与某端口相连的网段上各网络设备的MAC地址。对于发往这些MAC地址的报文,以太网交换机可以直接使用硬件转发。如果MAC地址表过于庞大,可能导致以太网交换机的转发性能的下降。
通过设置以太网端口最多学习到的MAC地址数,用户可以控制以太网交换机维护的MAC地址表的表项数量。如果用户设置的值为count,则该端口学习到的MAC地址条数达到count时,该端口将不再对MAC地址进行学习。
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入以太网端口视图 |
interface interface-type interface-number |
- |
设置端口最多可以学习到的MAC地址数量 |
mac-address max-mac-count count |
必选 缺省情况下,没有配置对端口学习MAC地址数量的限制 |
通过以下配置,用户可以禁止当前端口的MAC地址学习功能,以便对网络安全进行更好地控制。
表1-6 禁止端口的MAC地址学习功能
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进图以太网端口视图 |
interface interface-type interface-number |
- |
禁止当前端口的MAC地址学习功能 |
mac-address mac-learning disable |
必选 缺省情况下,端口的MAC地址学习功能处于使能状态 |
& 说明:
l mac-address mac-learning disable命令不能与以太网端口视图下的802.1x相关命令同时使用。
l mac-address mac-learning disable与mac-address max-mac-count命令不能同时使用。
当单板上存在多块芯片时,各芯片只能学习到由自身处理的数据流中的MAC地址。如果某芯片接收到目的MAC地址表项存在于另一芯片的报文时,将对该报文进行广播操作。
通过配置单板芯片间MAC地址表项同步功能,可以使各芯片间的MAC地址表项信息得以同步,减少对未知报文的广播操作,减轻交换机处理负担,提高网络利用率。
表1-7 配置单板芯片间的MAC地址表项同步功能
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
开启单板芯片间的MAC地址表项同步功能 |
mac-address learning synchronization |
可选 缺省情况下,关闭单板芯片间的MAC地址表项同步功能 |
通过以下命令,用户可以设置当交换机收到目的MAC地址为设备桥MAC地址的报文时,是否上传到CPU进行处理。
表1-8 设置对目的MAC为设备桥MAC报文的处理方式
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
允许目的MAC地址为设备桥MAC地址的报文上传到CPU进行处理 |
bridgemactocpu enable |
可选 缺省情况下,系统禁止目的MAC地址为设备桥MAC地址的报文上传到CPU进行处理 |
禁止目的MAC地址为设备桥MAC地址的报文上传到CPU进行处理 |
bridgemactocpu disable |
可选 |
完成上述配置后,在任意视图下执行display命令,可以显示配置MAC地址转发表后的运行情况。通过查看显示信息,用户可以验证配置的效果。
表1-9 MAC地址转发表管理配置显示
操作 |
命令 |
说明 |
显示地址表信息 |
display mac-address [ display-option ] |
display命令可以在任意视图下执行 |
显示地址表动态表项的老化时间 |
display mac-address aging-time |
用户通过Console口登录到交换机,配置地址表管理。要求设置交换机上动态MAC地址表项的老化时间为500秒,在VLAN1中的Ethernet 2/0/2端口添加一个静态地址000f-e20f-dc71。
# 进入交换机系统视图。
<H3C> system-view
[H3C]
# 增加MAC地址(指出所属VLAN、端口、状态)。
[H3C] mac-address static 000f-e20f-dc71 interface Ethernet 2/0/2 vlan 1
# 设置交换机上动态MAC地址表项的老化时间为500秒。
[H3C] mac-address timer aging 500
# 在系统视图下查看MAC地址配置。
[H3C] display mac-address interface Ethernet 2/0/2
MAC ADDR VLAN ID STATE PORT INDEX AGING TIME(s)
000f-e20f-dc71 1 Config static Ethernet2/0/2 NOAGED
000f-e20f-5503 1 Learned Ethernet2/0/2 AGING
000f-e20f-5548 1 Learned Ethernet2/0/2 AGING
--- 3 mac address(es) found on port Ethernet2/0/2 ---
不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!