Как разобрать MIB для сообщения о ловушке для snmp4j

Я включил Snmptrap в Windows и получал сообщения о ловушках с удаленных устройств. Ниже описан результат.

 2016-10-25 10:19:02 <UNKNOWN> [UDP: [172.16.11.250]:62451->[0.0.0.0]:0]:
DISMAN-EVENT-MIB::sysUpTimeInstance = Timeticks: (287374) 0:47:53.74    SNMPv2-MIB::snmpTrapOID.0 = OID: IF-MIB::linkDown       IF-MIB::ifIndex.116 = INTEGER: 116
IF-MIB::ifAdminStatus.116 = INTEGER: up(1)      IF-MIB::ifOperStatus.116 = INTEGER: down(2)     IF-MIB::ifName.116 = STRING: ge-1/0/1

Я также получил сообщение ловушки через snmp4j. Ниже приведен мой код и результат.

Vector<VariableBinding> vbVect = event.getPDU().getVariableBindings();      
for (VariableBinding vb : vbVect) {
    System.out.println(vb.getOid() + " = " + vb.getVariable());
}

результат

1.3.6.1.2.1.1.3.0 = 1:27:14.38
1.3.6.1.6.3.1.1.4.1.0 = 1.3.6.1.6.3.1.1.5.3
1.3.6.1.2.1.2.2.1.1.116 = 116
1.3.6.1.2.1.2.2.1.7.116 = 1
1.3.6.1.2.1.2.2.1.8.116 = 2
1.3.6.1.2.1.31.1.1.1.1.116 = ge-1/0/1

Мой вопрос, как я могу получить сообщение о ловушке после разбора MIB, как вывод на Windows?
На моих устройствах много ловушек. Должен ли я поместить их в файл и проанализировать oid через этот файл? Или я должен загрузить MIBS через snmp4j?

Есть ли способ сделать это? Какова лучшая практика для этой проблемы?

Заранее спасибо!

2 ответа

Чтобы разрешить OID на основе определений модулей MIB, вам нужно использовать библиотеки, такие как SMI4J, Mibble или некоторые другие, которые способны анализировать файлы MIB (форматы SMIv1/SMIv2).

Вы также можете использовать коммерческие продукты, такие как NetDecision MIB Manager, которые позволяют конвертировать несколько файлов MIB в нормализованный файл в формате XML. После этого все, что вам нужно сделать, это загрузить файл XML, используя любой анализатор DOM. Нет необходимости разбирать сложные структуры ASN.1 (SMI) и работать с зависимостями. Также вам не нужно беспокоиться о некорректных файлах MIB и обработке ошибок.

SNMP4J-SMI-PRO будет напрямую интегрироваться с SNMP4J и обеспечивает возможности анализа MIB. OID для сопоставления имен объектов и форматирования значений готов к использованию с уже существующим кодом SNMP4J.

Другие вопросы по тегам