2012-09-20 18 views
8

Quiero leer todos los objetos del archivo MIB que tiene un administrador.¿Cómo obtener OID desde un archivo MIB?

Desarrollé una herramienta para obtener algunos datos de un agente habilitado para SNMP. Quiero mejorar esa herramienta mostrando todos los OID del archivo MIB del administrador.

Estoy usando la biblioteca NET-SNMP.

vi lo siguiente:

/usr/local/share/snmp/mibs/ 

carpeta y contiene muchos archivos MIB, pero ¿cómo puedo formar una lista de los OID que tiene?

Revisé las MIB y vi las estructuras, pero ¿cómo obtengo los OID de todos y cada uno de los objetos mencionados en los archivos MIB?

Quiero una lista de todos los OID de la siguiente manera:

  1. SNMPv2-MIB::sysDescr.0 = .1.3.6.1.2.1.1.1.0
  2. SNMPv2-MIB::sysObjectID.0 = .1.3.6.1.2.1.1.2.0 etc ...

Quiero escanear todos los archivos MIB y encontrar todos los OID de Los archivos.

¿Cómo puedo hacer esto?

Respuesta

5

para tirar de la OID s de un servidor que ejecuta SNMP que le gustaría utilizar la herramienta snmpwalk usando la opción -Ci. La herramienta viene con Net-SNMP.

+0

Gracias por su respuesta. – pradipta

1

Los otros dos SO QAs muestran cómo puede hacerlo sin tener que caminar un sistema en funcionamiento:

Ese es solo el punto de partida. Hay una gran cantidad de codificación por delante a partir de ahí.

Actualización: La otra buena herramienta es el compilador de SNMP perl empaquetado en SNMP :: MIB :: Compiler. Con una secuencia de comandos en perl, obtiene todos los elementos/componentes MIB incorporados en las estructuras de datos internas y puede elegir cualquier información desde allí, ya sea mirando en el árbol de estructura o descargando el árbol y realizando un análisis posterior en el volcado.

+1

Gracias por su respuesta ... – pradipta

9

Use snmptranslate -command from net-snmp library. Pruébalo con los siguientes parámetros:

-M "directory containing your MIB file" 
-m ALL 
-Pu 
-Tso 
4

Después de algunos problemas, pude generar los OID usando el siguiente comando.

snmptranslate -Pu -Tz -M ~/.snmp/mibs:/usr/share/snmp/mibs:/usr/share/snmp/mibs/iana:/usr/share/snmp/mibs/ietf:/usr/share/mibs/site:/usr/share/snmp/mibs:/usr/share/mibs/iana:/usr/share/mibs/ietf:/usr/share/mibs/netsnmp:`pwd` -m module_name_NOT_file_name > module_name.oid 
Cuestiones relacionadas