net-snmp snptranslate dosnt为我的MIB工作(snmpget工作)

我将我自己的MIB模块添加到net-snmp。

我把我的Mib txt文件放在 – '/ usr / local / share / snmp / mibs'

我看到,如果我改变net-snmp文件他们的变化是反映,所以这mibs加载正确。 它似乎没有从那里加载我的MIB文件。

当我在我的Mib上运行snmptranslate像这样:

snmptranslate .1.3.6.1.4.1.8077 

我得到:

 SNMPv2-SMI::enterprises.8077 

我的MIB def:

 TEST-MIB DEFINITIONS ::= BEGIN IMPORTS MODULE-IDENTITY, enterprises FROM SNMPv2-SMI; testMib MODULE-IDENTITY DESCRIPTION "First draft" ::= { enterprises 8077} testMibObject OBJECT IDENTIFIER ::= {testMib 1} END 

要findsnmp.conf的位置,可以使用:

snmpd -Dread_config -H 2>&1 | grep“config path”| sorting-u

然后告诉工具来加载这个MIB

(例子)::

  snmpwalk -m +MY-MIB ..... (load it for this command only) or export MIBS=+MY-MIB (load it for this session only) or echo "mibs +MY-MIB" >> $HOME/.snmp/snmp.conf (load it every time) 

在这里你可以find所有情况的参考: 使用和加载MIB​​S

我把MIB保存到一个文件TEST-MIB中,放在/ usr / share / snmp / mibs下, snmptranslate能够findtestMib对象,尽pipe你的MIB缺less一些符合标准的字段:

 $ snmptranslate .1.3.6.1.4.1.8077 No log handling enabled - using stderr logging Expected LAST-UPDATED (DESCRIPTION): At line 6 in /usr/share/snmp/mibs/TEST-MIB TEST-MIB::testMib 

为了使你的MIB符合你可以使用工具smidump ,它会告诉你一切你的MIB缺less正确符合:

 $ smidump /usr/share/snmp/mibs/TEST-MIB /usr/share/snmp/mibs/TEST-MIB:6: syntax error, unexpected DESCRIPTION, expecting LAST_UPDATED /usr/share/snmp/mibs/TEST-MIB:13: missing MODULE-IDENTITY clause in SMIv2 MIB /usr/share/snmp/mibs/TEST-MIB:10: unknown object identifier label `testMib' smidump: module `/usr/share/snmp/mibs/TEST-MIB' contains errors, expect flawed output smidump: aborting due to severe parsing errors smidump: use the -k option to force continuation