07-MAC地址表管理操作
本章节下载 (150.34 KB)
& 说明:
本章节内容只涉及静态、动态和黑洞MAC地址表项的管理,有关组播MAC地址表项管理的内容,请参见“组播协议”部分的介绍。
为了转发报文,设备需要维护MAC地址表。MAC地址表的表项包含了与该设备相连的设备的MAC地址、与此设备相连的设备的接口号以及所属的VLAN ID。MAC地址表中的表项包括静态表项和动态表项,其中静态表项是由用户配置的;动态表项包括用户配置的以及设备学习得来的。静态表项不会被老化掉,而动态表项会被老化掉。
设备学习MAC地址的方法如下:如果从某接口(假设为接口A)收到一个数据帧,设备就会分析该数据帧的源MAC地址(假设为MAC-SOURCE)并认为目的MAC地址为MAC-SOURCE的报文可以由接口A转发;如果MAC地址表中已经包含MAC-SOURCE,设备将对该表项进行更新;如果MAC地址表中尚未包含MAC-SOURCE,设备则将这个新MAC地址以及该MAC地址对应的接口A作为一个新的表项加入到MAC地址表中。
& 说明:
在设备学习MAC地址时,用户手工配置的静态MAC地址表项不能被学习中获得的动态MAC地址覆盖,而动态MAC地址表项可以被静态MAC地址覆盖。
设备在转发报文时,根据MAC地址表项信息,会采取以下两种转发方式:
l 单播方式:当MAC地址表中包含与报文目的MAC地址对应的表项时,设备直接将报文从该表项中的转发出接口发送。
l 广播方式:当设备收到目的地址为全F的报文,或MAC地址表中没有包含对应报文目的MAC地址的表项时,设备将采取广播方式将报文向除接收接口外的所有接口进行转发。
图1-1 设备的MAC地址表项
管理员根据实际情况可以手工添加、修改或删除MAC地址表中的表项。
表1-1 配置MAC地址表项
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
添加/修改MAC地址表项 |
mac-address blackhole mac-address vlan vlan-id |
必选 |
mac-address { dynamic | static } mac-address interface interface-type interface-number vlan vlan-id |
||
进入以太网端口视图 |
interface interface-type interface-number |
- |
添加/修改该接口下的MAC地址表项 |
mac-address { dynamic | static } mac-address vlan vlan-id |
必选 |
& 说明:
不能在聚合端口上配置静态和动态MAC地址表项。
有时为了保证设备的安全,需要关闭MAC地址学习功能。常见的危及设备安全的情况是:黑客使用大量源MAC地址不同的报文攻击设备,导致设备MAC地址表资源耗尽,造成设备无法根据网络的变化更新MAC地址表。关闭MAC地址学习功能可以有效防止这种攻击。
关闭全局的MAC地址学习功能的同时也就关闭了全部端口的MAC地址学习功能。
表1-2 关闭全局MAC地址学习功能
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
关闭全局的MAC地址的学习功能 |
mac-address mac-learning disable |
必选 缺省情况下,开启全局的MAC地址学习功能 |
& 说明:
关闭MAC地址学习功能后,已经学习到的MAC地址表项将继续有效直至老化。
在开启全局的MAC地址学习功能的前提下,用户可以关闭设备上的单个端口或者端口组的MAC地址学习功能。
表1-3 关闭接口或端口组的MAC地址学习功能
操作 |
命令 |
说明 |
|
进入系统视图 |
system-view |
- |
|
开启全局的MAC地址学习功能 |
undo mac-address mac-learning disable |
可选 缺省情况下,开启全局的MAC地址学习功能 |
|
进入以太网端口或者端口组视图 |
进入以太网端口视图 |
interface interface-type interface-number |
二者必选其一 进入以太网端口视图后,下面进行的配置只在当前端口生效;进入端口组视图后,下面进行的配置将在端口组的所有端口生效 |
进入端口组视图 |
port-group { aggregation agg-id | manual port-group-name } |
||
关闭以太网端口或端口组的MAC地址学习功能 |
mac-address mac-learning disable |
必选 缺省情况下,开启以太网端口或端口组的MAC地址学习功能 |
& 说明:
l 关闭MAC地址学习功能后,已经学习到的MAC地址表项将继续有效直至老化。
l 端口组相关的配置请参考“端口基本配置”部分的介绍。
如果用户配置的老化时间过长,设备可能会保存许多过时的MAC地址表项,从而耗尽MAC地址表资源,导致设备无法根据网络的变化更新MAC地址表。如果用户配置的老化时间太短,设备可能会删除有效的的MAC地址表项,可能导致设备广播大量的数据报文,影响设备的运行性能。所以用户需要根据实际情况,配置合适的老化时间来有效的实现MAC地址老化功能。
表1-4 配置系统MAC地址老化时间
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
配置MAC地址动态表项的老化时间 |
mac-address timer { aging seconds | no-aging } |
可选 缺省情况下,MAC地址老化时间为300秒 |
& 说明:
MAC地址的老化时间作用于全部端口上,地址老化只对动态的(设备学习到的或者用户配置的动态的)MAC地址表项起作用。
通过配置以太网端口或端口组最多可以学习到的MAC地址数,用户可以控制设备维护的MAC地址表的表项数量。如果MAC地址表过于庞大,可能导致设备的转发性能下降。当端口学习到的MAC地址数达到配置的最大值时,该端口将不再对MAC地址进行学习。
表1-5 配置以太网端口或端口组最多可以学习到的MAC地址数
操作 |
命令 |
说明 |
|
进入系统视图 |
system-view |
- |
|
进入以太网端口或者端口组视图 |
进入以太网端口视图 |
interface interface-type interface-number |
二者必选其一 进入以太网端口视图后,下面进行的配置只在当前端口生效;进入端口组视图后,下面进行的配置将在端口组的所有端口生效 |
进入端口组视图 |
port-group { aggregation agg-id | manual port-group-name } |
||
配置以太网端口或端口组最多可以学习到的MAC地址数 |
mac-address max-mac-count count |
必选 缺省情况下,没有配置以太网端口或端口组最多可以学习到的MAC地址数 |
& 说明:
当某个端口处于跨单板的聚合组中时,在此端口上配置的最大MAC地址学习数量不能对整个聚合组生效,即聚合组的MAC地址学习数量不受端口上配置的限制。
在完成上述配置后,在任意视图下执行display命令可以显示配置后MAC地址表管理的运行情况,通过查看显示信息验证配置的效果。
表1-6 MAC地址表管理显示和维护
操作 |
命令 |
显示MAC地址表信息 |
display mac-address blackhole [ vlan vlan-id ] [ count ] |
display mac-address [ mac-address [ vlan vlan-id ] | [ dynamic | static ] [ interface interface-type interface-number ] [ vlan vlan-id ] [ count ] ] |
|
显示MAC地址表动态表项的老化时间 |
display mac-address aging-time |
显示系统或接口MAC地址的学习状态 |
display mac-address mac-learning [ interface-type interface-number ] |
用户通过Console口登录到设备,配置MAC地址表管理功能。要求配置设备上动态MAC地址表项的老化时间为500秒,在VLAN1中的以太网端口Ethernet2/0/1上添加一个静态地址表项00e0-fc35-dc71。
# 增加一个静态MAC地址表项。
<Sysname> system-view
[Sysname] mac-address static 00e0-fc35-dc71 interface ethernet 2/0/1 vlan 1
# 配置动态MAC地址表项的老化时间为500秒。
[Sysname] mac-address timer aging 500
# 查看以太网端口Ethernet2/0/1上的MAC地址表信息。
[Sysname] display mac-address interface ethernet 2/0/1
MAC ADDR VLAN ID STATE PORT INDEX AGING TIME(s)
00e0-fc35-dc71 1 Config static Ethernet 2/0/1 NOAGED
--- 1 mac address(es) found ---
不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!