当然,我想要使用SNMP,在Cisco Catalyst 3600中连接到VLAN的客户端IP列表。
到目前为止,我已经获得了这些IP地址的伪algorithm,但是我不确定这是否正确完成:
1)从Catalyst(oid 1.3.6.1.2.1.4.20.1.2 )接收所有IP地址我得到类似于:
IP-MIB::ipAdEntIfIndex.10.10.2.1 = INTEGER: 152
IP-MIB::ipAdEntIfIndex.10.10.2.251 = INTEGER: 152
IP-MIB::ipAdEntIfIndex.10.10.3.251 = INTEGER: 151等等。
2)从上面的列表中获取特定IP地址的VLAN(oid 1.3.6.1.2.1.4.20.1.2.10.10.2.1.<IP_ADDRESS> )的ifIndex:
IP-MIB::ipAdEntIfIndex.10.10.2.1 = INTEGER: 152
IP-MIB::ipAdEntIfIndex.10.10.2.251 = INTEGER: 152
IP-MIB::ipAdEntIfIndex.10.10.3.251 = INTEGER: 151
3)获取VLAN名称(oid 1.3.6.1.4.1.9.9.46.1.3.1.1.4.1.<IF_INDEX> )If_index是从以上列表中借用的:
IP-MIB::ipAdEntNetMask.152 = No Such Instance currently exists at this OID
IP-MIB::ipAdEntNetMask.151 = No Such Instance currently exists at this OID
在第三步我有这个问题,这个实例不能在OID中find。 这很奇怪,因为我可以find他们连接的10个VLAN名称的大约四十个IP地址。 或者也许我做错了?
我pipe理也获得了新的algorithm来查找连接到VLAN的IP:
1)获取唯一标识该条目适用的接口的索引值(oid: 1.3.6.1.2.1.4.20.1.2 )
示例输出:
IP-MIB::ipAdEntIfIndex.10.10.2.1 = INTEGER: 152 IP-MIB::ipAdEntIfIndex.10.10.2.251 = INTEGER: 152 IP-MIB::ipAdEntIfIndex.10.10.3.250 = INTEGER: 151 IP-MIB::ipAdEntIfIndex.10.10.3.251 = INTEGER: 151 IP-MIB::ipAdEntIfIndex.10.100.0.1 = INTEGER: 312 IP-MIB::ipAdEntIfIndex.10.100.0.251 = INTEGER: 312
等等…
2)使用上面的索引获取Catalyst 3600上的接口名称(oid: 1.3.6.1.2.1.31.1.1.1.1.<INTERFACE_INDEX> )
示例输出(对于索引= 152 ):
IF-MIB::ifName.152 = STRING: Vl206
3)从步骤1)中提取特定接口索引的IP地址。 例如对于索引152 ,它将是IP地址,如:
10.10.2.1 10.10.2.251
连接到称为Vl206的 VLAN
我希望我做得很好。