Parece haber una pequeña confusión ... está preguntando acerca de las tablas ARP y está utilizando OID .1.3.6.1.2.1.17.4.3.1.2
; sin embargo, ese OID en realidad es para la tabla de direcciones mac en el conmutador.
Supongo que sabe cómo iniciar sesión en su servidor Ubuntu, y que NET-SNMP
está instalado ... avíseme si necesita punteros para hacerlo (consulte esta pregunta para obtener sugerencias sobre cómo cargar MIB en Linux ). Algunos de mis ejemplos suponen que tiene las MIB cargadas en su servidor ... solo necesita eliminar la -m <mib-name>
opción en los comandos si no tiene las MIB cargadas localmente.
Me disculpo de antemano por la longitud de esta respuesta ... Desearía que la encuesta con SNMP no fuera tan complicada ...
Sondeo de la tabla de direcciones mac:
Si realmente desea la tabla de direcciones mac del conmutador, recuerde que debe cambiar la cadena de comunidad con la que realiza la encuesta ... debe tener la forma de <commity@vlan>
... cada vlan que encuesta necesita una comunidad diferente.
En mi ejemplo a continuación, el conmutador en 172.16.1.210 está configurado con snmp-server community public ro
, y estoy sondeando la tabla de direcciones mac en vlan-10 con dot1dTpFdbPort de BRIDGE-MIB .
[mpenning@tsunami ~]$ snmpbulkwalk -v 2c -c public@10 -OXsq 172.16.1.210 \
.1.3.6.1.2.1.17.4.3.1.2
dot1dTpFdbPort[0:6:53:fe:39:e0] 52
dot1dTpFdbPort[0:1d:a1:cd:53:46] 52
dot1dTpFdbPort[0:30:1b:bc:a7:d7] 52
dot1dTpFdbPort[0:80:c8:0:0:0] 52
dot1dTpFdbPort[38:ea:a7:6d:2e:8e] 52
dot1dTpFdbPort[80:ee:73:2f:b:40] 52
[mpenning@tsunami ~]$
En el resultado anterior, 52 es el valor de dot1dBasePort
, que es un número que la MIB usa para indexar la tabla dot1dTp. Para traducir eso en un nombre de interfaz normal, debe asignarlo a un ifName ... BRIDGE-MIB lo hace con dot1dBasePortIfIndex ...
[mpenning@tsunami ~]$ snmpbulkwalk -v 2c -c public@10 -m BRIDGE-MIB 172.16.1.210 \
.1.3.6.1.2.1.17.1.4.1.2
BRIDGE-MIB::dot1dBasePortIfIndex.52 = INTEGER: 10048
[mpenning@tsunami ~]$
[mpenning@tsunami ~]$ snmpget -v 2c -c public 172.16.1.210 ifName.10048
IF-MIB::ifName.10048 = STRING: Fa0/48
[mpenning@tsunami ~]$
Por lo tanto, sabemos que todas las direcciones MAC en este conmutador se aprendieron a través de FastEthernet 0/48 en vlan-10.
Sondeo de los Vlans activos:
Si no está seguro de qué vlans sondear en un conmutador, puede obtener esa información .1.3.6.1.4.1.9.9.46.1.3.1.1.2
, que es vtpVlanState en el CISCO-VTP-MIB ...
[mpenning@tsunami ~]$ snmpbulkwalk -v 2c -c public -OXsq -m CISCO-VTP-MIB 172.16.1.210 \
.1.3.6.1.4.1.9.9.46.1.3.1.1.2
vtpVlanState[1][1] operational
vtpVlanState[1][10] operational
vtpVlanState[1][1002] operational
vtpVlanState[1][1003] operational
vtpVlanState[1][1004] operational
vtpVlanState[1][1005] operational
[mpenning@tsunami ~]$
Tenga en cuenta que los Vlans 1002-1005 son Cisco Vlans internos que no debe sondear.
Sondeo de la tabla ARP
Si realmente quiere la tabla ARP del switch, entonces necesita sondear en PhysAddress ...
[mpenning@tsunami ~]$ snmpbulkwalk -v 2c -c public -OXsq 172.16.1.210 \
.1.3.6.1.2.1.3.1.1.2
atPhysAddress[10][1.172.16.1.5] "80 EE 73 2F 0B 40 "
atPhysAddress[10][1.172.16.1.25] "38 EA A7 6D 2E 8E "
atPhysAddress[10][1.172.16.1.32] "BC 51 FE 50 16 F8 "
atPhysAddress[10][1.172.16.1.200] "00 06 53 FE 39 E0 "
atPhysAddress[10][1.172.16.1.210] "00 18 BA 51 5B 41 "
[mpenning@tsunami ~]$
Guardar la salida del comando en un archivo
Estamos profundizando en áreas que están fuera del alcance normal de este sitio, pero para guardar la tabla ARP anterior en un archivo /tmp/S01_ARP.txt
, la agregaría > /tmp/S01_ARP.txt
al final de lo snmpbulkwalk
anterior ...
[mpenning@tsunami ~]$ snmpbulkwalk -v 2c -c public -OXsq 172.16.1.210 \
.1.3.6.1.2.1.3.1.1.2 > /tmp/S01_ARP.txt
[mpenning@tsunami ~]$ cat /tmp/S01_ARP.txt
atPhysAddress[10][1.172.16.1.5] "80 EE 73 2F 0B 40 "
atPhysAddress[10][1.172.16.1.25] "38 EA A7 6D 2E 8E "
atPhysAddress[10][1.172.16.1.32] "BC 51 FE 50 16 F8 "
atPhysAddress[10][1.172.16.1.200] "00 06 53 FE 39 E0 "
atPhysAddress[10][1.172.16.1.210] "00 18 BA 51 5B 41 "
[mpenning@tsunami ~]$
Como puede ver arriba, puede usar cat
Linux para obtener todos los resultados de un archivo de texto. NOTA: Algunas distribuciones de Linux (ejem ... CentOS) limpian el /tmp
directorio mensualmente. Debe usar su HOME
directorio en Linux para almacenar el archivo. No recuerdo la limpieza de Ubuntu /tmp
, pero para estar seguro evitaría almacenar cosas allí.
Notas varias sobre SNMP ...
Si no ha cargado todas las MIB de Cisco en su máquina Ubuntu, entonces debe evitar usar las -m <mib-name>
banderas en los snmpbulkwalk
comandos. Cargar MIB le permite sondear con un nombre OID, en lugar del número de puntos largos ...
Informacion de referencia:
Incluyo algunos comandos show del switch, en caso de que tenga preguntas sobre la CLI para los comandos SNMP anteriores ...
S01#sh ver | i IOS
Cisco IOS Software, C3560 Software (C3560-IPBASEK9-M), Version 12.2(37)SE, RELEASE SOFTWARE (fc2)
S01#
S01#sh mac address-table dynamic
Mac Address Table
-------------------------------------------
Vlan Mac Address Type Ports
---- ----------- -------- -----
10 0006.53fe.39e0 DYNAMIC Fa0/48
10 001d.a1cd.5346 DYNAMIC Fa0/48
10 0030.1bbc.a7d7 DYNAMIC Fa0/48
10 0080.c800.0000 DYNAMIC Fa0/48
10 38ea.a76d.2e8e DYNAMIC Fa0/48
10 80ee.732f.0b40 DYNAMIC Fa0/48
Total Mac Addresses for this criterion: 6
S01#
S01#sh arp
Protocol Address Age (min) Hardware Addr Type Interface
Internet 172.16.1.210 - 0018.ba51.5b41 ARPA Vlan10
Internet 172.16.1.200 0 0006.53fe.39e0 ARPA Vlan10
Internet 172.16.1.32 0 bc51.fe50.16f8 ARPA Vlan10
Internet 172.16.1.25 0 38ea.a76d.2e8e ARPA Vlan10
Internet 172.16.1.5 1 80ee.732f.0b40 ARPA Vlan10
S01#