SNMP как средство управления сетями
(по материалам корпорации Microsoft)
2.1. Системы управления и агенты
4. Установка и конфигурирование сервиса SNMP
4.1. Определение сообществ SNMP
4.5. Настройка сервисов SNMP-агента
4.7. Просмотр новых объектов и наблюдение за IP-датаграммами с помощью Perfomance Monitor
4.8. Применение утилиты SNMPUTIL
1. Введение
Деятельность современных организаций тесно связана с использованием информационных технологий, будь то компьютер на рабочем месте менеджера мелкой фирмы или корпоративная сеть крупной компании — системного интегратора. И чем больше организация и чем важнее ее функции, тем выше требования к компьютерным системам, обеспечивающим выполнение этих функций, и тем дороже цена каждого сбоя в работе. Эффективность деятельности компании становится все более и более зависимой от качества работы ее компьютерного и телекоммуникационного оборудования.
Особенно остро встает вопрос о надежности и максимальной эффективности функционирования вычислительных сетей. Огромные убытки от сетевых неполадок, приводящих к потере данных, резкому падению производительности, блокировке серверов и другим неприятностям, несут банки, финансовые, транспортные и телекоммуникационные компании. Следовательно, особую актуальность приобретает проблема управления сетью.
Управление сетью — это комплекс мер и мероприятий, направленный на повышение эффективности функционирования сети, обнаружение и устранение сбоев в ее работе, правильное ее развитие и модернизацию, и сокращение затрат в конечном итоге. Принято разделять функции управления сетью на две группы:
Управление элементами сети:
- управление конфигурацией:
- регистрация устройств сети, их сетевых адресов и идентификаторов;
- определение параметров сетевой операционной системы и описание конфигурации элементов сети, а также протоколов сетевых взаимодействий;
- графическое отображение схемы сети.
- управление безопасностью:
- контроль доступа и управление полномочиями пользователей;
- контроль и управление параметрами межсетевого взаимодействия;
- защита от несанкционированного доступа извне;
- управление целостностью данных (архивированием и энергопитанием).
- управление ресурсами:
- регистрация лицензий и учет использования программных средств и сетевых ресурсов;
- управление приоритетами пользователей и прикладных задач.
Управление коммуникациями:
- обработка сбоев:
- поиск, обнаружение, локализация и устранение неисправностей и ошибок;
- предупреждение и профилактика сбоев;
- наблюдение за кабельной системой;
- мониторинг удаленных сегментов и межсетевых связей.
- управление
производительностью:
- сбор и анализ статистических данных о функционировании сети, анализ трафика;
- планирование и оценка эффективности использования ресурсов сети;
- анализ и интерпретация протоколов;
- планирование развития сети, управление сегментацией.
В настоящее время для управления сетями используются приложения, работающие на базе платформ сетевого управления, таких как системы HP OpenView фирмы Hewlett-Packard, NetView for AIX (IBM), SunNet Manager (Sun), Spectrum (Cabletron Systems), NetWare Management Systems (Novell) и другие разнообразные кросс-платформные средства управления.
В основе этих средств лежит использование протокола SNMP (Simple Network Management Protocol). Протокол SNMP предназначен для сбора и передачи служебной информации (status information) между различными компьютерами.
2. Определение SNMP
SNMP — это протокол из семейства TCP/IP (Протокол SNMP описан в RFC 1157). Первоначально он был разработан Сообществом Интернета (Internet community) для наблюдения и устранения неполадок в маршрутизаторах и мостах (bridges). SNMP позволяет наблюдать и передавать информацию о состоянии:
- компьютеров, работающих под управлением Windows NT;
- серверов LAN Manager;
- маршрутизаторов и шлюзов;
- мини-компьютеров или мэйнфреймов;
- терминальных серверов;
- концентраторов.
SNMP использует распределенную архитектуру, состоящую из систем управления (management systems) и агентов (agents). С помощью сервиса Microsoft SNMP компьютер, работающий под управлением Windows NT, может выдавать отчет о своем состоянии системе управления SNMP в сети, использующей протокол TCP/IP.
Сервис SNMP посылает информацию о состоянии одному или нескольким компьютерам по запросу или в случае, когда происходит важное событие, например компьютеру не хватает места на жестком диске.
2.1. Системы управления и агенты
SNMP позволяет наблюдать за различными компьютерами с помощью систем управления и агентов, как показано на рис. 1.
Система управления SNMP
Основная функция системы управления — запрос информации от агентов. Система управления (management system) — это любой компьютер, на котором работает программное обеспечение управления SNMP. Система управления может выполнять операции get, get-next и set.
- Операция get запрашивает какой-либо параметр, например количество доступного пространства на жестком диске.
- Операция get-next запрашивает следующую величину, используется для просмотра таблицы объектов.
- Операция set изменяет значение, используется редко, потому что большинство параметров доступны только для чтения и не могут быть изменены.
Агент SNMP
Основная функция агента SNMP заключается в выполнении операций set, инициированных системой управления. Агент — это любой компьютер, на котором работает соответствующее программное обеспечение SNMP, как правило, сервер или маршрутизатор. Сервис Microsoft SNMP — это программное обеспечение агента SNMP.
Единственная операция, которая может быть инициирована агентом, — trap. Эта операция сигнализирует системам управления о необычном событии, например о нарушении пароля.
2.2. Сервис Microsoft SNMP
Сервис Microsoft SNMP обеспечивает сервисы агента SNMP любому компьютеру, на котором работает программа управления SNMP (рис. 2). Сервис SNMP:
- обрабатывает запросы служебной информации от различных компьютеров;
- сообщает о важных событиях [ловушках (traps)] нескольким компьютерам, как только они происходят;
- использует имена узлов и их IP-адреса для идентификации компьютеров, которым посылает информацию и с которых получает запросы;
- может быть установлен и использован на любом компьютере, работающем под управлением Windows NT с протоколом TCP/IP;
- позволяет применять счетчики для наблюдения за TCP/IP, используя Performance Monitor.
Архитектурная модель SNMP
Сервис Microsoft SNMP написан с использованием интерфейса Windows Sockets. Это позволяет обращаться к нему из сетевых систем управления, созданных средствами этого интерфейса. Сервис SNMP посылает и принимает сообщения по протоколу UDP (порт 161) и использует IP для поддержки маршрутизации SNMP-сообщений. SNMP позволяет применять дополнительные динамически подключаемые библиотеки агентов для поддержки других баз MIB. Сторонние производители могут разрабатывать собственные базы MIB для использования совместно с сервисом Microsoft SNMP. Microsoft SNMP включает модуль Microsoft Win32 (API SNMP администратора для упрощения разработки SNMP-приложений).
Таким образом, SNMP позволяет наблюдать за компьютерами, работающими под управлением Windows NT, и сигнализировать системам управления о происходящих событиях. Сервис Microsoft SNMP обеспечивает сервисы агентов, дополнительные библиотеки DLL и Win32 SNMP API администратора для упрощения разработки SNMP-приложений.
3. MIB
Информация, которую система управления запрашивает от агентов, хранится в специальной информационной базе данных MIB (Management Information Base).
MIB — это набор контролируемых объектов, предоставляющих информацию об устройствах сети, например о количестве активных сеансов или версиях сетевой операционной системы, работающей на компьютере. Главное то, что и агент SNMP, и база данных MIB одинаково интерпретируют контролируемые объекты. Таким образом, система управления с помощью базы данных MIB «знает», какую информацию можно запросить у агента и что характеризует тот или иной объект.
Сервис SNMP поддерживает Internet MIB II, LAN Manager MIB II, DHCP MIB и WINS MIB.
Internet MIB II
Internet MIB II — это расширение предыдущего стандарта Internet MIB I. Оно определяет 171 объект, необходимый для поиска неисправностей и анализа конфигурации (База данных Internet MIB II описана в RFC 1212 ).
LAN Manager MIB II
LAN Manager MIB II определяет приблизительно 90 объектов, которые включают такие элементы, как статистическая, сеансовая, пользовательская, регистрационная информация, и данные о совместно используемых ресурсах. К большинству объектов LAN Manager MIB II установлен доступ только для чтения, в связи с отсутствием обеспечения безопасности в SNMP.
DHCP MIB
Операционная система Windows NT 4.0 поставляется с DHCP MIB. Эта база определяет объекты наблюдения за активностью DHCP-сервера. Модуль Dhcpmib.dll автоматически устанавливается при установке сервиса DHCP Server. Он наблюдает около 14 параметров DHCP, например число полученных запросов DHCPDISCOVER, количество отказов или адресов, взятых в аренду клиентами.
WINS MIB
Windows NT 4.0 поставляется с WINS MIB. Эта база определяет объекты для наблюдения за активностью WINS-сервера. Модуль Winsmib.dll автоматически устанавливается при установке сервиса WINS Server. Он наблюдает приблизительно 70 параметров WINS, например число запросов, на которые удалось успешно ответить, количество неуспешных запросов или дату и время последнего сеанса тиражирования базы данных.
Дерево имен
Пространство имен MIB-объектов имеет иерархическую структуру. На рис. 3 видно, что оно организовано так, что каждому контролируемому объекту может соответствовать уникальное имя. Полномочия на управление частями пространства имен присваиваются отдельным организациям. Поэтому организации, в свою очередь, вправе назначать имена, не консультируясь с комитетом по Интернету. Например, 1.3.6.1.4.1.77 является пространством имен, присвоенным LAN Manager. Поскольку 1.3.6.1.4.1.77 присвоено LAN Manager, корпорации Microsoft присвоено 1.3.6.1.4.1.311, и все новые базы MIB будут созданы на этой ветви. Microsoft вправе назначать имена объектам где угодно в рамках этого пространства имен.
Идентификатор объекта в иерархии записывается как последовательность меток, начинающихся в корне и заканчивающихся самим объектом. Метки разделены точками. Например, идентификатор объекта для MIB II приведен ниже.
Имя объекта |
Номер объекта |
Iso.org.dod.internet.menegement.mibii |
1.3.6.1.2.1 |
А в следующей таблице — идентификатор объекта для LAN Manager MIB.
Имя объекта |
Номер объекта |
Iso.org.dod.internet.private.enterprise.lanmanager |
1.3.6.1.4.1.77 |
Пространство имен, используемое для идентификаторов объектов, — уникально и отделено от иерархического пространства имен, присвоенного именам UNIX-доменов.
4. Установка и конфигурирование сервиса SNMP
Для того чтобы использовать приложение сторонних производителей для наблюдения за компьютером, работающим под управлением Windows NT, необходимо установить и сконфигурировать сервис SNMP. Сервис SNMP также позволяет контролировать TCP/IP с помощью Performance Monitor.
4.1. Определение сообществ SNMP
Перед установкой SNMP вам необходимо определить сообщество (SNMP community) — группу, к которой принадлежат компьютеры с сервисом SNMP. Имя сообщества (community name) идентифицирует сообщество. Оно обеспечивает простейшую безопасность и контекстную проверку для агентов, получающих запросы и инициирующих прерывания (traps), и для систем управления, инициирующих запросы и обрабатывающих прерывания. Агент не примет запрос от системы управления, сконфигурированной за пределами его сообщества.
SNMP-агент может быть членом нескольких сообществ одновременно, что позволит ему связываться с администраторами SNMP различных сообществ. Например, на рис. 4 определены два сообщества — Public и Public2. Только агенты и администраторы — члены одного сообщества — могут связываться друг с другом.
- Agent1 может получать и посылать сообщения Manager2, потому что оба они являются членами сообщества Public2.
- Agent2, Agent3 и Agent4 могут получать и посылать сообщения Manager1, потому что все они являются членами сообщества Public, принятого по умолчанию.
4.2. Сбор информации
Приведенные ниже инструкция и рис. 5 показывают, как сервис SNMP реагирует на запросы системы управления.
- Система управления SNMP посылает запрос агенту, используя имя узла агента (или его IP-адрес).
Запрос отправляется приложением на UDP-порт 161.
Имя узла преобразуется в IP-адрес любым из доступных методов разрешения, включая файл HOSTS, DNS, WINS, широковещание или файл LMHOSTS.
- Формируется SNMP-пакет, содержащий следующую информацию:
- операцию get, get-next или set для одного или нескольких объектов;
- имя сообщества и другую проверочную информацию.
Пакет передается по сети агенту на UDP-порт 161.
- SNMP-агент получает пакет в свой буфер.
Проверяется имя сообщества. Если оно неправильное или пакет некорректный, он отвергается.
Если имя сообщества правильное, агент проверяет имя узла или IP-адрес отправителя. Агент должен быть уполномочен принимать пакеты от системы управления. В противном случае пакет отвергается.
Запрос передается соответствующей DLL.
Если запрос для |
Происходит следующее |
объекта Internet MIB II |
TCP DLL отыскивает информацию |
объекта LAN Manager MIB II |
LAN Manager DLL отыскивает информацию |
объекта DHCP |
DHCP MIB DLL отыскивает информацию |
объекта WINS |
WINS MIB DLL отыскивает информацию |
расширенного агента MIB |
DLL для этой MIB отыскивает информацию |
Идентификатор объекта отображается в соответствующую функцию API, которая и вызывается далее. Библиотека DLL возвращает информацию агенту.
- SNMP-пакет с требуемой информацией отправляется назад администратору SNMP.
4.3. Установка сервиса SNMP
- В Control Panel дважды щелкните мышью пиктограмму Network (рис. 6, рис. 7).
- Выберите вкладку Services и нажмите Add (рис. 8). Появится диалоговое окно Select Network Service.
- Щелкните SNMP Service и нажмите ОК (рис. 9).
- Введите на запрос путь к установочным файлам Windows NT (рис. 10).
- После того как нужные файлы скопируются на компьютер, появится диалоговое окно Microsoft SNMP Properties (рис. 11).
- Во вкладке Traps выберите имя сообщества Public (рис. 12).
- Нажмите ОК. Появится диалоговое окно Network.
- Нажмите Close. Появится окно Network Settings Change с предупреждением о необходимости перезагрузить компьютер (рис. 13).
- Нажмите Yes.
- Войдите в систему под именем Administrator.
4.4. Настройка безопасности
Сервис SNMP обеспечивает элементарную безопасность и контекстную проверку агентов, получающих запросы и инициирующих ловушки, и систем управления, инициирующих запросы и получающих ловушки. Агент не примет запрос от системы управления, не принадлежащей ни к одному из указанных в списке допустимых сообществ. Windows NT посылает системное прерывание аутентификации, принятое по умолчанию.
Конфигурирование безопасности SNMP
- В Control Panel дважды щелкните мышью пиктограмму Network (рис. 6, рис. 7).
- Выберите вкладку Services, нажмите SNMP Services и затем Properties. Появится диалоговое окно Microsoft SNMP Properties (рис. 11).
- Выберите вкладку Security (рис. 14).
- Сконфигурируйте параметры, показанные в таблице.
Параметр |
Описание |
Send Authentication Trap |
Когда SNMP-сервис получает запрос на информацию, не содержащий корректного имени сообщества или не совпадающий с подходящим именем узла для сервиса, сервис SNMP может отправить в ответ системное прерывание, указывающее, что запрос не аутентифицирован. Отметьте этот флажок, чтобы задать системное прерывание аутентификации |
Accepted Community Names |
Компьютер должен принадлежать сообществу, указанному в этом списке, чтобы сервис SNMP смог принимать запросы от него. Как правило, все компьютеры принадлежат сообществу Public, являющемуся стандартным именем для сообщества всех компьютеров |
Accept SNMP Packets from Any Host |
Если указана эта опция, пакеты SNMP не отвергаются на основе идентификаторов узлов-отправителей и указанного под опцией списка допустимых узлов |
Only Accept SNMP Packets from These Hosts |
Если выбрана эта опция, пакеты SNMP принимаются только с указанных в списке компьютеров |
4.5. Настройка сервисов SNMP-агента
Сервис SNMP позволяет компьютеру, работающему под управлением Windows NT, информировать систему управления о деятельности на различных уровнях семейства протоколов Интернета.
Конфигурирование сервисов SNMP-агента
- В диалоговом окне Microsoft SNMP Properties выберите вкладку Agent (рис. 15).
- В поле Contact введите контактное имя. Обычно это имя человека, использующего компьютер.
- В поле Location введите описание места, где установлен компьютер.
- В поле Service выберите сервисы, которые будут обеспечиваться агентом.
Каждый сервис информирует о транзакции на разном уровне. Сервисы, выбранные по умолчанию: Applications, End-to-End и Internet.
Сервис |
Выберите эту опцию, если |
Physical |
компьютер, работающий под Windows NT, управляет какими-либо физическими устройствами, например повторителями (repeaters) |
Datalink/ Subnetwork |
компьютер, работающий под Windows NT, управляет мостом
|
Internet |
компьютер, работающий под управлением Windows NT, действует как IP-шлюз (маршрутизатор) |
End-to-End |
компьютер, работающий под управлением Windows NT, действует как IP-узел. Эта опция должна быть указана всегда |
Applications |
компьютер, работающий под управлением Windows NT, использует любое TCP/IP-приложение. Эта опция должна быть указана всегда |
- Нажмите ОК.
- Нажмите Close.
4.6. Обнаружение ошибок
Если сервис SNMP дал сбой по какой-либо причине, это будет отмечено в системном журнале в Event Viewer. Именно туда следует заглянуть в первую очередь при возникновении проблемы, связанной с сервисом SNMP.
Просмотр сообщения об ошибках SNMP в Event Viewer
- Щелкните кнопку Start, укажите на Programs, затем — на Administrative Tools и выберите Event Viewer (рис. 16).
- Выберите пиктограмму сообщения, чтобы прочесть информацию об ошибке (рис. 17, рис. 18).
4.7. Просмотр новых объектов и наблюдение за IP-датаграммами с помощью Performance Monitor
Посредством Performance Monitor имеется возможность просмотра объектов, добавленных в результате установки сервиса SNMP. Кроме того, используя Performance Monitor, можно посмотреть изменение счетчиков активности по протоколам ICMP и IP, связанное с выполнением какой-либо команды, например Ping.
Просмотр новых объектов в Performance Monitor
- Щелкните кнопку Start, укажите на Programs, затем на — Administrative Tools и выберите Performance Monitor (рис. 19). Появится окно Performance Monitor (рис. 20).
- В меню Edit выберите Add to Chart. Появится диалоговое окно Add to Chart (рис. 21).
- 3. В поле Object нажмите стрелку, чтобы вывести список объектов.
Наблюдение за датаграммами IP с помощью Performance Monitor
- В поле Object выберите из списка ICMP. Появится список счетчиков ICMP.
- В поле Counters выберите Message/sec.
- В поле Scale установите 1.0 и нажмите Add.
- В поле Object выберите IP.
- В поле Counters выберите из списка Datagrams Sent/sec.
- В поле Scale установите 7.0 и нажмите Add.
- Нажмите Done. Ваш выбор появится в области отображения.
- В меню Options выберите Chart.
- Измените Vertical Maximum на 10 и нажмите ОК (рис. 22).
- Перетащите окно Performance Monitor в верхнюю часть экрана.
- В командной строке выполните Ping по адресу второго компьютера (рис. 23).
Вернитесь в Performance Monitor, и вы сможете наблюдать активность, вызванную выполнением Ping (рис. 24). В результате выполнения Ping была послана одна IP-датаграмма в секунду и записано два сообщения ICMP в секунду. Это вызвано тем, что на каждую отправленную IP-датаграмму в ответ приходит два сообщения ICMP – эхо-запрос (echo request) и эхо-ответ (echo reply).
4.8. Применение утилиты SNMPUTIL
В составе Microsoft Windows NT Resource Kit поставляется утилита Snmputil, которая проверяет корректность установки сервиса SNMP для связи с управляющими станциями SNMP. Snmputil выполняет те же самые вызовы, что и управляющая станция SNMP.
Вот ее синтаксис:
Snmputil команда агент сообщество идентификатор_объекта_(OID)
Возможные команды:
- get — позволяет получить значение запрашиваемого идентификатора объекта;
- getnext — позволяет получить значение объекта, следующего за заданным идентификатором;
- walk — позволяет переходить по ветви MIВ, заданной идентификатором объекта.
Например, чтобы определить число предоставленных в аренду адресов сервером DHCP с именем DHCPserver в сообществе Public, вам понадобится ввести команду:
snmputil getnext DHCPserver Public.1.3.6.1.4.1.311.1.3.2.1.1.1
Эта команда выдаст идентификатор объекта (OID) и значение счетчика для указанного в запросе идентификатора объекта, в приведенном случае — число взятых в аренду IP-адресов.
Следовательно, просмотрев описания объектов MIB, можно получить доступ к объектам SNMP для просмотра данных, собранных агентом SNMP и программой управления.
Например, команда
snmputil getnext <IP-адрес> public.1.3.6.1.4.1.311.1.3.2.1.1.1
позволяет определить относящиеся к DHCP объекты SNMP (<IP-адрес> необходимо заменить нужным значением, например 192.168.40.91).
Аналогично, применяя утилиту Snmputil.ехе к объекту WINS 1.3.6.1.4.1.311.1.2.1.17 и объекту WINS 1.3.6.1.4.1.311.1.2.1.18, можно определить, сколько успешно разрешенных запросов было обработано WINS-сервером
snmputil getnext <IP-адрес> public.1.3.6.1.4.1.311.1.2.1.17
и сколько неуспешных запросов было выполнено сервером WINS
snmputil getnext <IP-адрес> public.1.3.6.1.4.1.311.1.2.1.18
А применение утилиты Snmputil.exe к объекту LAN Manager 1.3.6.1.4.1.77.1.1.1 и объекту LAN Manager 1.3.6.1.4.1.77.1.1.2
snmputil getnext 131.107.2.host_id public.1.3.6.1.4.1.77.1.1.1 snmputil getnext 131.107.2.host_id public.1.3.6.1.4.1.77.1.1.2
возвращает номер версии Windows NT Server, работающей на компьютере.
5. Заключение
Таким образом, протокол SNMP из семейства TCP/IP позволяет наблюдать и передавать информацию о состоянии компьютеров, работающих под управлением Windows NT, серверов LAN Manager, маршрутизаторов и шлюзов, мини-компьютеров или мэйнфреймов, терминальных серверов, концентраторов. SNMP использует распределенную архитектуру, состоящую из систем управления и агентов.
Перед установкой SNMP вам необходимо определить сообщество — группу, к которой принадлежит SNMP-компьютер. SNMP обеспечивает минимальный уровень безопасности и контекстную проверку для агентов. Вы можете использовать Event Viewer для обнаружения сбоев сервиса SNMP.
С помощью сервиса Microsoft SNMP-компьютер, работающий под управлением Windows NT, может выдавать отчет о своем состоянии системе управления SNMP в сети, использующей протокол TCP/IP.
Сервис SNMP посылает информацию о состоянии одному или нескольким компьютерам по запросу или в случае, когда происходит важное событие, например компьютеру не хватает места на жестком диске.
Этот протокол поддерживается как Microsoft Systems Management Server, так и продуктами OpenView (Hewlett-Packard), UniCenter TNG (Computer Associates), Tivoli (IBM). Windows NT Server и Windows NT Workstation включают агентов SNMP, что позволяет управлять ими с помощью всех названных продуктов.
КомпьютерПресс 5'2000