• 产品与解决方案
  • 行业解决方案
  • 服务
  • 支持
  • 合作伙伴
  • 新华三人才研学中心
  • 关于我们

02 二层技术-以太网交换命令参考

目录

04-MAC地址表命令

本章节下载 04-MAC地址表命令  (153.72 KB)

04-MAC地址表命令


1 MAC地址表配置命令

说明

·     MAC地址表中对于接口的相关配置,目前只能在二层以太网端口以及二层聚合接口等二层接口上进行。

·     本章节内容只涉及单播的静态、动态、黑洞MAC地址表项的配置。有关静态组播MAC地址表项的相关介绍和配置内容,请参见“IP组播配置指导”中的“IGMP Snooping”和“MLD Snooping”。

 

1.1  MAC地址表配置命令

1.1.1  display mac-address

【命令】

display mac-address [ mac-address [ vlan vlan-id ] | [ [ dynamic | static ] [ interface interface-type interface-number ] | blackhole ] [ vlan vlan-id ] [ count ] ] [ | { begin | exclude | include } regular-expression ]

【视图】

任意视图

【缺省级别】

1:监控级

【参数】

blackhole:显示黑洞MAC地址表项。黑洞MAC地址表项没有老化时间,可以添加/删除,当报文的目的MAC地址与黑洞MAC地址表项匹配后该报文被丢弃。

vlan vlan-id:显示指定VLAN的MAC地址表项。vlan-id的取值范围为1~4094。

count:显示MAC地址表项的数量。如果配置本参数,将仅显示符合条件的(由count前面的参数决定)MAC地址表项的数量,而不显示MAC地址表项的具体内容。

mac-address:显示指定MAC地址的MAC地址表项,mac-address的格式为H-H-H。

dynamic:显示动态MAC地址表项。动态MAC地址表项有老化时间。

static:显示静态MAC地址表项。静态MAC地址表项没有老化时间。

interface interface-type interface-number:显示指定接口的MAC地址表项。interface-type interface-number用来指定接口的类型和编号。

|:使用正则表达式对显示信息进行过滤。有关正则表达式的详细介绍,请参见“基础配置指导”中的“CLI”。

begin:从包含指定正则表达式的行开始显示。

exclude:只显示不包含指定正则表达式的行。

include:只显示包含指定正则表达式的行。

regular-expression:表示正则表达式,为1~256个字符的字符串,区分大小写。

【描述】

display mac-address命令用来显示MAC地址表信息。

需要注意的是:

·     如果不指定任何参数,将显示所有的MAC地址表项信息(包括单播MAC地址表项信息和静态组播MAC地址表项信息)。

·     如果仅指定vlancount或同时指定这两个参数,显示信息中将同时包含单播MAC地址表项和静态组播MAC地址表项。

相关配置可参考命令mac-addressmac-address timer,以及“IP组播命令参考/ IGMP Snooping”中的命令display mac-address multicastdisplay mac-address multicast count

【举例】

# 显示MAC地址表中MAC地址为000f-e201-0101的表项的信息。

<Sysname> display mac-address 000f-e201-0101

MAC ADDR        VLAN ID   STATE            PORT INDEX              AGING TIME(s)

000f-e201-0101  1         Learned          GigabitEthernet1/0/1           AGING

  ---  1 mac address(es) found  ---

表1-1 display mac-address命令显示信息描述表

字段

说明

MAC ADDR

MAC地址

VLAN ID

MAC地址所在的VLAN ID

STATE

MAC地址表项的状态,包括:

·     Config static:表示该表项是用户手工配置的静态MAC地址表项

·     Config dynamic:表示该表项是用户手工配置的动态MAC地址表项

·     Learned:表示该表项由设备动态学习获得

·     Blackhole:表示该表项是黑洞MAC地址表项

·     Multicast:表示该表项是用户手工配置的静态组播MAC地址表项。关于静态组播MAC地址表项的相关介绍请参见“IP组播配置指导”中的“IGMP Snooping”和“MLD Snooping”

PORT INDEX

该MAC地址对应的接口,即表示发往该MAC地址的报文将从此接口发出(黑洞MAC地址表项显示为N/A)

AGING TIME

老化时间,该表项有两种取值:

·     AGING:表示该表项会被老化

·     NOAGED:表示该表项不会被老化

1 mac address(es) found

MAC地址表项数量

 

1.1.2  display mac-address aging-time

【命令】

display mac-address aging-time [ | { begin | exclude | include } regular-expression ]

【视图】

任意视图

【缺省级别】

1:监控级

【参数】

|:使用正则表达式对显示信息进行过滤。有关正则表达式的详细介绍,请参见“基础配置指导”中的“CLI”。

begin:从包含指定正则表达式的行开始显示。

exclude:只显示不包含指定正则表达式的行。

include:只显示包含指定正则表达式的行。

regular-expression:表示正则表达式,为1~256个字符的字符串,区分大小写。

【描述】

display mac-address aging-time命令用来显示MAC地址表动态表项的老化时间。

相关配置可参考命令mac-addressmac-address timerdisplay mac-address

【举例】

# 显示MAC地址表中动态表项的老化时间。

<Sysname> display mac-address aging-time

Mac address aging time: 300s

以上显示信息表示:MAC地址表中动态表项的老化时间为300秒。

1.1.3  mac-address (interface view)

【命令】

mac-address { dynamic | static } mac-address vlan vlan-id

undo mac-address { dynamic | static } mac-address vlan vlan-id

【视图】

二层以太网端口视图/二层聚合接口视图

【缺省级别】

2:系统级

【参数】

dynamic:动态MAC地址表项,有老化时间。

static:静态MAC地址表项,没有老化时间。

mac-address:MAC地址,格式为H-H-H。在配置时,用户可以省去MAC地址中每段开头的“0”,例如输入“f-e2-1”即表示输入的MAC地址为“000f-00e2-0001”。

vlan vlan-id指定以太网端口所属的VLAN。vlan-id为指定VLAN的编号,取值范围为1~4094。该VLAN必须已经创建。

【描述】

mac-address命令用来在指定接口下添加或者修改地址表项。undo mac-address命令用来删除指定接口下的地址表项。

缺省情况下,接口下没有配置任何MAC地址表项。

需要注意的是,如果不保存配置,设备复位后所有表项都会丢失;如果保存配置,静态MAC地址表项不会丢失,动态MAC地址表项会丢失。

相关配置可参考命令display mac-address

【举例】

# 在GigabitEthernet1/0/1端口增加静态地址表项000f-e201-0101,该端口属于VLAN2。

<Sysname> system-view

[Sysname] interface GigabitEthernet 1/0/1

[Sysname-GigabitEthernet1/0/1] mac-address static 000f-e201-0101 vlan 2

# 在Bridge-Aggregation1接口增加静态地址表项000f-e201-0102,该接口属于VLAN1。

<Sysname> system-view

[Sysname] interface bridge-Aggregation 1

[Sysname-Bridge-Aggregation1] mac-address static 000f-e201-0102 vlan 1

1.1.4  mac-address (system view)

【命令】

mac-address blackhole  mac-address vlan vlan-id

mac-address { dynamic | static } mac-address interface interface-type interface-number vlan vlan-id

undo mac-address [ { dynamic | static } mac-address interface interface-type interface-number vlan vlan-id ]

undo mac-address [ blackhole | dynamic | static ] [ mac-address ] vlan vlan-id

undo mac-address [ dynamic | static ] mac-address interface interface-type interface-number vlan vlan-id

undo mac-address [ dynamic | static ] interface interface-type interface-number

【视图】

系统视图

【缺省级别】

2:系统级

【参数】

blackhole:黑洞MAC地址表项。没有老化时间,可以添加/删除。当报文的目的MAC地址与黑洞MAC地址表项匹配后该报文被丢弃。

mac-address:MAC地址,格式为H-H-H。在配置时,用户可以省去MAC地址中每段开头的“0”,例如输入“f-e2-1”即表示输入的MAC地址为“000f-00e2-0001”。

vlan vlan-id:指定二层以太网端口所属的VLAN。vlan-id为指定VLAN的编号,取值范围为1~4094。该VLAN必须已经创建。

dynamic:动态MAC地址表项,有老化时间。

static:静态MAC地址表项,没有老化时间。

interface interface-type interface-number:出接口。interface-type interface-number用来表示接口的类型和编号。

【描述】

mac-address命令用来添加或者修改MAC地址表项。undo mac-address命令用来删除MAC地址表项。

缺省情况下,系统没有配置任何MAC地址表项。

需要注意的是:

·     MAC地址表项的属性遵循如下原则:用户手工配置的静态MAC地址表项和黑洞MAC地址表项不会被动态MAC地址表项覆盖,而动态MAC地址表项可以被静态MAC地址表项和黑洞MAC地址表项覆盖。

·     执行undo mac-address命令时若不指定任何参数,将删除所有单播MAC地址表项和静态组播MAC地址表项。

·     可以删除某个VLAN的所有MAC地址表项(包括单播MAC地址表项和静态组播MAC地址表项);可以选择删除动态MAC地址表项、静态MAC地址表项或者黑洞MAC地址表项;可以按接口删除单播MAC地址表项,但不能按接口删除组播MAC地址表项。

·     如果不保存配置,设备复位后所有表项都会丢失;如果保存配置,静态MAC地址表项和黑洞MAC地址表项不会丢失,动态表项会丢失。

相关配置可参考命令display mac-address

【举例】

# 添加静态地址表项,目的MAC地址为000f-e201-0101,出接口为GigabitEthernet1/0/1,且该接口属于VLAN 2。

<Sysname> system-view

[Sysname] mac-address static 000f-e201-0101 interface GigabitEthernet 1/0/1 vlan 2

1.1.5  mac-address max-mac-count (interface view)

【命令】

mac-address max-mac-count { count | disable-forwarding }

undo mac-address max-mac-count [ disable-forwarding ]

【视图】

二层以太网端口视图/端口组视图/二层聚合接口视图

【缺省级别】

2:系统级

【参数】

count:接口可以学习的最大MAC地址数,为0即表示不允许该接口学习MAC地址。对于下行端口为8端口和24端口的设备,取值范围为0~8192;对于下行端口为48端口的设备,取值范围为0~16384。

disable-forwarding:当接口学习的MAC地址数达到配置的最大MAC地址数后,禁止转发收到的源MAC地址不在MAC地址表里的数据帧。对于源MAC地址在MAC地址表里的数据帧,正常进行转发。

【描述】

mac-address max-mac-count命令用来配置接口最多可以学习到的MAC地址数,以及当接口学习的MAC地址数达到配置的最大MAC地址数后,是否允许转发收到的源MAC地址不在MAC地址表里的数据帧。undo mac-address max-mac-count命令用来恢复接口最多可以学习到的MAC地址数目的缺省值,undo mac-address max-mac-count disable-forwarding用来恢复当接口学习的MAC地址数达到配置的最大MAC地址数后,允许转发收到的源MAC地址不在MAC地址表里的数据帧。

缺省情况下,没有配置以太网端口/二层聚合接口/端口组最多可以学习到的MAC地址数。

在端口视图下执行该命令,则该配置只在当前端口生效;在端口组视图下执行该命令,则该配置将在端口组的所有端口生效。

相关配置可参考命令mac-addressmac-address timer

【举例】

# 配置以太网端口GigabitEthernet1/0/1最多学习到的地址的数目为600。

<Sysname> system-view

[Sysname] interface GigabitEthernet 1/0/1

[Sysname-GigabitEthernet1/0/1] mac-address max-mac-count 600

1.1.6  mac-address max-mac-count (VLAN view)

【命令】

mac-address max-mac-count count

undo mac-address max-mac-count

【视图】

VLAN视图

【缺省级别】

2:系统级

【参数】

count:VLAN内可以学习的最大MAC地址数,0即表示不允许该VLAN学习MAC地址。对于下行端口为8端口和24端口的设备,取值范围为0~8192;对于下行端口为48端口的设备,取值范围为0~16384。

【描述】

mac-address max-mac-count命令用来配置指定VLAN最多可以学习到的MAC地址数。如果该VLAN学习到的MAC地址条数达到用户配置的最大值时,该VLAN将不再对MAC地址进行学习。

undo mac-address max-mac-count命令用来恢复VLAN最多可以学习到的MAC地址数目的缺省值。

缺省情况下,没有配置VLAN最多可以学习到的MAC地址数。

需要注意的是,对于下行端口为8端口和24端口的设备,设备最多支持在8个VLAN内配置最多可以学习到的MAC地址数;对于下行端口为48端口的设备,设备最多支持在32个VLAN内配置最多可以学习到的MAC地址数。

【举例】

# 将VLAN 10最多可以学习到的MAC地址数目配置为600。

<Sysname> system-view

[Sysname] vlan 10

[Sysname-vlan10] mac-address max-mac-count 600

1.1.7  mac-address timer

【命令】

mac-address timer { aging seconds | no-aging }

undo mac-address timer aging

【视图】

系统视图

【缺省级别】

2:系统级

【参数】

aging seconds:动态MAC地址表项的老化时间,单位为秒。取值范围为10~1000000秒。

no-aging:不老化。

【描述】

mac-address timer命令用来配置动态MAC地址表项的老化时间。undo mac-address timer命令用来恢复缺省情况。

缺省情况下,MAC地址老化时间为300秒。

如果用户配置的老化时间过长,设备可能会保存许多过时的MAC地址表项,从而耗尽MAC地址表资源,导致设备无法根据网络的变化更新MAC地址表。如果用户配置的老化时间太短,设备可能会删除有效的MAC地址表项,可能导致设备广播大量的数据报文,影响设备的运行性能。所以用户需要根据实际情况,配置合适的老化时间来有效的实现MAC地址老化功能。

【举例】

# 配置动态MAC地址表项的老化时间为500秒。

<Sysname> system-view

[Sysname] mac-address timer aging 500

1.1.8  vlan-mac-address max-mac-count disable-forwarding

【命令】

vlan-mac-address max-mac-count disable-forwarding

undo vlan-mac-address max-mac-count disable-forwarding

【视图】

系统视图

【缺省级别】

2:系统级

【描述】

vlan-mac-address max-mac-count disable-forwarding命令用来配置当VLAN学习的MAC地址数达到该VLAN配置的最大MAC地址数后,不允许转发收到的源MAC地址不在MAC地址表里的数据帧。undo mac-address max-mac-count disable-forwarding用来恢复当VLAN学习的MAC地址数达到配置的最大MAC地址数后,允许转发收到的源MAC地址不在MAC地址表里的数据帧。

缺省情况下,当VLAN学习的MAC地址数达到配置的最大MAC地址数后,允许转发收到的源MAC地址不在MAC地址表里的数据帧。

需要注意的是,该配置在所有VLAN内生效。

【举例】

# 配置当VLAN学习的MAC地址数达到配置的最大MAC地址数后,将禁止转发源MAC地址不在MAC地址表里的数据帧。

<Sysname> system-view

[Sysname] vlan-mac-address max-mac-count disable-forwarding

 

不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!

新华三官网
联系我们