Пассивный мониторинг сети (часть 2)

Параллельно с написанием костылей, о которых упомянул в первой части, было найдено полноценное решение - INFORM.

По сути, тот же TRAP, но с подтверждением о доставке серверу. Небольшое сравнение TRAP и INFORM (подробнее здесь https://tech4mint.com/snmp-trap-vs-inform/++)

TRAP  - Unacknowledged Notification  - Single Message  - No Retransmission

INFORM  - Acknowledged Notification  - Two-Message Exchange  - Retransmission Capability

Получаем чуть более безопасный TRAP с возможностью досылки сообщения, если оно не было получено сервером.

Здорово, но самое главное для нас — это настройка snmptrapd, теперь нам не нужно указывать engine ID для каждой железки, достаточно указать на стороне оборудования engine ID нашего сервера мониторинга! Ура, получается довольно просто, лаконично и без костылей лишних точек отказа.

Спотыкаемся еще немного при настройке INFORM в SNMPTrapd ввиду отсутствия информации о настройке в сети (настройка руками необходимого engine ID на стороне сервера, по дефолту генерируется автоматически и может быть изменен при смене сервера\интерфейса), но MAN и несколько экспериментов с конфигом дают нужный результат.

Самое сложное позади, INFORM сообщения отлавливаются и передаются в систему мониторинга.

Остается распарсить сообщения, в элементы данных, создать триггеры для элементов данных и действия на триггеры, но это уже рутина ещё пара недель и новые шаблоны с комбинированным подходом готовы. Ждем окончательных тестов и в прод =)