Мониторинг по SNMP

На устройствах с поддержкой SNMP есть агент SNMP, коорый собирает информацию с устройства и хранит её в специальной базе MIB. MIB — это структурированный текстовый файл или несколько файлов, которые содержат информацию о всех объектах устройства. Объектом может быть какая-нибудь настройка или параметры системы. У каждого объекта есть свой набор полей, таких как тип данных, доступность (чтение, запись), статус (обязательный, необязательный), текстовое название настройки.

MIB (База управленческой информации) это место, где хранятся SNMP данные, чтобы к ним можно было обращаться каждый раз, когда менеджер SNMP опрашивает агента SNMP. Когда SNMP Manager запрашивает SNMP-агента, данные берутся из MIB и отправляются в SNMP Manager, где их можно просматривать с помощью инструмента сетевого мониторинга.

Каждый объект в MIB имеет свой уникальный цифровой адрес OID и имя Object Name. SNMP менеджер, используя OID, способен считывать или устанавливать значение объекта. Например, адрес объекта (OID) содержащего наименование системы: 1.3.6.1.2.1.1.5, а его имя (object name): sysName.

 

Типы запросов SNMP

  • SNMP (Simple Network Management Protocol — простой протокол сетевого управления) — стандартный интернет-протокол для управления устройствами в IP-сетях на основе архитектур TCP/UDP.
  • MIB (Managment Information Base) — это структурированный текстовый файл или несколько файлов, которые содержат информацию о всех объектах устройства. Объектом может быть какая-нибудь настройка или параметры системы. У каждого объекта есть свой набор полей, таких как тип данных, доступность (чтение, запись), статус (обязательный, необязательный), текстовое название настройки. Также объект может содержать другие объекты.
  • OID — Object IDentificator - числовой идентификатор объекта в дереве MIB.
  • Object Name — имя объекта, уникальная константа для всего MIB, однозначно соответствующая определённому OID.
Типы запросов SNMP
Feature Version 1 Version 2C Version3
GET request Да Да Да
GET-NEXT request Да Да Да
SET request Да Да Да
GET-BULK request Нет Да Да
TRAP notification Да Да Да
INFORM notification Нет Да Да
Community based security Да Да Нет
User based security Нет Нет Да
Message Authentication Нет Нет Да
Message Encryption (privacy) Нет Нет Да

Типы данных SNMP

Типы данных SNMP
Тип Описание Пример Дополнительно
Integer32 Целое со знаком (32-бита)  .1.3.6.1.2.1.1.7.0 = INTEGER: 2 от -2147483648 до 2147483647
Counter32 Целое без знака (32-бита) .1.3.6.1.2.1.1.7.1 = Counter32: 1 от 0 до 4294967295, не доступно на запись, при переполнении сбрасывается в 0
Counter64 Целое без знака (64-бита) .1.3.6.1.2.1.31.1.1.1.8.6 = Counter64: 103 не доступно на запись, после переполнения сбрасывается в ноль
Gauge32 Целое без знака (32-бита) .1.3.6.1.2.1.2.2.1.5.49 = Gauge32: 100000000 от 0 до 4294967295
TimeTicks Целое без знака .1.3.6.1.2.1.1.3.0 = Timeticks: (1299250300) 150 days, 9:01:43.00 1/100 секунд, не уменьшаемое
OctetString Строка/Массив байт .1.3.6.1.2.1.1.9.1.3.1 = STRING: "RS capabilities" Обычно до 255 байт
Object Identifier OID .1.3.6.1.2.1.1.2.0 = OID: .1.3.6.1.4.1.3955.6.9.224.1  
IpAddress IP адрес .1.3.6.1.2.1.4.20.1.1.192.168.136.18 = IpAddress: 192.168.0.18  
HexString Шестнадцатеричная строка .1.3.6.1.2.1.2.2.1.6.1 = Hex-STRING: 3C DF 1E EA A7 65  
Null Нет значения или пустое .1.3.6.1.2.1.31.1.1.1.18.1 = ""  

При работе с удалённой системой по SNMP протоколу все запросы происходят через OID, отражающий положение объекта в дереве объектов MIB. Все OID системы можно получить просканировав устройство, например командой snmpwalk:

snmpwalk -Cc -c public -v2c -On 192.168.0.1

или более быстрый вариант:

snmpbulkwalk -Cc -c public -v2c -On 192.168.0.1

где

  • -Cc - Отключает проверу увеличения OID (предотвращает ошибку Error: OID not increasing)
  • -c public - обращение к сообществу (comminity) public, на многих устройствах оно существует по умолчанию и в режиме только для чтения;
  • -v2c - использовать вторую версию протокола SNMP;
  • -O n - выводить OID'ы числовыми значениями
  • 192.168.0.1 - IP адрес устройства.
Больше интересного в телеграм @calcsbox
Поделитесь с другими:

Если материал понравился Вам и оказался для Вас полезным, поделитесь им со своими друзьями!

Читать по теме
Интересные статьи