2012-09-20 12 views
8

Ich möchte alle Objekte aus der MIB-Datei lesen, die ein Manager hat.Wie bekomme ich OIDs aus einer MIB-Datei?

Ich entwickelte ein Tool, um einige Daten von einem SNMP-fähigen Agenten zu erhalten. Ich möchte dieses Tool verbessern, indem ich alle OIDs der Manager-MIB-Datei zeige.

Ich verwende die NET-SNMP-Bibliothek.

sah ich folgendes:

/usr/local/share/snmp/mibs/ 

Ordner und es viele MIB-Dateien enthält, aber wie kann ich eine Liste der OIDs bilden sie hat?

Ich ging durch die MIBs und sah die Strukturen, aber wie bekomme ich die OIDs jedes einzelnen Objekts in den MIB-Dateien erwähnt?

Ich möchte die OIDs alle aufzulisten wie folgt:

  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

Ich möchte alle MIB-Dateien scannen und alle OIDs finden aus die Dateien.

Wie mache ich das?

Antwort

5

Um die OID s von einem laufenden SNMP Server zu ziehen, können Sie das Werkzeug snmpwalk mit der Option -Ci verwenden. Das Werkzeug wird mit Net-SNMP geliefert.

+0

Vielen Dank für Ihre Antwort. – pradipta

1

Die anderen beiden SO QAs zeigen, wie man es ohne zu Fuß ein laufendes System tun:

Das ist nur der Ausgangspunkt. Von dort gibt es eine Menge Kodierung.

Update: Das andere nette Werkzeug ist der Perl SNMP Compiler in SNMP :: MIB :: Compiler verpackt. Mit einem Skript in Perl erhalten Sie alle MIB-Elemente/Komponenten, die in interne Datenstrukturen gezogen werden, und Sie können beliebige Informationen von dort abrufen, indem Sie entweder in den Strukturbaum schauen oder den Baum ablegen und nach dem Parsing auf dem Dump arbeiten.

+1

Danke für Ihre Antwort ... – pradipta

9

Verwenden Sie snmptranslate -Befehl von net-snmp Bibliothek. Versuchen Sie es mit den folgenden Parametern:

4

Nach einigen Problemen konnte ich die OIDs mit dem folgenden Befehl generieren.

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 
Verwandte Themen