web-dev-qa-db-ja.com

UbuntuでのSNMP MIB-MIBのエラー

UbuntuのMIBファイルの決定的なセットに構文エラーがあるように思われます。間違ったMIBを使用していますか?

利用した

Sudo apt-get install snmp-mibs-downloader    
Sudo download-mibs

うまく機能しているように見える広範なMIBセットをインストールするために、期待どおりにsnmpwalkとsnmptranslateを行うことができます。しかし、MIBにいくつかの構文エラーがあることを示すコマンドを実行するたびに、いくつかのエラーが表示されます。

Bad operator (INTEGER): At line 73 in /usr/share/mibs/ietf/SNMPv2-PDU
Unlinked OID in IPATM-IPMC-MIB: marsMIB ::= { mib-2 57 }
Undefined identifier: mib-2 near line 18 of /usr/share/mibs/ietf/IPATM-IPMC-MIB
Expected "::=" (RFC5644): At line 493 in /usr/share/mibs/iana/IANA-IPPM-METRICS-REGISTRY-MIB
Expected "{" (EOF): At line 651 in /usr/share/mibs/iana/IANA-IPPM-METRICS-REGISTRY-MIB
Bad object identifier: At line 651 in /usr/share/mibs/iana/IANA-IPPM-METRICS-REGISTRY-MIB
Bad parse of OBJECT-IDENTITY: At line 651 in /usr/share/mibs/iana/IANA-IPPM-METRICS-REGISTRY-MIB

一例を挙げます:

Unlinked OID in IPATM-IPMC-MIB: marsMIB ::= { mib-2 57 }

ここでのエラーは、インポートからmib-2が欠落していることです。

私は自分の方法でこれらのエラーを解決しようとすることができましたが、正しいMIBを使用していないのではないかと心配しています。確かにこれらのエラーは発生してはいけませんか?

私のsnmp.confには

mibs + ALL

これが必要だと思いますが、アドバイスとして、ツリーを歩くときにOIDの完全なセットを取得できないように思われる場合はコメントしてください。

5
djna

どのバージョンのUbuntuを使用していますか?

Ubuntuはおそらくsnmp-mibs-downloaderパッケージをDebianから取得しており、Debianは再頒布可能性について非常に厳格であるため、snmp-mibs-downloaderは、実際のRFCやインターネットの他の標準ドキュメントなどのパブリックソースからMIBを取得しています。

ただし、これらの標準文書の一部には、タイプミスやその他のエラーが含まれています...場合によっては、それらを修正するために、適切な標準文書の完全に新しい改訂版を発行する必要があります。そしてthatはかなりの時間と労力を要します。 (代わりに公式の正誤表ドキュメントがあるかもしれませんが、それらは必ずしも自動パッチに適した形式ではありません。)

Debianでは、現在のバージョンのsnmp-mibs-downloader.diffファイルが含まれており、さまざまなRFCベースのMIBの多くのエラーを修正するために適用されますが、常にそうであるとは限りません。あなたが含めたエラーのリストは私には馴染みのあるものです...

https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=584657

https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=689483

https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=689485

これらすべては、2016年9月にリリースされたsnmp-mib-downloaderのバージョン1.1 + nmu1で修正されました。それより古いバージョンを使用していて、お使いのバージョンのUbuntuで利用可能なアップデートがない場合は、新しいバージョンのパッケージがインストールされている他のコンピューターにMIBをダウンロードし、結果の修正済みMIBを必要な場所にコピーします。

その後、エラーは1つだけ残っています。

Bad operator (INTEGER): At line 73 in /usr/share/snmp/mibs/ietf/SNMPv2-PDU

このWebページ には、固定のSNMPv2-PDU MIBファイルを含むPastebinへの リンクがあります。 変更は、指定された定数整数値を置き換えるだけですmax-bindingsは、実際の数値と定数定義をコメント化し、BulkPDUの定義を完全に自己完結するように調整します。これらの変更により、net-snmp MIBパーサーは満足のいくものになります。

または、SNMPv2プロトコルデータユニットの正式な定義であり、その定義はほとんどのSNMPツールにすでに組み込まれているため、SNMPv2-PDU MIBファイルを削除することもできます。

7
telcoM