14

マネージャーが持っている MIB ファイルからすべてのオブジェクトを読み取りたいです。

SNMP 対応エージェントからデータを取得するためのツールを 1 つ開発しました。マネージャーの MIB ファイルからすべての OID を表示して、そのツールを強化したいと考えています。

NET-SNMP ライブラリを使用しています。

私は次を見ました:

/usr/local/share/snmp/mibs/ 

フォルダーには多くの MIB ファイルが含まれていますが、そこにある OID のリストを作成するにはどうすればよいですか?

MIB を調べて構造を確認しましたが、MIB ファイルに記載されているすべてのオブジェクトの OID を取得するにはどうすればよいですか?

次のようにすべての OID を一覧表示します。

  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 ...など

すべての MIB ファイルをスキャンして、ファイルからすべての OID を見つけたいと考えています。

どうすればいいですか?

4

4 に答える 4

12

ライブラリsnmptranslateから -command を使用します。net-snmp次のパラメーターで試してください。

-M "directory containing your MIB file"
-m ALL
-Pu
-Tso
于 2013-02-22T10:24:41.447 に答える
9

いくつかの問題の後、次のコマンドを使用して OID を生成することができました。

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
于 2016-07-14T13:32:31.870 に答える
5

OID実行中のサーバーからをプルするには、オプションSNMPを使用してツールを使用することをお勧めします。ツールが付属しています。snmpwalk-CiNet-SNMP

于 2012-09-20T13:05:44.957 に答える
1

他の 2 つの SO QA は、実行中のシステムをウォークせずにそれを行う方法を示しています。

それは出発点にすぎません。そこから先には、多くのコーディングがあります。

更新: もう 1 つの便利なツールは、SNMP::MIB::Compiler にパッケージされている perl SNMP コンパイラです。perl のスクリプトを使用すると、すべての MIB 要素/コンポーネントが内部データ構造に取り込まれ、構造ツリーを調べるか、ツリーをダンプしてダンプで事後解析を行うことにより、そこから任意の情報を取得できます。

于 2012-10-15T23:08:05.113 に答える