通过MIB查询S交换机学习到的动态MAC
简介
本文档介绍了如何通过MIB节点查询交换机学习到的动态MAC地址。本文档以MIB Browser作为网管软件进行操作演示。若使用其他的网管软件,请参考具体软件的使用说明。MIB Browser请自行下载和安装。
本文档中的操作步骤是在实验室环境进行的,适用于S系列交换机所有产品的所有版本。
前提条件
- MIB Browser已经安装并且已经加载HUAWEI-L2MAM-MIB文件。
- MIB Brower已通过SNMPv2c或SNMPv3版本与交换机建立连接。
- 使用MIB Browser工具连接S交换机时,按照图1-1设置了Get Bulk的参数。其中Non repeaters设置为0,Max repetitions表示一次Get Bulk操作获取到的表项个数,这里设置为1,表示单击一次Get Bulk可以获取到1条MAC表项。在实际应用中,如果MAC表项数量较多,可以调大该值。例如想要一次获取10条MAC表项,可以将这里的1修改为10。
根据VLAN查询交换机学习到的动态MAC
- 选中hwDynMacAddrQueryEntry节点,单击右键,选择:Multiple Variable Bindings->Prompt For Instance...,如图1-2所示。
- 在弹出的对话框中输入根据VLAN 107查询动态MAC的索引:0.1.48.1.48.0.0.0.0.0.0.0.8.1.48.1.48.107.0.0,如图1-3所示。
上图中索引的具体含义如下:
- 第一个0:即hwDynMacAddrQueryVlanId节点,未使用,设置为整数类型的默认值0。
- 第一个1.48:即hwDynMacAddrQueryVsiName节点,未使用,设置为字符串的默认值0,1表示后面字符串的长度,48是字符串0的ascii码值。
- 第二个1.48:即hwDynMacAddrQuerySiName节点,未使用,设置为字符串的默认值0,1表示后面字符串的长度,48是字符串0的ascii码值。
- 第二0:即hwDynMacAddrQueryBridgeId节点,未使用,设置为整数类型的默认值0。
- 后面6个0:即hwDynMacAddrQueryMacAddr节点,未使用,设置为整数类型的默认值0。
- 8:即hwDynMacAddrQueryConditionMode节点,使用,表示showbyvlan。
- 第三个1.48:即hwDynMacAddrQueryConditionStringA节点,未使用,设置为字符串的默认值0,1表示后面字符串的长度,48是字符串0的ascii码值。
- 第四个1.48:即hwDynMacAddrQueryConditionStringB节点,未使用,设置为字符串的默认值0,1表示后面字符串的长度,48是字符串0的ascii码值。
- 107:即hwDynMacAddrQueryConditionDigitA节点,使用,表示VLAN ID 107。
- 最后两个0:分别对应hwDynMacAddrQueryConditionDigitB和hwDynMacAddrQueryConditionDigitC节点,未使用,设置为整数类型的默认值0。
- 单击“OK”,弹出查询对话框,如图1-4所示。
- 对图1-4进行如下修改:
- 将操作动作由“Get”修改为“Get Bulk”。
- 删除表的11个索引节点,因为表的索引是不支持查询功能的。
- 删除表中不需要关注的节点。例如:只关注MAC表的类型和接口索引时,对话框中仅需要保留hwDynMacAddrQueryType和hwDynMacAddrQueryIfIndex节点。
修改后的结果如图1-5所示。 - 单击“Get Bulk”,即可查询到VLAN ID为107的动态MAC,如图1-6所示为一条动态MAC表项。该动态MAC表项的VLAN ID为107、MAC为0.0.0.0.1.2,即0000-0000-0102、类型为dynamic、接口索引为4899。根据接口索引获取接口名的操作方法见下面的步骤6。
单击一次“Get Bulk”获取到的MAC表项条数由Max repetitions参数决定,具体设置方法见图1-1所示。
多次单击“Get Bulk”,可查询到VLAN ID为107的所有动态MAC表项,当查询结果图中显示其他节点信息时,表示该VLAN对应的动态MAC表查询完毕。
- 按照如下操作使用MIB文件IF-MIB中的ifTable表获取接口索引对应的接口名,从而获取MAC表项对应的接口名。
根据接口查询交换机学习到的动态MAC
根据接口查询S交换机学习到的动态MAC的操作步骤和根据VLAN查询S交换机学习到的动态MAC类似,只需要修改步骤2中输入的索引值。
例如:查询接口GE1/0/12学习到的动态MAC。
- 根据IF-MIB中的ifTable表获取该接口对应的接口索引。选中ifDescr节点,单击右键,选择“Walk”操作,获取设备上所有的接口名。如图1-11所示。可以看出接口GE1/0/12对应的接口索引为4899。
- 按照索引格式修改步骤2中的索引值。查询接口 GE1/0/12学习到的动态MAC对应的索引值应为:0.1.48.1.48.0.0.0.0.0.0.0.9.1.48.1.48.0.4899.0。如图1-12所示。
上图中索引的具体含义如下:
- 第一个0:即hwDynMacAddrQueryVlanId节点,未使用,设置为整数类型的默认值0。
- 第一个1.48:即hwDynMacAddrQueryVsiName节点,未使用,设置为字符串的默认值0,1表示后面字符串的长度,48是字符串0的ascii码值。
- 第二个1.48:即hwDynMacAddrQuerySiName节点,未使用,设置为字符串的默认值0,1表示后面字符串的长度,48是字符串0的ascii码值。
- 第二0:即hwDynMacAddrQueryBridgeId节点,未使用,设置为整数类型的默认值0。
- 后面6个0:即hwDynMacAddrQueryMacAddr节点,未使用,设置为整数类型的默认值0。
- 9:即hwDynMacAddrQueryConditionMode节点,使用,表示showbyport。
- 第三个1.48:即hwDynMacAddrQueryConditionStringA节点,未使用,设置为字符串的默认值0,1表示后面字符串的长度,48是字符串0的ascii码值。
- 第四个1.48:即hwDynMacAddrQueryConditionStringB节点,未使用,设置为字符串的默认值0,1表示后面字符串的长度,48是字符串0的ascii码值。
- 后面的0:即hwDynMacAddrQueryConditionDigitA节点,未使用,设置为整数类型的默认值0。
- 4899:即hwDynMacAddrQueryConditionDigitB节点,使用,表示接口索引。
- 最后的0:即hwDynMacAddrQueryConditionDigitC节点,未使用,设置为整数类型的默认值0。
根据接口+VLAN查询交换机学习到的动态MAC
根据接口+VLAN查询S交换机学习到的动态MAC的操作步骤和根据VLAN查询S交换机学习到的动态MAC类似,只需要修改步骤2中输入的索引值。
例如:查询接口为GE1/0/12,VLAN为107的动态MAC。
- 根据IF-MIB中的ifTable表获取该接口对应的接口索引。选中ifDescr节点,单击右键,选择“Walk”操作,获取设备上所有的接口名。如图1-13所示。可以看出接口GE1/0/12对应的接口索引为4899。
- 按照索引格式修改步骤2中的索引值。查询接口为GE1/0/12,VLAN为107的动态MAC对应的索引值应为:0.1.48.1.48.0.0.0.0.0.0.0.10.1.48.1.48.107.4899.0。如图1-14所示。
上图中索引的具体含义如下:
- 第一个0:即hwDynMacAddrQueryVlanId节点,未使用,设置为整数类型的默认值0。
- 第一个1.48:即hwDynMacAddrQueryVsiName节点,未使用,设置为字符串的默认值0,1表示后面字符串的长度,48是字符串0的ascii码值。
- 第二个1.48:即hwDynMacAddrQuerySiName节点,未使用,设置为字符串的默认值0,1表示后面字符串的长度,48是字符串0的ascii码值。
- 第二0:即hwDynMacAddrQueryBridgeId节点,未使用,设置为整数类型的默认值0。
- 后面6个0:即hwDynMacAddrQueryMacAddr节点,未使用,设置为整数类型的默认值0。
- 10:即hwDynMacAddrQueryConditionMode节点,使用,表示showbyportvlan。
- 第三个1.48:即hwDynMacAddrQueryConditionStringA节点,未使用,设置为字符串的默认值0,1表示后面字符串的长度,48是字符串0的ascii码值。
- 第四个1.48:即hwDynMacAddrQueryConditionStringB节点,未使用,设置为字符串的默认值0,1表示后面字符串的长度,48是字符串0的ascii码值。
- 107:即hwDynMacAddrQueryConditionDigitA节点,使用,表示VLAN ID 107。
- 4899:即hwDynMacAddrQueryConditionDigitB节点,使用,表示接口索引。
- 最后的0:即hwDynMacAddrQueryConditionDigitC节点,未使用,设置为整数类型的默认值0。
MIB表索引设置规则
华为私有MIB文件HUAWEI-L2MAM-MIB中的hwDynMacAddrQueryTable表提供根据指定条件查询动态MAC的功能。hwDynMacAddrQueryTable表中前11个节点为该表的索引,后面节点为MAC表对应的相关信息。
其中hwDynMacAddrQueryConditionMode节点取值的设置规则,如表1-1所示。
hwDynMacAddrQueryConditionMode |
hwDynMacAddrQueryConditionStringA |
hwDynMacAddrQueryConditionStringB |
hwDynMacAddrQueryConditionDigitA |
hwDynMacAddrQueryConditionDigitB |
hwDynMacAddrQueryConditionDigitC |
---|---|---|---|---|---|
showall(1) |
- |
- |
- |
- |
- |
showbymac(2) |
- |
mac |
- |
- |
- |
showbymacvlan(3) |
- |
mac |
vlan |
- |
- |
showbytype(4) |
- |
type |
- |
- |
- |
showbytypevlan(5) |
- |
type |
vlan |
- |
- |
showbytypeport(6) |
- |
type |
- |
port |
- |
showbytypeportvlan(7) |
- |
type |
vlan |
port |
- |
showbyvlan(8) |
- |
- |
vlan |
- |
- |
showbyport(9) |
- |
- |
- |
port |
- |
showbyportvlan(10) |
- |
- |
vlan |
port |
- |
showbymacvsi(11) |
vsi |
mac |
- |
- |
- |
showbytypevsi(12) |
vsi |
type |
- |
- |
- |
showbytypeportvsi(13) |
vsi |
type |
- |
port |
- |
showbyvsi(14) |
vsi |
- |
- |
- |
- |
showbyportvsi(15) |
vsi |
- |
- |
port |
- |
showbyvsipw(16) |
vsi |
- |
peer |
pw-id |
- |
showbytypeslot(17) |
- |
type |
- |
- |
slot |
showbytypeslotsourceslot(18) |
- |
type |
- |
sourceslot |
slot |
showbytypeslotvlan(19) |
- |
type |
vlan |
- |
slot |
showbytypeslotport(20) |
- |
type |
- |
port |
slot |
showbytypeslotportvlan(21) |
- |
type |
vlan |
port |
slot |
showbytypeslotvsi(22) |
vsi |
type |
- |
- |
slot |
showbytypeslotportvsi(23) |
vsi |
type |
- |
- |
slot |
showbytypeslotvsipw(24) |
vsi |
type |
peer |
pw-id |
slot |