Я добавляю свой собственный модуль MIB в net-snmp.
Я помещаю свой текстовый файл Mib в папку - '/ usr / local / share / snmp / mibs'
Я вижу, что если я изменяю файлы net-snmp, их изменение отражается, поэтому эти mib загружаются правильно. Похоже, он не загружает мой файл MIB оттуда.
Когда я запускаю snmptranslate на моем Mib вот так:
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
Чтобы найти расположение snmp.conf, вы можете использовать:
snmpd -Dread_config -H 2> & 1 | grep "путь к конфигурации" | sort –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)
Здесь вы можете найти ссылки для всех ситуаций: Использование и загрузка MIBS
Я сохранил вашу MIB в файл TEST-MIB, поместил его в / usr / share / snmp / mibs и snmptranslate
может найти testMib
объект, хотя в вашей MIB отсутствуют некоторые поля для правильного соответствия стандарту:
$ 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, чтобы правильно соответствовать:
$ 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