Олег Иванович Цилюрик - Проектируем SNMP управление.
Название: | Проектируем SNMP управление. | |
Автор: | Олег Иванович Цилюрик | |
Жанр: | Интернет, Аппаратное обеспечение, компьютерное железо | |
Изадано в серии: | неизвестно | |
Издательство: | неизвестно | |
Год издания: | - | |
ISBN: | неизвестно | |
Отзывы: | Комментировать | |
Рейтинг: | ||
Поделись книгой с друзьями! Помощь сайту: донат на оплату сервера |
Краткое содержание книги "Проектируем SNMP управление."
SNMP управление - классический механизм управления устройствами компьютерной сети (локальной или Интернет). Про SNMP много написано общих рассуждений, но трудно найти описание как это использовать на практике.
Эта небольшая книга (брошюра) писалась давно и для себя. Но меня год за годом, когда где-то "просквозит" информация, просят прислать. Что я всегда и делаю. Но когда уже сегодня (2023) пришла такая просьба - решил что целесообразней выложить для свободного доступа* (Запрещенная организация в РФ).
Конечно, это будет интересно только практикующим программистам-профессионалам.
Читаем онлайн "Проектируем SNMP управление.". [Страница - 5]
SNMPv2-MIB::sysName.0 = STRING: notebook
SNMPv2-MIB::sysLocation.0 = STRING: Unknown (edit /etc/snmp/snmpd.conf)
SNMPv2-MIB::sysORLastChange.0 = Timeticks: (8) 0:00:00.08
SNMPv2-MIB::sysORID.1 = OID: SNMP-MPD-MIB::snmpMPDMIBObjects.3.1.1
SNMPv2-MIB::sysORID.2 = OID: SNMP-USER-BASED-SM-MIB::usmMIBCompliance
SNMPv2-MIB::sysORID.3 = OID: SNMP-FRAMEWORK-MIB::snmpFrameworkMIBCompliance
SNMPv2-MIB::sysORID.4 = OID: SNMPv2-MIB::snmpMIB
SNMPv2-MIB::sysORID.5 = OID: TCP-MIB::tcpMIB
SNMPv2-MIB::sysORID.6 = OID: IP-MIB::ip
SNMPv2-MIB::sysORID.7 = OID: UDP-MIB::udpMIB
SNMPv2-MIB::sysORID.8 = OID: SNMP-VIEW-BASED-ACM-MIB::vacmBasicGroup
8
SNMPv2-MIB::sysORID.9 = OID: SNMP-NOTIFICATION-MIB::snmpNotifyFullCompliance
SNMPv2-MIB::sysORID.10 = OID: NOTIFICATION-LOG-MIB::notificationLogMIB
SNMPv2-MIB::sysORDescr.1 = STRING: The MIB for Message Processing and Dispatching.
SNMPv2-MIB::sysORDescr.2 = STRING: The MIB for Message Processing and Dispatching.
SNMPv2-MIB::sysORDescr.3 = STRING: The SNMP Management Architecture MIB.
SNMPv2-MIB::sysORDescr.4 = STRING: The MIB module for SNMPv2 entities
SNMPv2-MIB::sysORDescr.5 = STRING: The MIB module for managing TCP implementations
SNMPv2-MIB::sysORDescr.6 = STRING: The MIB module for managing IP and ICMP implementations
SNMPv2-MIB::sysORDescr.7 = STRING: The MIB module for managing UDP implementations
SNMPv2-MIB::sysORDescr.8 = STRING: View-based Access Control Model for SNMP.
SNMPv2-MIB::sysORDescr.9 = STRING: The MIB modules for managing SNMP Notification, plus filtering.
SNMPv2-MIB::sysORDescr.10 = STRING: The MIB module for logging SNMP Notifications.
SNMPv2-MIB::sysORUpTime.1 = Timeticks: (8) 0:00:00.08
SNMPv2-MIB::sysORUpTime.2 = Timeticks: (8) 0:00:00.08
SNMPv2-MIB::sysORUpTime.3 = Timeticks: (8) 0:00:00.08
SNMPv2-MIB::sysORUpTime.4 = Timeticks: (8) 0:00:00.08
SNMPv2-MIB::sysORUpTime.5 = Timeticks: (8) 0:00:00.08
SNMPv2-MIB::sysORUpTime.6 = Timeticks: (8) 0:00:00.08
SNMPv2-MIB::sysORUpTime.7 = Timeticks: (8) 0:00:00.08
SNMPv2-MIB::sysORUpTime.8 = Timeticks: (8) 0:00:00.08
SNMPv2-MIB::sysORUpTime.9 = Timeticks: (8) 0:00:00.08
SNMPv2-MIB::sysORUpTime.10 = Timeticks: (8) 0:00:00.08
$ snmpget -v1 localhost -c public SNMPv2-MIB::sysName.0
SNMPv2-MIB::sysName.0 = STRING: notebook
$ snmpget 192.168.1.5 -v1 -c public system.sysDescr.0
SNMPv2-MIB::sysDescr.0 = STRING: Linux notebook 3.5.2-1.fc17.i686.PAE #1 SMP Wed Aug 15 16:30:14 UTC
2012 i686
Это были выполняемые запросы к snmpd. А вот как выглядит статическая диагностика одного из поддеревьев
OID-ов:
$ snmptranslate -Tp -OS SNMPv2-MIB::sysOREntry
+--sysOREntry(1)
| Index: sysORIndex
|
+-- ---- INTEGER
sysORIndex(1)
|
Range: 1..2147483647
+-- -R-- ObjID
sysORID(2)
+-- -R-- String
sysORDescr(3)
|
Textual Convention: DisplayString
|
Size: 0..255
+-- -R-- TimeTicks sysORUpTime(4)
Textual Convention: TimeStamp
Численное представление OID того же узда поддерева:
$ snmptranslate -On SNMPv2-MIB::sysOREntry
–
версия 2 (SNMPv2c) на основе сообществ (community) — опция -c в утилитах snmp* указывает имя
сообщества, по принадлежности к которому в конфигурационном файле snmpd.conf
разграничиваются полномочия доступа;
.1.3.6.1.2.1.1.9.1
И полная спецификация (тип, способ доступа, ...) всё того же узла:
bash-4.2$ snmptranslate -Td -On SNMPv2-MIB::sysOREntry
.1.3.6.1.2.1.1.9.1
sysOREntry OBJECT-TYPE
-- FROM
SNMPv2-MIB
MAX-ACCESS
not-accessible
9
STATUS
current
INDEX
{ sysORIndex }
DESCRIPTION "An entry (conceptual row) in the sysORTable."
::= { iso(1) org(3) dod(6) internet(1) mgmt(2) mib-2(1) system(1) sysORTable(9) 1 }
Версии протокола SNMP
За время эволюции протокол SNMP претерпел несколько изменений версии протокола. На сегодня
используемыми версиями являются:
–
версия 1 (SNMPv1) — изначальная версия, появившаяся в 1988г. (Linux тогда ещё не существует);
–
версия 3 (SNMPv3) не привносит никаких существенных изменений в протокол помимо добавления
криптографической защиты.
Протоколы не совместимы между собой, но SNMP агенты умеют обрабатывать все из них, но менеджеры
обязаны указывать версию используемого в запросе протокола (опция -v в утилитах snmp*, или в программных
вызовах).
Обработка MIB-файлов
Для определения набора OID для собственного проекта пишут MIB-файлы. MIB-файлы определяют:
а).поддерево иерархии собственных OID в базе данных MIB (в дереве), б).структуру поддерева, в).OID узлов
поддерева, г). типы данных объектов в поддереве. В принципе, писать MIB-файлы не обязательно, как уже
отмечалось, символьные имена узлов дерева нужны для восприятия только человеком, и если вы знаете полную
числовую запись OID интересующего вас параметра, то можете написать код агента, обслуживающий такой
OID. Но на практике так не делают. А делают в следующей последовательности:
1.
Составляется один или несколько связанных MIB-файлов по очень строгим синтаксическим
правилам (MIB-файл — это текстовый файл).
2.
Делается тщательная автоматическая синтаксическая выверка и правка MIB-файлов. Для этого
используются утилиты: snmptranslate и smilint (ранее мы определили, что smilint
находится в составе пакета libsmi.i686, но ещё не установили его).
3.
Помещаем MIB-файлы в один из каталогов, где они будут доступны подсистеме SNMP для
поиска по путям по умолчанию.
4.
После этого применяются автоматические генераторы кода, которые по описанным в MIBфайлах OID делают генерацию шаблонов кода обслуживания. Существует достаточно много
сторонних пакетов генерации шаблонов кода на языках C, C++, Java, ... Один из таких
генераторов в код C mib2c входит в состав пакета net-snmp-perl (мы определили это --">
Книги схожие с «Проектируем SNMP управление.» по жанру, серии, автору или названию:
Алекс Сучжон-Ким Пан - Укрощение цифровой обезьяны. Как избавиться от интернет-зависимости Жанр: Психология Год издания: 2014 |
А Ш Левин - Интернет для людей старшего возраста Жанр: Интернет Год издания: 2014 |
Другие книги автора «Олег Цилюрик»:
Олег Иванович Цилюрик, Егор Горошко, Владимир Зайцев - QNX/UNIX: Анатомия параллелизма Жанр: Современные российские издания Год издания: 2006 Серия: high tech |