Методические указания (09.02.06 Сетевое и системное администрирование). МУ СА. Методические указания для практических занятий по междисциплинарному курсу мдк. 03. 01 Эксплуатация объектов сетевой инфраструктуры
Скачать 2.65 Mb.
|
Рисунок 1 - Network OlympusГлавная особенность – конструктор сценариев, позволяющий отойти от выполнения примитивных проверок, которые не позволяют учитывать те или иные обстоятельства работы устройств. С его помощью можно организовывать схемы мониторинга любой сложности, чтобы точно выявлять проблемы и неполадки, а также автоматизировать процесс их устранения. В основе сценария лежит сенсор, от которого можно выстраивать логические цепочки, которые в зависимости от успешности проверки будут генерировать разные оповещения и действия, направленные на решение ваших задач. Каждый элемент цепочки может быть отредактирован в любое время и сразу применится для всех устройств, за которыми закреплен сценарий. Вся сетевая активность будет отслеживаться при помощи журнала активности и специальных отчетов.
Контрольные вопросы Какие функции есть в изученной вами программе? Какие протоколы использует программ для мониторинга? Для чего нужны программные триггеры? Как создать скрипт-триггер для сетевого монитора? Практическое занятие № 10 Тема: средства анализа сети с помощью команд сетевой операционной системы Цель: на практике изучить команды сетевой операционной системы для анализа сети. Ход работы Изучите следующие команды ARP IPCONFIG GETMAC NBTSTAT NETSH NETSTAT NET NSLOOKUP PATHPING PING ROUTE TELNET TRACERT Результаты использования команд опишите в таблице №1: Таблица №1– таблица результатов команд
Контрольные вопросы Для чего используется команда ARP? Для чего используется команда ipconfig и какую информацию она предоставляет? Для чего используется команда getmac? Для чего используется команда nbtstat? Для чего используется команда netsh? Для чего используется команда netstat? Для чего используется команда net Для чего используется команда nslookup? Для чего используется команда pathping? Для чего используется команда route? Для чего используется команда telnet? Для чего используется команда tracert и какую информацию она предоставляет? Практическая работа № 11 Тема: протокол управления SNMP Цель: ознакомление с протоколом SNMP и программными утилитами (net-snmp) для работы с ним. Ход работы SNMP (англ. Simple Network Management Protocol — простой протокол управления сетями) — это протокол управления сетями связи на основе архитектуры UDP. Устройства, которые обычно поддерживают SNMP это маршрутизаторы, коммутаторы, серверы, рабочие станции, принтеры, модемы и т. д. SNMP является компонентом стека протоколов TCP/IP, как это определено Инженерным советом Интернет (Internet Engineering Task Force, IETF). Он состоит из набора стандартов сетевого управления, включая протокол передачи данных прикладного уровня, схему базы данных и набора объектов. Обычно при использовании SNMP присутствуют управляемые и управляющие системы. В состав управляемой системы входит компонент, называемый агентом, который отправляет отчёты управляющей системе. По существу SNMP агенты передают управленческую информацию на управляющие системы как переменные (такие как «свободная память», «имя системы», «количество работающих процессов»). Управляющая система может получить информацию через операции протокола GET, GETNEXT и GETBULK. Агент может самостоятельно без запроса отправить данные, используя операцию протокола TRAP или INFORM. Управляющие системы могут также отправлять конфигурационные обновления или контролирующие запросы, используя операцию SET для непосредственного управления системой. Операции конфигурирования и управления используются только тогда, когда нужны изменения в сетевой инфраструктуре. Операции мониторинга обычно выполняются на регулярной основе. Переменные, доступные через SNMP, организованы в иерархии. Эти иерархии и другие метаданные (такие, как тип и описание переменной) описываются Базами Управляющей Информации. Топология сети: Таблица адресации: Задачи: Часть 1. Создание сети и настройка базовых параметров устройств Часть 2. Настройка диспетчера и агентов SNMP Часть 3. Преобразование кодов OID с использованием Cisco SNMP Object Navigator Исходные данные/сценарий. Протокол SNMP (Simple Network Management Protocol — простой протокол управления сетями) — это протокол управления сетью и стандарт IETF, который может использоваться как для мониторинга сети, так и для контроля клиентов в ней. SNMP может использоваться для получения и настройки переменных, связанных с состоянием и настройкой сетевых машин, таких как маршрутизаторы и коммутаторы, а также клиентские компьютеры сети. Диспетчер SNMP может опрашивать агенты SNMP для получения данных, либо данные могут автоматически отправляться на диспетчера SNMP путём настройки ловушек на агентах SNMP. В этой лабораторной работе вы будете должны загрузить, установить и настроить программное обеспечение для управления SNMP с на компьютере ПК A. Вы также настроите маршрутизатор Cisco и коммутатор Cisco в качестве агентов SNMP. После получения сообщений с уведомлением SNMP от агента SNMP вы должны будете преобразовать коды MIB/ID объекта (OID), чтобы получить подробную информацию данных сообщений с помощью Cisco SNMP Object Navigator. Примечание. В практических лабораторных работах CCNA используются маршрутизаторы с интеграцией сервисов Cisco 1941 (ISR) под управлением ОС Cisco IOS версии 15.2(4) M3 (образ universalk9). В лабораторной работе используются коммутаторы Cisco Catalyst серии 2960 под управлением ОС Cisco IOS 15.0(2) (образ lanbasek9). Допускается использование коммутаторов и маршрутизаторов других моделей, а также других версий ОС Cisco IOS. В зависимости от модели устройства и версии Cisco IOS доступные команды и выходные данные могут отличаться от данных, полученных при выполнении лабораторных работ. Точные идентификаторы интерфейсов указаны в сводной таблице интерфейсов маршрутизаторов в конце лабораторной работы. Примечание. Убедитесь, что предыдущие настройки маршрутизаторов и коммутаторов удалены и они не имеют загрузочных настроек. Если вы не уверены в этом, обратитесь к инструктору. Примечание. Применение команд snmp-server в этой лабораторной работе приведёт к тому, что коммутатор Cisco 2960 сгенерирует сообщение с предупреждением при сохранении файла настройки в NVRAM. Чтобы избежать этого сообщения с предупреждением, убедитесь, что коммутатор использует шаблон lanbase-routing. Шаблон IOS контролируется диспетчером базы данных коммутатора (SDM). При изменении предпочтительного шаблона новый шаблон будет использоваться после перезагрузки, даже если настройка не сохраняется. S1# show sdm prefer Используйте следующие команды для назначения шаблона lanbase-routing в качестве шаблона SDM по умолчанию. S1# configure terminalS1(config)# sdm prefer lanbase-routing S1(config)# end S1# reload Часть 1: Построение сети и базовая настройка устройств В части 1 вам предстоит настроить топологию сети и сделать базовую настройку устройств. Шаг 1: Подключите кабели в сети в соответствии с топологией. Шаг 2: Настройте компьютер. Шаг 3: Инициализируйте и перезагрузите коммутатор и маршрутизаторы при необходимости. Шаг 4: Произведите базовую настройку маршрутизаторов и коммутатора. Отключите поиск DNS. Настройте имена устройств в соответствии с топологией. Настройте IP-адреса в соответствии с таблицей адресации. (В этот раз не настраивайте интерфейс S0/0/0 маршрутизатора R1.) Назначьте cisco в качестве пароля для консоли и виртуального терминала VTY и активируйте учётную запись. Назначьте class в качестве зашифрованного пароля доступа к привилегированному режиму. Настройте logging synchronous, чтобы сообщения от консоли не могли прерывать ввод команд. Проверьте подключения между устройствами локальной сети с помощью команды ping. Скопируйте текущую конфигурацию в файл загрузочной конфигурации. Часть 2: Настройка диспетчера и агентов SNMP В части 2 вы должны будете установить ПО для управления SNMP и настроить его на ПК A, а также настроить R1 и S1 в качестве агентов SNMP. Шаг 1: Установите программу управления SNMP. Загрузите и установите бесплатное приложение PowerSNMP Free Manager от компании Dart Communications, перейдя по следующему URL-адресу: http://www.dart.com/snmp-free-manager.aspx. Запустите программу PowerSNMP Free Manager. Рисунок 1 При отображении запроса на поиск доступных агентов SNMP нажмите кнопку No (Нет). Поиск агентов SNMP осуществляется после настройки SNMP на маршрутизаторе R1. PowerSNMP Free Manager поддерживает SNMP версии 1, 2, и 3. В данной лабораторной работе используется SNMPv2. Во всплывающем окне настройки (если всплывающее окно не отображается, перейдите во вкладку Tools > Configuration (Инструменты > Настройка)) назначьте локальный IP-адрес для прослушивания на 192.168.1.3 и нажмите OK. Рисунок 2 На маршрутизаторе R1 введите следующие команды в режиме глобальной конфигурации, чтобы настроить его в качестве агента SNMP. В строке 1 ниже строкой сообщества SNMP является ciscolab с правами только для чтения, а именованный список доступа SNMP_ACL определяет, какие узлы могут получать данные SNMP от маршрутизатора R1. В строках 2 и 3 команды местоположения и контактной информации агента SNMP предоставляют описательную контактную информацию. В строке 4 указаны IP-адрес узла, который будет получать уведомления SNMP, версия SNMP и строка сообщества. Строка 5 включает все ловушки SNMP по умолчанию; строки 6 и 7 создают именованный список контроля доступа, определяющий, каким узлам разрешено получение информации SNMP от маршрутизатора. R1(config)# snmp-server community ciscolab ro SNMP_ACL R1(config)# snmp-server location snmp_manager R1(config)# snmp-server contact ciscolab_admin R1(config)# snmp-server host 192.168.1.3 version 2c ciscolabR1(config)# snmp-server enable traps R1(config)# ip access-list standard SNMP_ACL R1(config-std-nacl)# permit 192.168.1.3 На этом этапе можно заметить, что PowerSNMP Free Manager получает уведомления от маршрутизатора R1. Если уведомления не приходят, вы можете попытаться принудительно установить отправку уведомления SNMP, введя команду copy run start на маршрутизаторе R1. Если вам не удаётся это сделать, перейдите к следующему шагу. Рисунок 3 Шаг 3: Выполните обнаружение агентов SNMP. В программе PowerSNMP Free Manager на компьютере ПК A откройте окно Discover > SNMP Agents (Обнаружение > Агенты SNMP). Введите IP-адрес 192.168.1.255. В том же окне щёлкните Properties (Свойства) и выберите в поле «Community» (Сообщество) параметр ciscolab, а в поле «SNMP Version» параметр Two (2), затем щёлкните OK. Теперь можете нажать Find (Найти) для обнаружения всех агентов SNMP в сети 192.168.1.0. Программа PowerSNMP Free Manager должна обнаружить маршрутизатор R1 по адресу 192.168.1.1. Установите флажок и щёлкните Add (Добавить), чтобы добавить маршрутизатор R1 в качестве агента SNMP. Рисунок 4 Рисунок 5 В программе PowerSNMP Free Manager маршрутизатор R1 добавляется в список доступных агентов SNMPv2. Рисунок 6 Настройте коммутатор S1 в качестве агента SNMP. Вы можете использовать те же команды snmp- server, которые вы использовали для настройки R1. После завершения настройки коммутатора S1 уведомления SNMP с адреса 192.168.1.2 отображаются в окне «Traps» (Прерывания) программы PowerSNMP Free Manager. В программе PowerSNMP Free Manager добавьте коммутатор S1 в качестве агента SNMP с помощью тех же действий, которые вы выполнили для обнаружения R1. Часть 3: Преобразование кодов OID с использованием Cisco SNMP Object Navigator В части 3 принудительно установите отправку уведомлений SNMP на диспетчер SNMP, размещенный на компьютере ПК A. После этого вы должны будете преобразовать полученные коды OID в имена, чтобы прочитать сообщения. Коды MIB/OID можно легко преобразовать с помощью средства Cisco SNMP Object Navigator на веб-сайте http://www.cisco.com. Шаг 1: Удалите текущие сообщения SNMP. В программе PowerSNMP Free Manager щёлкните правой кнопкой мыши окно Traps (Ловушки) и выберите Clear (Очистить) для удаления сообщений SNMP. Шаг 2: Создайте ловушку и уведомление SNMP. На маршрутизаторе R1 настройте интерфейс S0/0/0 согласно таблице адресации в начале данной лабораторной работы. Перейдите в режим глобальной конфигурации и разрешите интерфейсу отправлять уведомления, создаваемые в случае ловушки SNMP, на диспетчер SNMP на компьютере ПК A. Запомните коды организации/OID, отображаемые в окне ловушек. Рисунок 7 Шаг 3: Декодируйте сообщения MIB/OID SNMP. На компьютере с доступом к Интернету откройте веб-браузер и перейдите на веб-сайт http://www.cisco.com. С помощью средства поиска в верхней части окна выполните поиск SNMP Object Navigator. Выберите в результатах SNMP Object Navigator MIB Download MIBs OID OIDs. Перейдите на страницу MIB Locator. Выберите SNMP Object Navigator. Рисунок 8 На странице SNMP Object Navigator выполните декодирование кода OID из программы PowerSNMP Free Manager, который был создан в действии 2 части 3 данной лабораторной работы. Введите код OID и выберите Translate (Преобразовать). Рисунок 9 Контрольные вопросы Перечислите несколько потенциальных преимуществ наблюдения за сетью протокола SNMP Почему при работе SNMPv2 предпочтительно использовать исключительно доступ с правами для чтения? Практическое занятие № 12 Тема: Основные характеристики протокола SNMP Цель: изучите теоретическую информацию о протоколе SNMP. На практике приведите пример использования этого протокола там или иным спомобом. Справочная информация Simple Network Management Protocol (SNMP) — протокол, предназначенный для сетевого управления удаленных систем. С его помощью можно управлять и получать информацию о состоянии сетевого оборудования или сетевого протокола, реализованного на удаленной системе. SNMP является не просто протоколом для обмена управляющей информацией между объектами сети. Чаще всего под SNMP понимают Internet-Standard Management Framework или SNMP Framework, т.е. совокупность стандартов описывающих модели и средства использующиеся при сетевом управлении. SNMP Framework состоит из нескольких частей: Язык описания информации База данных управляемых элементов Описание протокола Решение проблем безопасности и администрирования При развитии стандарта от версии к версии, обновляется содержание этих модулей, но основные принципы строения SNMP остаются неизменны. Причиной модульного строения было желание упростить предполагаемый в скором времени переход от протокола SNMP к протоколам ISO. По этому были созданы протоколо-независимые SMI и MIB. В результате, планы по переходу к OSI не осуществились, но модульное строение SNMP Framework все же сыграло свою роль упростив переход от SNMPv1 к SNMPv2, и от SNMPv2 к SNMPv3. База данных управляемых элементов Для управления тем или иным сетевым протоколом или устройством с помощью SNMP, выделяются основные объекты этого протокола или устройства, которые могут предоставлять (для чтения или для изменения) какую-либо информацию о протоколе или устройстве. Все эти объекты являются управляемыми элементами этого протокола или оборудования. Управляемые элементы рассматриваются как объекты виртуального хранилища информации, называемого Management Information Base (MIB). В MIB все эти объекты рассматриваются как переменные, содержащие информацию о представляемом ими объекте. Например, для протокола IP, существует переменная ipDefaultTTL, которая содержит значение по умолчанию для поля TTL в заголовке датаграммы протокола IP, или переменная ipInHdrErrors, предоставляющая информацию о том, какое количество ip-пакетов было отсеено по причине ошибок в их заголовке. Наборы этих переменных определяются в MIB-модулях. Вообще, MIB имеет структуру дерева, каждый узел которого является переменной MIB. Для нужд сетевого управления сети Internet выделена отдельное поддерево, в котором могут быть определены все требуемые элементы. В одном из поддеревьев этого дерева содержатся все управляемые элементы сети Internet. Раньше вся эта ветка определялась одним MIB-модулем. Позже, после публикации второй версии этого MIB-модуля, был принят другой подход к созданию базы управляемых элементов. До этого существовал единственный комитет, работающий над документом, описывающим Стандартный MIB для Internet. Теперь же принято разделение на группы, каждая из которых специализируется в одной из областей сетевых технологий. Небольшие MIB-модули разработанные каждой группой, составляют единый Internet MIB. Т.о. теперь поддерево сетевого управления Internet описывается не единой спецификацией, входящей в состав SNMP, а набором отдельных документов, выпускаемых отдельно от Стандартов SNMP. Язык описания информации Вся База Управляемых Элементов описывается с помощью упрощенного подмножества стандартного языка OSI, Abstract Syntax Notation One (ASN.1). Это подмножество описывается в документе называемом Structure of Management Information, поэтому и весь язык описания информации для SNMP называется SMI. По мимо языка определения данных этот документ описывает также и древовидную структуру MIB и все стандартные поддеревья, которые должны присутствовать во всех реализациях MIB. Протокол Эта часть Стандартной Модели описывает протокол, посредством которого происходит обмен информацией между управляемым объектом (называемым агентом) и управляющей системой (называемой менеджером). PDU (protocol data unit) протокола SNMP содержит операцию, выполняемую протоколом и список переменных и их значений, участвующих в данной транзакции. Во всех версиях SNMP определены следующие операции: get, get-next, get-response, set-request. Более поздние версии определяют еще несколько операций. Этот модуль также содержит рекомендации о том, какой транспортных протокол может использоваться для доставки сообщений SNMP. Все версии SNMP, используемые на сегодняшний день содержат рекомендации об использовании транспортных протоколов без установки соединения (UDP). Безопасность и администрирование Система сетевого управления SNMP предоставляет достаточно большие возможности для непосредственного управления удаленными системами. По средствам SNMP можно получить доступ к достаточно критическим параметрам системы. Таким образом, проблемы безопасности должны учитываться на каждом этапе проектирования SNMP. В то же время безопасность любого открытого протокола всегда является очень спорным вопросом. В первой версии SNMP проблемы безопасности практически не учитывались. Этот недостаток SNMPv1 предполагался уже на стадии разработки, т.к. на тот момент основной задачей был скорейший выпуск стандартной модели сетевого управления, в которой нуждалось интернет-сообщество, а обсуждение спорных вопросов безопасности еще на долго затянуло бы разработку стандарта. Именно тогда проблемы безопасности и администрирования были вынесены в отдельный блок общей модели, рассмотрение которого было оставлено на будущие версии SNMP. Развитие SNMP В настоящее время существует три версии SNMP Framework. В следующих трех частях будут кратко описаны изменения произошедшие в каждой версии SNMP и ссылки на документы описывающие компоненты каждой версии SNMP. Контрольные вопросы Какие функции выполняет протокол SNMP? Какие программы используют протокол SNMP и для чего? Практическое занятие № 13 Тема: набор услуг (PDU)протокола SNMP. Цель: изучите теоретическую информацию описывающую работу протокола SNMP и ответьте на контрольные вопросы. Выделите основные элементы SNMP и вынесете их в табличный вид в отчете о работе. Теоретическая информация SNMP PDU (или сообщения SNMP протокола) SNMP - PDU (Protocol Data Unit), давайте разберем данное понятие. Для обмена между агентом и менеджером используется определенный набор команд: Trap – одностороннее уведомление от SNMP агента –> менеджеру о каком-либо событии. GetReponse – ответ от агента к менеджеру, возвращающий запрошенные значения переменных. GetRequest - запрос к агенту от менеджера, используемый для получения значения одной или нескольких переменных. GetNextRequest - запрос к агенту от менеджера, используемый для получения следующего в иерархии значения переменной. SetRequest - запрос к агенту на установку значения одной или нескольких переменных. GetBulkRequest – запрос к агенту на получение массива данных (тюнингованная GetNextRequest). (Этот PDU был введен в SNMPv2.) InformRequest – одностороннее уведомление между менеджерами. Может использоваться, например для обмена информацией о MIB (соответствие символьных OID - цифровым). В ответ менеджер формирует аналогичный пакет в подтверждение того, что исходные данные получены. (Этот PDU был введен в SNMPv2.) Как видно, в зависимости от версии протокола, набор команд разный (например InformRequest и GetBulkRequest полноценно появился только во второй версии SNMP). Компонент SNMP MIB рассмотрим ниже. Структура PDU Рассмотрение структуры PDU не обязательно, но это поможет более глубоко понять логику работы SNMP. Все PDU (кроме Trap) состоят из определенного набора полей, в которые записывается необходимая информация: Рисунок 1 Что данные поля обозначают: версия - содержит версию SNMP пароль (community) - содержит последовательность символов, описывающую принадлежность к группе (об этом ниже) тип PDU имеет цифровой идентификатор запроса (Get,GetNext,Set,Responde,Trap…) идентификатор запроса – это тот самый набор символов, который связывает в единое целое запрос\ответ. Статус ошибки– это число, характеризующее характер ошибки: Для запросов (Get,Set,GetNExt и др.) - 0 Для ответов: 0 (NoError) – Нет ошибок, 1 (TooBig) - Объект не вмещается в одно Response сообщение, 2 (NoSuchName) – не существующая переменная, 3 (BadValue) – при попытке установить значение задано недопустимое значение или совершена синтаксическая ошибка, 4 (ReadOnly) – при Set запросе была попытка изменить read-only переменную, 5 (GenErr) – другие ошибки. Индекс ошибки – не нашел внятного описания ( но смысл в том, что содержит некий индекс переменной, к которой относится ошибка Поле связанные переменные может содержать одну или более переменную (для запросов Get – это только имя переменных, для Set – имя и устанавливаемое значение, для Response – имя и запрошенное значение). При этом, содержимое Trap PDU содержит некоторые дополнительные поля (вместо заголовка запроса): Фирма – характеризующее производителя хоста Тип trapуведомления, может быть следующим: 0 (Coldstart) и 1 (Warmstart) – объект возвращен в начальное состояние (между ними имеется некая разница, но какая?..), 2 (Linkdown) – интерфейс опущен, при этом, поле переменной содержит интерфейс о котором идет речь, 3 (Linkup) – интерфейс поднялся, при этом, поле переменной содержит интерфейс о котором идет речь, 4 (Authenticationfailure) – менеджер прислал мессадж с неверной строкой community, 5 (EGPneighborloss) – затрудняюсь что либо сказать ), 6 (Entrprisespecific) – данный тип Trap сообщает о том, что в следующем поле содержится специализированный для данного вендора тип трапа. Специализированный тип Trap – описан выше Метка времени – содержит метку времени с момента события (непонятно, относительно чего эта метка…). В новых версиях SNMP содержимое Trap PDU может незначительно меняться, но в целом, смысл тот же... Логика работы протокола SNMP Рассмотрев основные единицы обмена SNMP, можно обсудить логику работы SNMP при выполнении данных запросов\ответов. Некоторые общие особенности работы протокола SNMP, которые стоит учитывать: Принимающая сторона первым делом пытается декодировать сообщение. Если принимающей стороне не удается раскодировать PDU, то пакет отбрасывается без каких-либо действий. Если версия SNMP в пришедшем пакете не соответствует версии сервера, то пакет так же дропается. После этого, сверяется аутентификационная информация (либо значение строки community, либо пользовательская информация). Могут применяться внешние модули для аутентификации (об аутентификации - ниже). Далее, происходит обработка сообщения. Если необходимо - генерируется ответ. Логика работы SNMP при обмене PDU-единицами (взято частично отсюда http://logic-bratsk.ru/brlug/snmp_my/): При получении PDU GetRequest, SNMP агент действует по следующему алгоритму: Если имя переменной не совпадает в точности с именем одной из переменной, доступных для операции get в нашей MIB, передаем отправителю запроса аналогичное PDU GetResponse, указывая в поле кода ошибки значение noSuchName (2-нет такого имени), а в поле error-index — индекс имени вышеупомянутого объекта в полученном сообщении (=1, в SNMPv1 - ограничение данной реализации SNMP). Если размер PDU GetResponse, созданного в соответствии с приведенным ниже описанием, превышает локальное ограничение (Реализация SNMP не обязана принимать сообщения, размер которых превышает определенное значение. Однако по возможности желательна поддержка дейтаграмм больших размеров (RFC1157 SNMP).), передаем отправителю аналогичное PDU GetResponse, указав в поле errorstatus значение TooBig, а в поле error-index — 0. Это обычно происходит, если запрошено больше 1 переменной или длина PDU или общая длина пакета больше стандартных пределов. Если для любой переменной, содержащейся в поле связанные, значение переменной не может быть найдено по причинам, которые отличаются от перечисленных выше, SNMP агент передает отправителю аналогичное PDU GetResponse, указав в поле error-status значение GenErr, а в поле error-index — индекс имени вышеупомянутого объекта в полученном сообщении. Если все нормально, передаем SNMP менеджеру, отправившему полученное сообщение, ответ - GetResponse, в котором для каждой переменной в поле связанные переменные подставлены запрошенные значения переменных. В поле error-status помещается значение NoError, а в поле error-index — 0. Значение поля request-id в ответном PDU совпадает с идентификатором в принятом сообщении. При получении PDU GetNextRequest, SNMP агент действует по следующему алгоритму: Если после переменной, указанной в запросе, нет следующей переменной, то передаем отправителю запроса менеджеру PDU GetResponse (с содержимым аналогичным исходному запросу), указывая в поле кода ошибки значение noSuchName (нет такого имени), а в поле error-index — индекс имени вышеупомянутого объекта в полученном сообщении (=1 для SNMPv1), значение переменной = NULL (кажется). Если размер PDU ответа (GetResponse), созданного в соответствии с приведенным ниже описанием, превышает локальное ограничение, принимающий объект передает отправителю аналогичное PDU GetResponse, указав в поле errorstatus значение tooBig, а в поле error-index — 0. Если для любой переменной в поле связанные переменные, значение переменной не может быть найдено по причинам, которые отличаются от перечисленных выше, принимающий объект передает менеджеру PDU с исходным содержимым GetResponse, указав в поле error-status значение genErr, а в поле error-index — индекс имени вышеупомянутого объекта в полученном сообщении. (аналогично вышесказанному) Если все нормально, передаем SNMP менеджеру, отправившему PDU, такое сообщение GetResponse, в котором для каждой переменной в поле связанные переменные содержится имя и значение переменной, иерархически следующей за запрошенной переменной в базе MIB. В поле error-status помещается значение noError, а в поле error-index — 0. Значение поля request-id в ответном PDU GetResponse совпадает с идентификатором в принятом сообщении. При получении PDU SetRequest, SNMP агент действует по следующему алгоритму: Если для любой переменной, содержащейся в поле связанные переменные, запись (операция set) не поддерживается в имеющих отношение к делу представлениях MIB, SNMP агент объект передает отправителю запроса аналогичное PDU GetResponse, указывая в поле кода ошибки значение noSuchName (нет такого имени), а в поле error-index — индекс имени вышеупомянутого объекта в полученном сообщении. Если для любой переменной в запросе, запрашиваемые к изменению значения переменных не соответствуют стандартам (SMI, ASN.1 – об этом ниже), то SNMP агент передает SNMP менеджеру аналогичное PDU GetResponse, указывая в поле кода ошибки значение badValue (нет такого имени), а в поле error-index — индекс имени вышеупомянутого объекта в полученном сообщении. Если размер PDU ответа (GetResponse), созданного в соответствии с приведенным ниже описанием, превышает локальное ограничение, принимающий объект передает отправителю аналогичное PDU GetResponse, указав в поле errorstatus значение tooBig, а в поле error-index — 0. Если для любой переменной в поле связанные переменные, значение переменной не может быть установлено по причинам, которые отличаются от перечисленных выше, SNMP агент передает менеджеру PDU с исходным содержимым GetResponse, указав в поле error-status значение genErr, а в поле error-index — индекс имени вышеупомянутого объекта в полученном сообщении. (аналогично вышесказанному) Если все нормально, агент передает SNMP менеджеру, отправившему PDU, такое сообщение GetResponse, в котором для каждой переменной в поле связанные переменные подставлены установленные значения переменных. В поле error-status помещается значение NoError, а в поле error-index — 0. Значение поля request-id в ответном PDU совпадает с идентификатором в принятом сообщении. Обмен PDU GET⁄ GET NEXT⁄ GET BULK⁄ SET |