Декодирование SNMP OID с помощью tshark (wireshark)

Я отлаживаю проблему ловушки SNMP, используя tshark (TShark 1.6.6) на платформе Linux. (Целевая платформа не поддерживает графический интерфейс wireshark.) OID в PDU отображаются в числовом формате, хотя у меня установлены MIB в /usr/share/snmp/mibs со ссылкой на них в /usr/local/share/mibs. Я пробовал -V. Похоже, что нет подробных или отладочных параметров tshark, за исключением некоторых параметров отладки памяти. Я проверил справочную страницу и ничего не нашел в SNMP или MIB. Я попробовал strace и нашел файл /usr/share/wireshark/oid, но когда я помещаю туда каталог MIB, я получаю ошибку flex, и поиск в Google того, что означает этот загадочный файл, ничего не дает. Я могу скопировать и вставить OID в команду snmptranslate, и она правильно их переведет. Я попытался создать каталог ~/.wireshark с smi_modules и smi_paths ("/usr/share/snmp/mibs"). Я сделал tshark -G currentprefs, чтобы увидеть, есть ли соответствующие предпочтения, но их нет. Я гуглил эту проблему, но у меня слишком много мякины, чтобы добиться какого-либо прогресса. Я проверил unix.stackexchange.com, superuser.com и этот сайт. Я убедился, что люди задают на этом сайте вопросы wireshark (их 10 000), чтобы убедиться, что они соответствуют теме.

Пример вызова:

tshark -R "snmp && ip.dst==<nms_ip>" -i eth0
Running as user "root" and group "root". This could be dangerous.
Capturing on eth0
  4.675952  <agent_ip> -> <nms_ip>  SNMP 115 sNMPv2-Trap 1.3.6.1.2.1.1.3.0 1.3.6.1.6.3.1.1.4.1.0

Содержание ~/.wireshark/preferences:

name_resolve: mtC
name_resolve_load_smi_modules: TRUE
snmp.display_oid: TRUE
snmp.desegment: TRUE
snmp.var_in_tree: TRUE

Как мне получить OID для отображения в символическом формате, например. sysUpTimeInstance и snmpTrapOID.0?


person eewanco    schedule 25.08.2014    source источник
comment
Команда snmptranslate — это инструмент net-snmp. Это не имеет никакого отношения к тому, насколько хорошо tshark делает то же самое. Просто подумал, что вы могли бы использовать эту информацию. Я сам никогда не ладил с функцией загрузки MIB Wireshark, поэтому я не могу предложить ничего более полезного, чем это.   -  person Jolta    schedule 27.08.2014
comment
@Jolta: Ну, я понимаю, что теоретически они не сопоставляют одно с другим, но это должно доказать, что у меня, по крайней мере, установлены правильные mibs. Один сайт сказал мне, что Wireshark ищет mibs в /usr/local/share/mibs, поэтому я сделал ссылку на /usr/share/snmp/mibs, так что я просто продемонстрировал в качестве проверки работоспособности, что snmptranslate может их анализировать.   -  person eewanco    schedule 27.08.2014
comment
Да, это говорит нам о том, что mib установлены правильно, чтобы snmptranslate мог их найти.   -  person Jolta    schedule 27.08.2014
comment
@Jolta: я надеялся, что установки ~/.wireshark/smi_paths в каталог mib net-snmp будет достаточно, чтобы направить tshark в mib, но это не так. Спасибо за ваш вклад, я ценю это.   -  person eewanco    schedule 27.08.2014


Ответы (1)


Я нашел информацию Разрешение SNMP OID в snmpbulkwalk и tshark полезен.

Добавление моих MIB в ~/.wireshark/smi_modules (через настройки разрешения имен wireshark) и обеспечение того, чтобы MIB были расположены в правильном месте.

(на Mac я использовал dtrace, чтобы отследить, к каким файлам обращается «tshark», и нашел путь как /usr/share/snmp/mibs)

person Peter Childs    schedule 29.11.2016