SNMP OID для сетевого трафика

Я работаю над сценарием, который будет отслеживать трафик на определенных хостах от nagios. Я изучил некоторые уже созданные сценарии и собрал почти всю информацию, которая мне нужна для этого, но я столкнулся с проблемой определения OID, необходимых для трафика. Я хотел использовать IF-MIB::ifOutOctets.1 и IF-MIB::ifInOctets.1 для получения входящего и исходящего трафика, но когда я тестировал следующую строку:

snmpwalk -v 1 -c public myComputer OID

я получил одинаковый результат для обоих OID, и это не кажется правильным. Я блуждаю, есть ли другие переменные, которые я мог бы попробовать вместо тех, которые я использую сейчас.

Было бы полезно, даже если бы вы могли указать мне, где я могу найти некоторую информацию о IF-MIB, потому что я могу получить все значения с помощью snmpwalk, но я не знаю, как их интерпретировать


person primero    schedule 27.06.2012    source источник
comment
почему бы не munin-monitoring.org/wiki/HowToContactNagios   -  person hovanessyan    schedule 27.06.2012
comment
Я как бы вынужден использовать snmp, потому что у меня есть демон на станции, которую я должен контролировать, и я не могу ничего установить. Но я нашел кое-что, что объясняет IF-MiB: net-snmp.sourceforge.net/tutorial/tutorial-5/toolkit/mfd/if-mib/   -  person primero    schedule 27.06.2012
comment
Еще один хороший источник информации - это системное администрирование Pro Python, разработанное Ритисом Силейкой из Apress.   -  person primero    schedule 29.06.2012


Ответы (1)


Хорошо, я нашел ответ после некоторого поиска. Значения равны, потому что я не спрашивал правильный интерфейс (я спрашивал петлю). Есть эта команда snmpwalk -v 1 -c public hostname 1.3.6.1.2.1.31.1.1.1, которая перечисляет множество OID, и оттуда вы можете увидеть 'IF-MIB :: ifName', которые обозначают интерфейсы. И если вы выполните IF-MIB::ifInOctets.x, где x соответствует интересующему вас интерфейсу, вы можете найти число в байтах. Я не уверен, что это означает и как он сгенерирован, но я протестировал выполнение дважды команды:

date ; snmpwalk -v 1 -c public myComputer ifOutOctets.x 

с интервалом примерно в 1 минуту, а затем я вычел два значения и разделил их на количество секунд, прошедших между выполнениями. Я сравнил значение со значением, полученным от iptraf, и они вроде бы совпадают, поэтому я думаю, что вы можете использовать этот способ, чтобы найти станцию ​​с трафиком с помощью snmp.

person primero    schedule 27.06.2012