Протокол сетевого управления SNMP
База управляемой информации
Концептуальная схема MIB
Подходы к описанию модели
- Объектно-ориентированный подход
- MOF (Managed Object Format) / CIM (Common Information Model)
- GDMO (Guidelines for the Definition of Managed Objects) / CMIP (Common Management Information Protocol)
- SON Model / Nest
- Описание переменных и таблиц
- SMI (Structure of Management Information) / SNMP
- Набор команд, функций и параметров
- интерфейсы командной строки
MIB с точки зрения SNMP
Язык описания модели — Structure of Management Information (SMI)
RFC 1155 (SMIv1) и RFC 2578 (SMIv2) определяют синтаксис и семантику спецификации.
- Модели разных аспектов работы устройства определяются в отдельных модулях (MIB-модули). Например базовый модуль MIB определен в RFC 1213.
- Каждый управляемый элемент устройства моделируется как переменная или строка таблицы.
- Все объекты модели систематизированы в виде дерева, в котором MIB-модуль является родительской вершиной для всех описываемых объектов.
- Путь до вершины объекта определяет его идентификатор (object ID, OID)
Дерево объектов MIB
Пример: модуль IF-MIB
- Описание модуля:
/usr/share/snmp/mibs/IF-MIB.txt
- Корневой OID модуля —
.1.3.6.1.2.1.2
- Объект
ifNumber
—.1.3.6.1.2.1.2.1
- Значение
ifNumber
—.1.3.6.1.2.1.2.1.0
Представление таблиц в SNMP MIB
- Например необходимо отобразить в MIB следующие данные
# | MAC | Состояние | Получено | Отправлено |
---|---|---|---|---|
1 | 0:15:f9:5:24:c4 | up | 2786767 | 17502708 |
2 | 0:15:f9:5:24:c5 | up | 1530063 | 2506965 |
Как реализовано?
См. описание объекта
ifTable
в модуле IF-MIB.
Протокол SNMP
Первая версия SNMP (Simple Network Management Protocol) была разработана в 1989 году.
Изначально предполагалось, что SNMP — это временное решение.
- Транспорт — UDP (SNMPv3 поддерживает TCP), порт 161.
- SNMPv1 и v2: авторизация и аутентификация на основе передаваемого в открытом виде имени сообщества (community name).
- SNMPv3: улучшенная модель безопасности.
- Запрос GET (утилита
snmpget
из пакета Net-SNMP) - Запрос GET-NEXT (утилита
snmpgetnext
) - Процедура SNMP Walk (утилита
snmpwalk
)
Интерфейсы командной строки
- Строго говоря, интерфейс командной строки (Command-line interface, CLI) не является протоколом сетевого управления.
- Можно рассматривать CLI как протокол между человеком и устройством.
- Работа с MIB — отправка команд / получение текстового ответа.
- CLI не стандартизован, однако к настоящему времени сформировался
набор базовых принципов:
- режимы работы (просмотр/конфигурирование),
- многоуровневые команды,
- изменяется только текущая конфигурация.
Пример: Cisco CLI
$ telnet cisco1841.cs.prv Username: netlab-student Password: cisco1841> ? ... cisco1841> show ? ... cisco1841> show ip interface ... cisco1841> show ip route ... cisco1841>exit