menotyoutoo
Hi all . . . can anyone tell me what snmpapp.conf is for? In the root directory of my Vista 32 bit Home Premium notebook there is a folder called USR and inside that is a folder called SNMP and then a folder called PERSIST — in other words:
C:usrsnmppersist
Inside persist is a file called snmpapp.conf
The contents of this file are:
#
# net-snmp (or ucd-snmp) persistent data file.
#
############################################################################
# STOP STOP STOP STOP STOP STOP STOP STOP STOP
#
# **** DO NOT EDIT THIS FILE ****
#
# STOP STOP STOP STOP STOP STOP STOP STOP STOP
############################################################################
#
# DO NOT STORE CONFIGURATION ENTRIES HERE.
# Please save normal configuration tokens for snmpapp in SNMPCONFPATH/snmpapp.conf.
# Only "createUser" tokens should be placed here by snmpapp administrators.
# (Did I mention: do not edit this file?)
#
engineBoots 4
oldEngineID 0x80001f8880a0550000f4de614d00000000
——————-
Please note that I can’t seem to find a SNMPCONFPATH as is mentioned in this file. I did some preliminary research and found that this might be connected to an Apache server (which I do have for development purposes) but do not run all of the time.
I did delete this folder multiple times, but it returns on reboot. I’ve run virus scans and spyware scans and it comes up clean . . . I still don’t like it since I don’t know what it is . . . help?!
Уже немало написано о том, что в названии Simple Network Management Protocol слово Simple можно смело писать в кавычках. Протокол SNMP является достаточно простым с точки зрения создания SNMP-агентов, однако на стороне управляющего ПО (SNMP manager) грамотная обработка сложных по структуре данных обычно является нетривиальной задачей.

Мы попытались упростить процесс настройки сбора данных и событий SNMP и позволить пользователям во время этого процесса:
- Никогда не заглядывать внутрь MIB-файлов
- Не знать, что такое OID-ы и никогда не оперировать с ними
- Не пользоваться отдельной SNMP-утилитой для предварительного просмотра данных во время настройки
Прежде всего необходимо разобраться с MIB-файлами. Описание логики связей между элементами данных и их синтаксиса было в SNMP реализовано при помощи этих файлов с целью уменьшения нагрузки на сеть и упрощения реализации агентов. Пользователи, однако, далеко не всегда хотят разбираться с их внутреннем устройстве.
Модуль SNMP нашей системы AggreGate Network Manager при старте загружает все MIB-файлы, находящиеся в специальной папке сервера, после чего позволяет добавлять новые при помощи простого диалога:

Во время загрузки файлов происходит их автоматическая компиляция. Встроенный редактор MIB-ов с подсветкой синтаксиса имеется лишь на случай появления MIBов, не соответствующих спецификации. Пользоваться им нужно крайне редко.


В случае построения классической системы мониторинга этот шаг обычно не требуется, так как все устройства добавляются в систему автоматически во время периодического обнаружения устройств (network discovery). Тем не менее, во время добавления обнаруженных сканированием сети устройств выполняются примерно те же шаги:
- Выбор типа устройства. В нашем случае подходит либо SNMP, либо Network Host, которые поддерживает Ping, SNMP, WMI, и другие типовые протоколы мониторинга ИТ.
- Указание адреса и настроек коммуникаций. Имеется в виду версия протокола, SNMP Communities, таймауты и количество повторов, настройки SNMP v3 и т.п.

После завершения этапа подключения устройства системе требуется от нескольких секунд до нескольких минут на завершение опроса устройства в рамках выбранных MIB-ов. Когда пиктограмма устройства становится зеленой, можно открывать и изучать так называемый «снимок устройства»:

В этом снимке сосредоточена практически вся суть нашего подхода к работе с данными SNMP. Прежде всего, он всегда содержит «под рукой» все реальные данные устройства. При этом все данные считываются только один раз, последующий опрос идет только по важным метрикам. Полное перечитывание снимка устройства производится раз в сутки, для снижения нагрузки на сеть его можно вообще отключить. Снимок устройства опционально сохраняется в БД при перезапуске системы мониторинга.
Обычно не требуется прибегать к помощи каких-либо внешних утилит когда требуется найти подходящие данные для мониторинга по их описаниям в MIB-файле или значениям. Все данные уже сгруппированы по MIB-файлам, однако можно сгруппировать их и по иерархии OID-ов:

Чтобы посмотреть подробное описание любой метрики или таблицы, содержащееся в MIB-файле, достаточно навести мышкой на описание или значение метрики. Во всплывающей подсказке также виден тип данных SNMP и полный OID:

Если метрика может принимать одно из нескольких числовых значений, описанных в MIB-файле текстовыми константами, в снимке устройства сразу показывается соответствующая текущему значению константа. Полный список констант и их числовых значений доступен через контекстное меню:

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

Но наибольшую пользу наш метод работы с данными SNMP приносит при обработке таблиц. Каждая SNMP-таблица показывается в снимке устройств как отдельная метрика табличного типа:

Редактирование данных в таблицах можно производить прямо по время просмотра, например для отключения сетевого интерфейса достаточно поменять значение поля ifAdminStatus в соответствующей строке.
При наведении на заголовок столбца во всплывающей подсказке видно описание поля, полученное из MIB-файла, а также его тип и OID:

Если имеется несколько связанных друг с другом таблиц, например использующих внешние индексы или расширение (augmentation), система автоматически обрабатывает все внутренние связи и сводит данные связанных таблиц в одно целое. В большинстве случаев пользователи даже не подозревают о существовании таких сложностей. Вот, например, как выглядит таблица hrSWRunPerfTable:

На уровне MIB файла эта таблица представляет из себя два столбца (hrSWRunPerfCPU и hrSWRunPerfMem), расширяющие таблицу hrSWRunTable. В снимке устройства эти таблицы уже объединены, что облегчает анализ данных, построение отчетности и диаграмм, настройку хранения и т.д.
Поскольку единая модель данных платформы AggreGate ориентирована на работу с таблицами, таблицы данных SNMP являются идеальным кандидатом на обработку встроенными средствами. При помощи них реализуется построение топологии L2/L3, анализ данных MPLS TE и MPLS VPN, мониторинг и создание тестов IP SLA, а также сотни более простых задач.
AggreGate Network Manager является одновременно платформой и коробочным продуктом, поэтому в большинстве случаев после автоматического или ручного добавления устройства периоды опроса и сроки хранения метрик уже преднастроены для всех метрик и таблиц, которые система «понимает», т.е. показывает на инструментальных панелях и анализирует на предмет необходимости генерации тревожных сообщений.
Откорректировать настройки опроса (синхронизации) и хранения метрики можно через ее контекстное меню, либо через настройки аккаунта (для всех метрик сразу).

В диалоге настроек хранения показывается только срок хранения «сырых» данных в обычной базе данных (реляционной или NoSQL, в зависимости от настроек сервера). В большинстве случаев данные SNMP хранятся в кольцевой базе данных (Round-Robin Database, RRD), которая встроена в платформу AggreGate. На тему создания каналов статистики, которые перекладывают метрики и части таблиц в кольцевую БД, будет отдельная статья.
Когда данные собираются и сохраняются в БД сервера, можно приступать к их использованию для дела, то есть для мониторинга и управления ИТ инфраструктурой. Контекстное меню любой метрики в снимке устройства предоставляет доступ к визардам, позволяющим начать настройку тревог, отчетов, графиков, запросов, инструментальных панелей, и других средств анализа и визуализации.

При помощи этих средств настраивается влияние метрик и таблиц на общесистемные операции поиска причин отказов, анализа производительности, планирования и инвентаризации, управления конфигурациями, и других функций системы. Попутно «рисуются» различные интерфейсы:

Описанный выше процесс может показаться сложным из-за множества упомянутых подробностей, однако на практике от момента подключения абсолютно нового устройства до появления его специфических данных на стандартных инструментальных панелях проходит всего несколько минут. За это время выход из нашей системы требуется лишь на время поиска специфических MIB-файлов на сайте производителя подключаемого оборудования.
При настройке мониторинга не требуется ручное указание названий MIB-ов, ввод OID-ов и других низкоуровневых идентификаторов. Это делает настройку SNMP-мониторинга достаточно быстрой и легкой.
Безусловно, нам еще есть над чем поработать. Требуется улучшение механизмов выбора индивидуальных метрик, чтобы избежать даже единократного опроса целых MIBов. Есть необходимость исключения из опроса индивидуальных строк и столбцов SNMP-таблиц. Нам интересно было бы услышать и о других недостатках процесса настройки SNMP-мониторинга в нашей системе.
Эта статья вообще не касается получения, обработки и отправки ловушек SNMP, работы по SNMP v3, и многих других аспектов.
Для более подробного рассказа мы приглашаем всех хабражителей на вебинар Мониторинг и управление по SNMP, который состоится 26 мая 2015 года в 11:00 по московскому времени. На этом вебинаре мы «вживую» продемонстрируем весь вышеописанный процесс, а также многие другие способы мониторинга сетевого, серверного и нестандартного оборудования при помощи SNMP.
Update — запись вебинара:
Сегодня большинство типов сетевого оборудования обладает поддержкой протокола SNMP. Данный стандарт по структуре считается очень простым. В сетевой инфраструктуре современных компаний осуществить его внедрение совсем несложно. Управление компьютерами посредством соответствующего протокола может осуществляться с применением широкого спектра программных решений. Какими основными возможностями обладает SNMP? Как данный протокол используется на практике? Что представляет собой протокол SNMP? Прежде всего, давайте изучим основные сведения о рассматриваемой технологии.
Что собой представляет SNMP? Расшифровывается данная аббревиатура как Simple Network Management Protocol. Если переводить дословно это значит «простой протокол сетевого управления». Данный стандарт можно отнести к числу наиболее распространенных из тех, что задействуется с целью управления различными устройствами в IP-сетях, функционирующих на базе архитектуры TCP/IP,например, коммутаторами, роутерами, сетевыми принтерами, рабочими станциями. Чаще всего рассматриваемый протокол используется в тех случаях, когда инфраструктура предполагает осуществление контроля устройств, подключенных к сети, на предмет выполнения заданных администратором условий. Структура сведений, оборот которых осуществляется в рамках протокола SNMP, включает в себя и те, которые представлены в виде переменных. С помощью них можно описать конфигурацию объекта управления, который находится в сетевой системе. При помощи управляющих приложений могут запрашиваться, а в ряде случаев и задаваться соответствующие переменные.
SNMP: возможности
Рассматриваемый протокол позволяет администратору сетей выполнять настройку тех или иных устройств при помощи главного сервера без необходимости использования специальных программ, функционал которых рассчитан только на мониторинг различных сетевых процессов. При помощи протокола, о котором идет речь в данной статье, можно в ходе администрирования процессов в сети осуществлять не только управление теми или иными процедурами, но также и наблюдать за производительностью инфраструктуры, своевременно выявлять возникающие в ней проблемы, осуществлять мониторинг использования сетевых ресурсов. В этом смысле протокол SNMP является уникальным инструментом. Давайте рассмотрим, ключевые компоненты, которые формируют инфраструктуру сетей, работающих на основе SMTP.
SNMP: основные компоненты
SNMP представляет собой протокол, который предполагает использование нескольких сетевых компонентов. К таким компонентам можно отнести:
— управляемый объект – приложение или компьютер, на которые администратор сети задает те или иные команды с использованием протокола;
— база данных MIB;
— система обеспечения сетевого взаимодействия.
Управляемый объект может не только получать команды от администратора, но также и направлять их в соответствии с заданными параметрами. Данные с объекта будут передаваться на программу-менеджер, которая будет интерпретировать их по установленным алгоритмам. На управляемом девайсе в свою очередь функционирует приложение-агент. Оно предназначено для сбора информации по соответствующему устройству. При необходимости оно может транслировать ее в формате, который адаптирован к специфике протокола SNMP. Сама по себе система обеспечения сетевого взаимодействия дает администратору возможность работать одновременно с несколькими программами-менеджерами с целью осуществления контроля над функционированием инфраструктуры. Также в сетях может быть инсталлировано несколько разновидностей программного обеспечения соответствующего типа. Ключевым, и возможно важнейшим элементом протокола SNMP является MIB или по-другому база управляющих сведений. Предназначение данного элемента состоит в описании структуры данных, обмен которыми производится в процессе управления устройствами. Соответствующая база данных фактически позволяет разместить информацию о том, что задействуется для управления устройством непосредственно на нем, будь то сервер, модем или сетевая плата. SNMP представляет собой универсальный протокол. Его функциональность во многом можно реализовать благодаря возможностям базы данных MIB. В устройствах, которые совместимы с данной технологией, могут содержаться как стандартные переменные, так и те переменные, которые характеризуют особенности отдельного устройства. Основным элементом данной базы являются идентификаторы типа OID.Они дают возможность устанавливать переменные, которые определяются и считываются при помощи протокола SMNP. Приложение-агент, которое является компонентом сетевой инфраструктуры SMNP, обычно получает запросы с использованием порта 161. Программа-менеджер в свою очередь может задействовать любые доступные в сети порты. Обычно данный тип программного обеспечения получает уведомления на порт 162. Давайте рассмотрим основные инструменты, которые могут использоваться протоколом при SNMP в работе. К таким инструментам можно отнести программу-менеджер.
Программа-менеджер: основные возможности
Благодаря возможностям рассматриваемого протокола данный вид программного обеспечения позволяет осуществлять управление группами самых разных устройств в рамках сетевой инфраструктуры. Программа, о которой будет идти речь далее, вполне может функционировать при условии предварительной установки на устройствах, управляемых посредством ее интерфейсов, приложения-агента, о котором уже шла речь выше. Оно передает на сервер администратора необходимые данные с использованием протокола SNMP.На стороне главного персонального компьютера в свою очередь функционирует рассматриваемая программа-менеджер, которая осуществляет обработку сведений, поступающих от управляемых устройств.
Какое программное обеспечение используется для управления сетью по протоколу SNMP?
Какие же программы можно использовать в качестве управляющих? В принципе, существуют решения, которые уже адаптированы к внедрению в различных операционных системах протокола SMTP – Windows, Solaris. Если говорить о программном обеспечении для операционной системы Windows, то в числе наиболее популярных программ, работающих в данной операционной системе и использующих протокол SMTP, есть пакет, выпущенный разработчиком Castle Rock Computing. Для Solaris в свою очередь было разработано другое довольно эффективное решение.Речь идет о Sun Net Manager.При помощи обоих этих вариантов можно построить эффективную карту сети, базирующуюся на протоколе SNMP. Также они позволяют выполнить прямую коммуникацию с MIB. В рамках соответствующих интерфейсов можно осуществлять управление маршрутизаторами различных брендов, которые осуществляют поддержку протокола SNMP, в частности Cisco. Современные производители сетевых устройств, как правило, выпускают документацию по MIB для того или иного устройства. Именно в документации будут отражены все возможности управления соответствующими компонентами инфраструктуры в рамках сети. Еще одним популярным способом решения проблемы управления сетевыми устройствами является Zabbix. SNMP это протокол, который также задействует данная программа. Данное решение обладает широким набором функций. В части применения SNMP оно позволяет осуществлять эффективный мониторинг сетевых процессов. Обмен данным в рамках протокола SNMP осуществляется при помощи специальных сообщений. Давайте более подробно рассмотрим их специфику.
Особенности сообщений SNMP
К основным сообщениям, обмен которыми может инициировать сервер администратора посредством протокола SNMP, относятся следующие команды:
— Get Bulk Request;
— Get Next Request;
Сущность первой команды состоит в отправке запроса от программы-менеджера к приложению-агенту для получения того или иного значения по переменной. Программа-менеджер в свою очередь получает ответ с определенными значениями. Специфика второй команды состоит в отправке сообщения также от программы-менеджера к приложению-агенту. В данном случае это необходимо для корректировки переменной – одной или по списку. Приложение-агент осуществляет прием изменений, а после этого направляет программе-менеджеру новые значения по одним или другим переменным. Суть команды Get Next Request состоит в отправке запроса от программы-менеджера к приложению агенту для обнаружения на устройстве всех доступных переменных, а также установленных для них значений. Приложение агент в свою очередь возвращает ответ, в котором содержится значение одной переменной, а также ссылка на следующую позицию в списке. Следующий запрос предлагает передачу данных, которые отражают сведения по следующей переменной, а также ссылку на идущую далее в очереди. Алгоритм оборота данных в дальнейшем при использовании рассматриваемой команды SNMP повторяется. Специфика команды Get Bulk Request состоит в том, что, по сути, она представляет собой модернизированную версию сообщения GetNextRequest. Данная команда предполагает, что приложение-агент направит ответ программе-менеджеру. Этот ответ должен содержать данные по нескольким переменным одновременно, начиная с той, что была представлена в начальном запросе. Смысл команды Response состоит в осуществлении процедуры возврата связанной переменной, а также значений от приложения-агента к программе-менеджеру при использовании рассмотренных выше четырех типов сообщений. Посредством соответствующей команды при этом между устройствами осуществляется обмен информацией об ошибке. Специфика команды Trap состоит в осуществлении передачи сообщений от приложения-агента без предварительного запроса со стороны программы-менеджера. В структуре данного сообщения присутствует текущее значение по переменной. Стоит отметить, что в данном случае получатель команды определяется при помощи особых конфигураций в рамках базы MIB. Суть команды Inform Request состоит в том, что фактически она соответствует уведомлению об отправке сообщения от программы-менеджера к приложению-агенту и наоборот. Применение данной команды обусловлено тем, что в ряде случаев в сетевой инфраструктуре те или иные сообщения могут доставляться некорректно. По сути, команда Inform Request подтверждает факт успешной передачи команды от одного устройства к другому. Во многих случаях корректная настройка SNMP требует от администратора повышенного внимания к проверке функциональности MIB. Давайте рассмотрим, в чем же состоят ее особенности
MIB: особенности функционирования
В рамках функционирования базы MIB ключевой процедурой является адресация переменных. Она осуществляется с учетом структуры рассматриваемого компонента протокола SNMP.MIB выглядит как древообразная схема, которая состоит из нескольких элементов. К каждому из этих элементов прикреплен особый идентификатор. В рамках базы MIB имя переменной отражает адрес до нее, начиная от корневого каталога. В самой структуре переменной могут быть различные сведения, например, информация о времени работы устройства. Также в MIB могут присутствовать как стандартные ветви, поддерживаемые большинством устройств, так и те, которые добавлены производителем устройства или организацией, в которой планируется внедрять инфраструктуру компьютерной сети. В данном случае правильно будет разместить соответствующие наборы переменных. Если они внедряются в структуру MIB временно, то есть смысл разместить их в разделе Experimental. Перед утверждением структуры базы данных необходимо присвоить набору переменных отдельный номер. Для этой цели используется раздел private-enterprises. Это даст возможность инженерам или администраторам сети, в компетенции которых присутствует SNMP-мониторинг, открыть новую ветвь в структуре MIB для размещения переменных только от своей компании.
SNMP: история появления
Вам должно быть будет интересно ознакомиться с историей разработки SNMP.Основной программной средой, в которой сегодня используется протокол SNMP, является Windows.Разработка была инициирована еще в 1988 году, задолго до того, как операционная система от компании Microsoft начала завоевывать рынки. Изначально SNMP разрабатывался для семейства операционных систем UNIX, предназначенных для решения широкого круга задач по обеспечению функциональности компьютерных сетей. К этому моменту многие эксперты видели потенциал операционной системы Windows. Не исключено, что разработка универсального сетевого протокола во многом была предопределена фактом потенциального роста популярности новой операционной системы. Имеется и еще один важный фактор, который сыграл важную роль в ускорении работы над SNMP — Web. Уже то время появились первые онлайн сервисы. Экспертам сразу было понятно, что впереди их ждет активная интеграция сетевых интерфейсов в глобальном масштабе. Крупнейшие производители сетевых устройств так или иначе в 1988 пришли к выводу, что им необходимо разработать универсальный набор средств для управления устройствами. Фирмы к этому моменту уже выпускали собственные решения для мониторинга и конфигурирования девайсов. Поэтому была необходима некоторая унификация.
Разработка SNMP: инструкции
В 1988 году предприятия, которые занимались выпуском сетевого оборудования, пришли к единому мнению. При разработке нового протокола были применены некоторые действующие концепции. Специалисты, которые совместно работали над данным протоколом, выявили три ключевых документа: RFC 1065, 1066, 1067.В результате они были дополнены и появились новые – RFC 1155, 1156, 1157. Данные источники были несколько переработаны. В 1991 году на их основе была выпущена первая версия протокола SNMP. Документ RFC 1155 содержал в себе инструкции, которые определяли, в какой структуре должна быть отражена управляющая информация и какими должны быть основные принципы применения синтаксиса при определении имен для переменных. Документ RFC 1155 в части синтаксиса переменных был дополнен источником RFC 1212. На момент утверждения протокола SMNP был разработан целый ряд новых документов, вроде RFC 1213. Здесь был отражен список ключевых переменных, при помощи которых должна была осуществляться конфигурация сетевой инфраструктуры. В источнике RFC 1157 содержались параметры, необходимые для определения команд, при помощи которых управляемый объект и сервер могли взаимодействовать, а также для осуществления обмена сообщениями trap. Как только был введен и опубликован протокол SNMP, сетевая карта, адаптер, сервер и в принципе любое устройство, входящее в инфраструктуру сети, могло стать объектом управления осуществляемого в рамках стандартных процедур. Введение протокола SNMP стало серьезным фактором роста рынка сетевого оборудования. Благодаря стандартизации стало возможным внедрение новых интерфейсов в самых широких масштабах новых интерфейсов, таких как FDDI и Ethernet.
Заключение
В данном обзоре мы разобрались с тем, что собой представляет протокол SNMP. Эта аббревиатура соответствует одному из ключевых сетевых протоколов, используемых в целях поддержания функциональности современных компьютерных сетей. Протокол SNMP предполагает осуществление между различными элементами инфраструктуры, управляемыми девайсами и управляющими серверами, обмена сообщениями. При этом происходит обращение к базе данных MIB устройства. В рамках протокола SNMP посредством стандартизованных сообщений могут осуществляться запросы одного или нескольких параметров MIB, установка значений для одной или нескольких переменных MIB, последовательное прочтение различных значений по тем или иным параметрам, возврат устройством на запрос другого устройства ответа, отправка уведомлений о тех или иных сетевых процессах. Алгоритмы MIB могут являться общими для всех устройств, как те, что прописываются производителем для некоторых типов сетевого оборудования. Что же собой представляет SNMP с точки зрения современного рынка информационных технологий. Безусловно данную технологию можно отнести к числу важнейших и не имеющих альтернативы. В результате многолетних разработок и согласований сетевых стандартов при участии ведущих производителей сетевого оборудования данная технология получилась простой.





