Вся управляющая информация для контроля ЭВМ и маршрутизаторов Интернет концентрируется в базе данных
Согласно нормативам
| |
Описание | Код |
|---|---|---|
| System | Операционная система ЭВМ или маршрутизатора. | 1 |
| Interfaces | Сетевой интерфейс. | 2 |
| addr.trans | Преобразование адреса (напр., с помощью ARP). | 3 |
| IP | Программная поддержка протоколов Интернет. | 4 |
| Программное обеспечение |
5 | |
| TCP | Программное обеспечение TCP-протокола. | 6 |
| UDP | Программное обеспечение UDP-протокола. | 7 |
| Программное обеспечение |
8 | |
| Программное обеспечение |
11 |
| Системная переменная | Описание | Код |
|---|---|---|
| Sysdescr | Текстовое описание объекта; | 1 |
| Sysobjectid | Идентификатор производителя в рамках дерева 1.3.6.1.4.1 | 2 |
| Sysuptime | Время с момента последней загрузки системы (timeticks); | 3 |
| Syscontact | Имя системного менеджера и способы связи с ним; | 4 |
| Sysname | Полное имя домена; | 5 |
| Syslocation | Физическое местоположение системы; | 6 |
| Sysservice | Величина, которая характеризует услуги, предоставляемые узлом (сумма номеров уровней модели OSI); | 7 |
| Переменная описания интерфейсов (iftable) | Тип данных | Описание | ifEntry |
|---|---|---|---|
| IFindex | integer | Список интерфейсов от 1 до ifnumber. | 1 |
| IfDescr | displaystring | Текстовое описание интерфейса. | 2 |
| IfType | integer | Тип интерфейса, например, 6 — Ethernet; 9 — 802.5 маркерное кольцо; 23 — PPP; 28 — |
3 |
| IfNumber | integer | Число сетевых интерфейсов. | |
| IfMTU | integer | MTU для конкретного интерфейса; | 4 |
| IfSpeed | Скорость в бит/с. | 5 | |
| IfPhysaddress | physaddress | Физический адрес или строка нулевой длины для интерфейсов без физического адреса (напр., последовательный). | 6 |
| IfAdminStatus | [1...3] | Требуемое состояние интерфейса: 1 — включен; 2 — выключен; 3 — тестируется. | 7 |
| IfOperStatus | [1...3] | Текущее состояние интерфейса: 1 — включен; 2 — выключен; 3 — тестируется. | 8 |
| IfLastchange | timeticks | Sysuptime, когда интерфейс оказался в данном состоянии. | 9 |
| IfInOctets | counter | Полное число полученных байтов. | 10 |
| IfInUcastpkts | counter | Число пакетов, доставленных на верхний системный уровень ( |
11 |
| IfInNUcastpkts | counter | Число пакетов, доставленных на верхний системный уровень (nonunicast). | 12 |
| IfInDiscads | counter | Число полученных, но отвергнутых пакетов. | 13 |
| IfInErrors | counter | Число пакетов, полученных с ошибкой; | 14 |
| IfInUnknown-Protos | counter | Число пакетов, полученных с ошибочным кодом протокола; | 15 |
| IfOutOctets | counter | Число отправленных байтов; | 16 |
| IfOutUcastPkts | counter | Число |
17 |
| IfOutNucastPkts | counter | Число мультикастинг- и широковещательных пакетов, полученных с верхнего системного уровня; | 18 |
| IfOutDiscads | counter | Количество отвергнутых пакетов из числа отправленных; | 19 |
| IfOutErrors | counter | Число отправленных пакетов, содержащих ошибки; | 20 |
| IfOutQlen | Число пакетов в очереди на отправку; | 21 |
Ниже представлена таблица 9.3а. цифро-точечного представления переменных, характеризующих состояние интерфейса. Эта таблица может быть полезной для программистов, занятых проблемами сетевой диагностики.
| Название объекта | Цифра-точечное представление |
|---|---|
| org | 1.3 |
| 1.3.6 | |
| internet | 1.3.6.1 |
| directory | 1.3.6.1.1 |
| mgmt | 1.3.6.1.2 |
| 1.3.6.1.3 | |
| private | 1.3.6.1.4 |
| enterprises | 1.3.6.1.4.1 |
| security | 1.3.6.1.5 |
| snmpV2 | 1.3.6.1.6 |
| snmpDomains | 1.3.6.1.6.1 |
| snmpProxys | 1.3.6.1.6.2 |
| snmpModules | 1.3.6.1.6.3 |
| snmpMIB | 1.3.6.1.6.3.1 |
| snmpMIBObjects | 1.3.6.1.6.3.1.1 |
| snmpTraps | 1.3.6.1.6.3.1.1.5 |
| mib-2 | 1.3.6.1.2.1 |
| ifMIB | 1.3.6.1.2.1.31 |
| interfaces | 1.3.6.1.2.1.2 |
| ifMIBObjects | 1.3.6.1.2.1.31.1 |
| ifConformance | 1.3.6.1.2.1.31.2 |
| ifTableLastChange | 1.3.6.1.2.1.31.1.5 |
| ifXTable | 1.3.6.1.2.1.31.1.1 |
| ifStackTable | 1.3.6.1.2.1.31.1.2 |
| ifStackLastChange | 1.3.6.1.2.1.31.1.6 |
| ifRcvAddressTable | 1.3.6.1.2.1.31.1.4 |
| ifTestTable | 1.3.6.1.2.1.31.1.3 |
| ifXEntry | 1.3.6.1.2.1.31.1.1.1 |
| ifName | 1.3.6.1.2.1.31.1.1.1.1 |
| ifInMulticastPkts | 1.3.6.1.2.1.31.1.1.1.2 |
| ifInBroadcastPkts | 1.3.6.1.2.1.31.1.1.1.3 |
| ifOutMulticastPkts | 1.3.6.1.2.1.31.1.1.1.4 |
| ifOutBroadcastPkts | 1.3.6.1.2.1.31.1.1.1.5 |
| ifLinkUpDownTrapEnable | 1.3.6.1.2.1.31.1.1.1.14 |
| ifHighSpeed | 1.3.6.1.2.1.31.1.1.1.15 |
| ifPromiscuousMode | 1.3.6.1.2.1.31.1.1.1.16 |
| ifConnectorPresent | 1.3.6.1.2.1.31.1.1.1.17 |
| ifAlias | 1.3.6.1.2.1.31.1.1.1.18 |
| ifCounterDiscontinuityTime | 1.3.6.1.2.1.31.1.1.1.19 |
| ifStackEntry | 1.3.6.1.2.1.31.1.2.1 |
| ifStackHigherLayer | 1.3.6.1.2.1.31.1.2.1.1 |
| ifStackLowerLayer | 1.3.6.1.2.1.31.1.2.1.2 |
| ifStackStatus | 1.3.6.1.2.1.31.1.2.1.3 |
| ifRcvAddressEntry | 1.3.6.1.2.1.31.1.4.1 |
| ifRcvAddressAddress | 1.3.6.1.2.1.31.1.4.1.1 |
| ifRcvAddressStatus | 1.3.6.1.2.1.31.1.4.1.2 |
| ifRcvAddressType | 1.3.6.1.2.1.31.1.4.1.3 |
| ifTestEntry | 1.3.6.1.2.1.31.1.3.1 |
| ifTestId | 1.3.6.1.2.1.31.1.3.1.1 |
| ifTestStatus | 1.3.6.1.2.1.31.1.3.1.2 |
| ifTestType | 1.3.6.1.2.1.31.1.3.1.3 |
| ifTestResult | 1.3.6.1.2.1.31.1.3.1.4 |
| ifTestCode | 1.3.6.1.2.1.31.1.3.1.5 |
| ifTestOwner | 1.3.6.1.2.1.31.1.3.1.6 |
| ifGroups | 1.3.6.1.2.1.31.2.1 |
| ifCompliances | 1.3.6.1.2.1.31.2.2 |
| ifGeneralInformationGroup | 1.3.6.1.2.1.31.2.1.10 |
| ifFixedLengthGroup | 1.3.6.1.2.1.31.2.1.2 |
| ifHCFixedLengthGroup | 1.3.6.1.2.1.31.2.1.3 |
| ifPacketGroup | 1.3.6.1.2.1.31.2.1.4 |
| ifHCPacketGroup | 1.3.6.1.2.1.31.2.1.5 |
| ifVHCPacketGroup | 1.3.6.1.2.1.31.2.1.6 |
| ifRcvAddressGroup | 1.3.6.1.2.1.31.2.1.7 |
| ifStackGroup2 | 1.3.6.1.2.1.31.2.1.11 |
| ifCounterDiscontinuityGroup | 1.3.6.1.2.1.31.2.1.13 |
| ifGeneralGroup | 1.3.6.1.2.1.31.2.1.1 |
| ifTestGroup | 1.3.6.1.2.1.31.2.1.8 |
| ifStackGroup | 1.3.6.1.2.1.31.2.1.9 |
| ifOldObjectsGroup | 1.3.6.1.2.1.31.2.1.12 |
| ifCompliance2 | 1.3.6.1.2.1.31.2.2.2 |
| ifCompliance | 1.3.6.1.2.1.31.2.2.1 |
| ifNumber | 1.3.6.1.2.1.2.1 |
| ifTable | 1.3.6.1.2.1.2.2 |
| ifEntry | 1.3.6.1.2.1.2.2.1 |
| ifIndex | 1.3.6.1.2.1.2.2.1.1 |
| ifDescr | 1.3.6.1.2.1.2.2.1.2 |
| ifType | 1.3.6.1.2.1.2.2.1.3 |
| ifMtu | 1.3.6.1.2.1.2.2.1.4 |
| ifSpeed | 1.3.6.1.2.1.2.2.1.5 |
| ifPhysAddress | 1.3.6.1.2.1.2.2.1.6 |
| ifAdminStatus | 1.3.6.1.2.1.2.2.1.7 |
| ifOperStatus | 1.3.6.1.2.1.2.2.1.8 |
| ifLastChange | 1.3.6.1.2.1.2.2.1.9 |
| ifInOctets | 1.3.6.1.2.1.2.2.1.10 |
| ifInUcastPkts | 1.3.6.1.2.1.2.2.1.11 |
| ifInNUcastPkts | 1.3.6.1.2.1.2.2.1.12 |
| ifInDiscards | 1.3.6.1.2.1.2.2.1.13 |
| ifInErrors | 1.3.6.1.2.1.2.2.1.14 |
| ifInUnknownProtos | 1.3.6.1.2.1.2.2.1.15 |
| ifOutOctets | 1.3.6.1.2.1.2.2.1.16 |
| ifOutUcastPkts | 1.3.6.1.2.1.2.2.1.17 |
| ifOutNUcastPkts | 1.3.6.1.2.1.2.2.1.18 |
| ifOutDiscards | 1.3.6.1.2.1.2.2.1.19 |
| ifOutErrors | 1.3.6.1.2.1.2.2.1.20 |
| ifOutQLen | 1.3.6.1.2.1.2.2.1.21 |
| ifSpecific | 1.3.6.1.2.1.2.2.1.22 |
| Переменная IP-группы | Тип данных | Описание | Код |
|---|---|---|---|
| ipForwarding | integer | Указание на то, что данный объект осуществляет переадресацию (работает как маршрутизатор). | 1 |
| IPdefaultTTL | integer | Значение, которое использует IP в поле TTL. | 2 |
| IPinreceives | counter | Число полученных дейтограмм. | 3 |
| ipInHdrErrors | counter | Число дейтограмм, отвергнутых из-за ошибок формата, неверных адресов или опций, из-за истекшего TTL. | 4 |
| ipInHdrErrors | counter | Число дейтограмм, отвергнутых из-за неверного IP-адреса, например, 0.0.0.0, или неподдерживаемого класса, например, Е. | 5 |
| ipForwDatagrams | counter | Число дейтограмм, для которых данный объект не является местом назначения (маршрутизация отправителя). | 6 |
| ipInUnknownProtos | counter | Число дейтограмм с неподдерживаемым кодом протокола. | 7 |
| ipInDiscards | counter | Число дейтограмм, отвергнутых из-за переполнения буфера. | 8 |
| ipInDelivers | counter | Полное число входных дейтограмм, успешно обработанных на IP-уровне. | 9 |
| ipOutRequests | counter | Полное число IP и |
10 |
| ipOutRequests | counter | Полное число IP и |
11 |
| IPoutNoroutes | counter | Число неудач при маршрутизации. | 12 |
| ipReasmTimeout | counter | Максимальное число тайм-аутов сборки фрагментов. | 13 |
| ipReasmReqds | counter | Число полученных фрагментов | 14 |
| ipReasmOKs | counter | Число полученных и успешно собранных IP-дейтограмм | 15 |
| ipReasmFails | counter | Число полученных IP-дейтограмм, которые по тем или иным причинам не удалось собрать | 16 |
| IPFragOKs | counter | Число успешно фрагментированных IP- дейтограмм. | 17 |
| ipFragFails | counter | Число IP-дейтограмм, которые нужно фрагментировать, но сделать этого нельзя (например, из-за флага). | 18 |
| ipFragCreates | counter | Число IP-дейтограмм фрагментов, сформированных данным объектом. | 19 |
| ipAddrTable | counter | Таблица адресной информации данного объекта. | 20 |
| ipRouteTable | Последовательность записей маршрутной таблицы | Запись в маршрутной таблице | 21 |
| ipAddrEntry | |||
| IPAdEntAddr | IPaddress | IP-адрес для данного ряда | 1 |
| IPadentifindex | integer | Число интерфейсов. | 2 |
| IPadentnetmask | IPaddress | Маска субсети для данного IP-адреса; | 3 |
| IPAdEntBcastAddr | [0...1] | Значение младшего бита широковещательного адреса (обычно 1); | 4 |
| IPAdEntReasm-Maxsize | [0...65535] | Размер наибольшей IP-дейтограммы, полученной интерфейсом, которая может быть собрана. | 5 |
| Переменные TCP-группы | Тип данных | Описание | Код |
|---|---|---|---|
| tcpRtoAlgorithm | integer | Алгоритм выявления таймаута для повторной передачи TCP-пакетов: 1 — ни один из следующих; 2 — постоянное |
1 |
| tcpRtoMin | integer | Минимальное допустимое время повторной передачи TCP-пакетов. | 2 |
| tcpRtoMax | integer | Максимальное значение тайм-аута в миллисекундах. | 3 |
| tcpMaxConn | integer | Максимальное допустимое число TCP-соединений. | 4 |
| tcpActiveOpens | integer | Число TCP-соединений Active-Open | 5 |
| tcpPassiveOpens | integer | Число TCP-соединений |
6 |
| tcpAttemptFails | integer | Число неудачных TCP-соединений | 7 |
| tcpEstabResets | integer | Число разрывов TCP-соединений из состояний ESTABLISHED или CLOSE-WAIT | 8 |
| tcpCurrEstab | Число TCP-соединений, для которых текущее состояние соответствует ESTABLISHED или CLOSE-WAIT | 9 | |
| tcpInSegs | counter | Полное число полученных TCP-сегментов. | 10 |
| tcpOutSegs | counter | Полное число посланных сегментов, исключая повторно пересылаемые. | 11 |
| tcpRetransSegs | counter | Полное число повторно пересланных сегментов. | 12 |
| tcpConnTable | counter | Таблица данных специфичных для соединения | 13 |
| tcpInErrs | counter | Полное число сегментов, полученных с ошибкой. | 14 |
| tcpOutRsts | counter | Полное число посланных сегментов с флагом rst=1. | 15 |
| tcpconntable. TCP-таблица связей | |||
| tcpconnstate | [1...12] | ||
| tcpconnlocal address | ipaddress | Местный IP-адрес. 0.0.0.0 означает, что приемник готов установить связь через любой из интерфейсов. | |
| tcpconnlocal port | [0...65535] | Местный номер порта. | |
| tcpconnlocal address | ipaddress | Удаленный ip-адрес. | |
| tcpconnrem port | [0...65535] | Удаленный номер порта | |
| Переменная |
Описание | Код |
|---|---|---|
| icmpInMsgs | Полное число полученных |
1 |
| icmpInErrors | Число |
2 |
| icmpInDestUnreach | Число |
3 |
| icmpintimeexcds | Число |
4 |
| icmpInParmProbs | Число полученных |
5 |
| icmpInSrcQuench | Число |
6 |
| icmpInRedirects | Число |
7 |
| icmpInEchos | Число полученных |
8 |
| icmpInEchoReps | Число полученных |
9 |
| icmpInTimestamps | Число |
10 |
| icmpInTimestampReps | Число |
11 |
| icmpInAddrMasks | Число |
12 |
| icmpInAddrMaskReps | Число |
13 |
| icmpOutMsgs | Число отправленных |
14 |
| icmpOutErrors | Число не отправленных |
15 |
| icmpOutDestUnreachs | Число |
16 |
| icmpOutTimesExcds | Число посланных |
17 |
| icmpOutParmProbs | Число посланных |
18 |
| icmpOutSrcQuench | Число посланных |
19 |
| icmpOutRedirects | Число посланных |
20 |
| icmpOutEchos | Число посланных |
21 |
| icmpOutEchoReps | Число посланных |
22 |
| icmpOutTimestamps | Число посланных |
23 |
| icmpOutTimestampReps | Число посланных |
24 |
| icmpOutAddrMasks | Число посланных |
25 |
| Переменные at-группы | Тип данных | Описание | atEntry |
|---|---|---|---|
| atIfIndex | integer | Число интерфейсов. | 1 |
| atPhysAddress | physaddress | Физический адрес. Если эта переменная равна строке нулевой длины, физический адрес отсутствует. | 2 |
| atNetAddress | networkaddress | IP-адрес. | 3 |
Помимо простых переменных, объектами
Каждый протокол (например, IP) имеет свою таблицу преобразования адресов. Для IP — это ipnettomediatable. Способ распечатать эту таблицу с помощью программы SNMPI описан ниже.
| Название объекта | Описание | Код |
|---|---|---|
| SnmpInPkts | Число пакетов, которые получены от слоя, расположенного ниже |
1 |
| SnmpOutPkts | Число пакетов, доставленных от |
2 |
| SnmpInBadVersions | Индицирует число |
3 |
| snmpInBadCommunity-Names | Индицирует число |
4 |
| snmpInBadCommunity-Uses | Полное число |
5 |
| snmpInAsnParsErrs | Указывает полное число ошибок ASN.1 или |
6 |
| snmpInTooBigs | Указывает число полученных |
8 |
| snmpInNoSuchNames | Указывает число |
9 |
| snmpInBadValues | Указывает число |
10 |
| snmpInReadOnlys | Указывает число |
11 |
| snmpNnGenErrs | Указывает число |
12 |
| snmpInTotalReqVar | Указывает число объектов |
13 |
| snmpInTotalSetVars | Указывает число объектов |
14 |
| snmpInGetRequests | Указывает число соответствующих |
15 |
| snmpInGetNexts | Указывает полное число |
16 |
| snmpInSetRequests | Указывает полное число |
17 |
| snmpInGetResponses | Указывает полное число |
18 |
| snmpInTraps | Указывает полное число, полученных и успешно обработанных TRAP | 19 |
| snmpOutTooBig | Указывает число посланных |
20 |
| snmpOutNoSuchNames | Указывает число посланных |
21 |
| snmpOutBadValues | Указывает число посланных |
22 |
| snmpOutGenErrs | Указывает число посланных |
24 |
| snmpOutGetRequests | Указывает число посланных |
25 |
| snmpOutGetNexts | Указывает число посланных |
26 |
| snmpOutSetRequests | Указывает число посланных |
27 |
| snmpOutGetResponses | Указывает число посланных |
28 |
| snmpOutTraps | Указывает число посланных |
29 |
| snmpEnableAuthTraps | Говорит о том, разрешены или нет ловушки (TRAP). | 30 |
Стандарт на структуру управляющей информации (
Практически в протоколе
integer. Некоторые переменные объявляются целыми (integer) с указанием начального значения или с заданным допустимым диапазоном значений (в качестве примера можно привести номера UDP- или TCP-портов).
octet string (последовательность байтов). В соответствии с требованиями
object identifier (идентификатор объекта). Имя объекта, которое представляет собой последовательность целых чисел, разделенных точками. апример, 192.148.167.129 или 1.3.6.1.2.1.5.
null. Указывает, что соответствующая переменная не имеет значения.
displaystring. Строка из 0 или более байт (но не более 255), которые представляют собой ASCII-символы. Является частным случаем
physaddress.
Сетевой адрес. Допускается выбор семейства сетевых протоколов. В рамках ASN.1 этот тип описан как choice, он позволяет выбрать протокол из
IP-адрес. Этот адрес используется для определения 32-разрядного Интернет адреса. В нотации ASN.1 — это
time ticks (такты часов). Положительное целое число, которое используется для записи, например, времени последнего изменения параметров управляемого объекта, или времени последней актуализации базы данных. Время измеряется в сотых долях секунды.
gauge (масштаб). Положительное целое число в диапазоне 0 - (232-1), которое может увеличиваться или уменьшаться. Если эта переменная достигнет величины 232-1, она будет оставаться неизменной до тех пор, пока не будет обнулена командой сброс. Примером такой переменной может служить tcpcurresta, которая характеризует число TCP соединений, находящихся в состоянии established или close_wait.
counter (счетчик). Положительное целое число в диапазоне 0 - (232-1), которое может только увеличиваться, допуская переполнение.
sequence. Этот объект аналогичен структуре в языке Си.
Например,
SEQUENCE OF. Описание вектора, все элементы которого имеют один и тот же тип. Элементы могут представлять собой простые объекты, например, типа целое. В этом случае мы имеем одномерный список. Но элементами вектора могут быть объекты типа SEQUENCE, тогда этот вектор описывает двумерный массив.
В
Стандарт ASN.1 определяет форму представления информации и имен. Имена переменных
(рис 9.1) Структура идентификаторов переменных в MIBВ приведенной ниже таблице охарактеризованы четыре простые переменные, идентификаторы которых помещены в нижней части . Все эти переменные допускают только чтение (таблица 9.1">рис 9.7б">таблица 9.1. Все эти переменные допускают только чтение ( Ниже приведено описание таблицы (udptable; index = <udplocaladdress>, <udplocalport>), состоящей из двух простых переменных (read-only) (таблица 9.7в.).Имя переменной
Тип данных
Описание
Код udpInDatagrams
counter
Число UDP-дейтограмм, присланных
1
udpNoPorts
counter
Число полученных UDP-дейтограмм, для которых отсутствует прикладной процесс в порте назначения.
2
udpInErrors
counter
Число UDP-дейтограмм, не доставленных по причинам, отличающимся от отсутствия процесса со стороны порта назначения (напр., ошибка контрольной суммы).
3
udpOutDatagrams
counter
Число посланных UDP-дейтограмм.
4
udpTable
counter
Таблица, содержащая данные о принимающей стороне
5
| Имя переменной | Тип данных | Описание |
|---|---|---|
| udplocaladdress | ipaddress | Местный IP-адрес для данного приемника; |
| udplocalport | (0 - 65535) | Местный номер порта приемника. |
Согласно этой иерархии переменные, соответствующие
Помимо стандартного набора переменных и таблиц
(рис 9.2) Расширение базы данных MIB маршрутизаторов CiscoПрефикс 1.3.6.1.4.1. является стандартным, далее следует расширение, индивидуальное для маршрутизаторов компании Cisco. Например, группа IPcheckpoint accounting позволяет контролировать поток байтов с определенных адресов локальной сети, что бывает важно при работе с коммерческими провайдерами услуг.
Коды-префиксы для различных производителей телекоммуникационного оборудования приведены в таблице 9.8.
| Код префикса | Название фирмы |
|---|---|
| 0 | Зарезервировано |
| 1 | Proteon |
| 2 | IBM |
| 3 | |
| 4 | UNIX |
| 5 | |
| 6 | TWG |
| 7 | Cayman |
| 8 | PSI |
| 9 | Cisco |
| 10 | NSC |
| 11 | HP |
| 12 | Epilogue |
| 13 | U of Tennessee |
| 14 | |
| 15 | Xylogics, inc. |
| 16 | Unisys |
| 17 | Canstar |
| 18 | Wellfleet |
| 19 | TRW |
| 20 | MIT |
Группа локальных переменных IP
Маршрутизаторы Cisco поддерживают две базы данных: active accounting и clear IP accounting, а для базы clear IP accounting (для использования этих команд необходимы accounting-threshold <значение>, по умолчанию максимальное число записей в базе данных равно 512.
Лучшим способом закрепить в памяти все вышесказанное является использование программы SNMPI ( ) или ее аналога. Если в вашем распоряжении имеется ЭВМ, работающая под Unix, например SUN, вы можете попутно узнать много полезного о вашей локальной сети. Ниже описан синтаксис обращения к SNMPI.
snmpi [-a agent] [-c community] [-f file] [-p portno] [-d] [-v] [-w]
SNMPI — крайне простая программа, используемая для тестирования SNMPD. Чтобы проверить, работает ли она, выдайте команду:
% SNMPI dump
Следует отметить, что в ответ на эту операцию будет произведена весьма объемная выдача.
Опция -a предлагает возможность ввести адрес -p позволяет задать номер UDP-порта. По умолчанию это порт 161.
Опция -c позволяет задать пароль (community) для
Опция -f позволяет выбрать файл, содержащий откомпилированные описания
Опция -w включает режим наблюдения, осуществляя выдачу на терминал всех служебных сообщений. Уход из программы по команде quit ( q ).
Если вы работаете на IBM/PC и ваша машина подключена к локальной сети, получите допуск к одной из UNIX-машин в сети (если вы его не имели) и приступайте. Можно начать с обращения типа:
SNMPI -a 193.124.224.33 (адрес или символьное имя надо взять из вашей локальной сети)
Машина откликнется, отобразив на экране SNMPI>, — это означает, что программа имеется и вы можете вводить любые команды.
Начать можно со знакомства с системными переменными (в дальнейшем курсивом выделены команды, введенные с клавиатуры):
SNMPI> get sysdescr.0 snmpi> sysdescr.0="GS software (gs3-k), version 9.1(4) [fc1], software copyright (c) 1986-1993 by cisco systems, inc. compiled thu 25-mar-93 09:49 by daveu" snmpi> get sysobjectid.0 snmpi> sysobjectid.0=1.3.6.1.4.1.9.1.1 snmpi> get sysuptime.0 snmpi> sysuptime.0=14 days, 7 hours, 0 minutes, 15.27 seconds (123481527 timeticks) snmpi> get sysservices.0 snmpi> sysservices.0=0x6
Код 0x06 (sysservices.0) представляет собой сумму кодов уровней модели ISO, поддерживаемых системой. Для справок: 0x01 — физический уровень; 0x02 — связной уровень; 0x04 — Интернет; 0x08 — связь точка-точка; 0x40 — прикладной уровень.
Если у вас возникла необходимость просмотреть таблицу, например, udptable, это также можно сделать, используя snmpi:
SNMPI> next udptable SNMPI> udplocaladdress.193.124.137.14.7=193.124.137.14 SNMPI> next udplocaladdress.193.124.137.14.7 SNMPI> udplocaladdress.193.124.224.33.67=193.124.224.33 SNMPI> next udplocaladdress.193.124.224.33.67 SNMPI> udplocaladdress.193.124.224.33.161=193.124.224.33 SNMPI> next udplocalport.193.124.224.33.67 SNMPI> udplocalport.193.124.224.33.161=161
Если вы хотите получить временные зависимости вариаций потоков дейтограмм, можно воспользоваться услугами программы MRTG. Ниже показана методика выяснения алгоритма и параметров задания величины тайм-аута:
SNMPI> get tcprtoalgorithm.0 tcprtomin.0 tcprtomax.0 tcpmaxconn.0 SNMPI> tcprtoalgorithm.0=vanj(4) (vanj — алгоритм Ван Джакобсона для расчета времени тайм-аута) tcprtomin.0=300 (минимальное значение тайм-аута = 300 мс) tcprtomax.0=60000 (максимальное — 60 сек) tcpmaxconn.0=-1 (никаких ограничений на число соединений)
Чтобы получить информацию о состоянии таблицы адресных преобразований, выдайте команду: SNMPI -a 193.124.224.33 dump at (процедуры с использование субкоманды dump требуют определенного времени для своего исполнения)
atifindex.1.1.193.124.224.33= 1 atifindex.1.1.193.124.224.35= 1 atifindex.3.1.192.148.166.203= 3 atifindex.3.1.192.148.166.205= 3 atifindex.5.1.145.249.30.33= 5 atifindex.5.1.192.148.166.98= 5 atphysaddress.1.1.193.124.224.33= 0x00:00:0c:02:3a:49 atphysaddress.1.1.193.124.224.35= 0x08:00:20:12:1b:b1 atphysaddress.1.1.193.124.224.40= 0x00:00:cd:f9:0d:e7 atphysaddress.1.1.193.124.224.50= 0x00:00:0c:02:fb:c5 atnetaddress.1.1.193.124.224.33= 193.124.224.33 atnetaddress.1.1.193.124.224.35= 193.124.224.35 atnetaddress.1.1.193.124.224.40= 193.124.224.40 atnetaddress.1.1.193.124.224.50= 193.124.224.50 atnetaddress.1.1.193.124.224.60= 193.124.224.60
Текст выдачи с целью экономии места сокращен.
Обычно элементы таблицы расположены в порядке колонка-ряд. Если вы дошли до края колонки или всей таблицы, ЭВМ выдаст вам, в зависимости от реализации программы, имя и значение следующего элемента или сообщение об ошибке.
Чтобы получить полный текст адресной таблицы в рамках SNMPI, достаточно выдать команду:
SNMPI> dump ipaddrtable
snmpi> ipadentaddr.192.148.166.222= 192.148.166.222
ipadentaddr.192.168.1.1= 192.168.1.1
ipadentaddr.192.168.1.2= 192.168.1.2
ipadentaddr.193.124.224.33= 193.124.224.33
ipadentaddr.193.124.224.190= 193.124.224.190
ipadentifindex.192.148.166.222= 3
ipadentifindex.192.168.1.1= 4
ipadentifindex.192.168.1.2= 6
ipadentifindex.193.124.224.33= 1
ipadentifindex.193.124.224.190= 5
(Маски субсетей)
ipadentnetmask.192.148.166.222= 255.255.255.224
ipadentnetmask.192.168.1.1= 255.255.255.0
ipadentnetmask.192.168.1.2= 255.255.255.0
ipadentnetmask.193.124.224.33= 255.255.255.224
ipadentnetmask.193.124.224.190= 255.255.255.224
ipadentbcastaddr.192.148.166.222= 1
(Все эти субсети используют для широковещательной адресации
одни и те же биты).
ipadentbcastaddr.192.168.1.1= 1
ipadentbcastaddr.192.168.1.2= 1
ipadentbcastaddr.193.124.224.33= 1
ipadentbcastaddr.193.124.224.190= 1
ipadentreasmmaxsize.192.148.166.222= 18024
(С точки зрения фрагментации и последующей сборки дейтограмм
данные субсети эквивалентны).
ipadentreasmmaxsize.192.168.1.1= 18024
ipadentreasmmaxsize.192.168.1.2= 18024
ipadentreasmmaxsize.193.124.224.33= 18024
ipadentreasmmaxsize.193.124.224.190= 18024
Данная распечатка совместно с приведенной для IFtable позволяет получить достаточно полную картину конкретной локальной сети. Чтобы познакомиться с ARP таблицей, можно воспользоваться командой:
SNMPI> dump ipnettomediatable SNMPI> ipnettomediaifindex.1.193.124.224.33= 1 ipnettomediaifindex.1.193.124.224.35= 1 ipnettomediaifindex.3.192.148.166.193= 3 ipnettomediaifindex.3.192.148.166.196= 3 ipnettomediaifindex.3.193.124.226.110= 3 ipnettomediaifindex.5.145.249.30.33= 5 ipnettomediaifindex.5.192.148.166.100= 5 ipnettomediaphysaddress.1.193.124.224.33= 0x00:00:0c:02:3a:49 ipnettomediaphysaddress.3.192.148.166.196= 0xaa:00:04:00:0c:04 ipnettomediaphysaddress.3.192.148.166.198= 0xaa:00:04:00:0e:04 ipnettomediaphysaddress.3.192.148.166.203= 0x00:00:01:00:54:62 ......................................... ipnettomediaphysaddress.5.145.249.30.33= 0x00:00:0c:02:69:7d ipnettomediaphysaddress.5.192.148.166.100= 0x00:20:af:15:c1:61 ipnettomediaphysaddress.5.192.148.166.101= 0x08:00:09:42:0d:e8 ipnettomedianetaddress.1.193.124.224.33= 193.124.224.33 ipnettomedianetaddress.1.193.124.224.35= 193.124.224.35 ipnettomedianetaddress.3.192.148.166.193= 192.148.166.193 ipnettomedianetaddress.3.193.124.226.110= 193.124.226.110 ipnettomedianetaddress.5.145.249.30.33= 145.249.30.33 ipnettomediatype.1.193.124.224.33= other(1) ipnettomediatype.1.193.124.224.35= dynamic(3) ipnettomediatype.1.193.124.224.37= dynamic(3) ipnettomediatype.3.192.148.166.195= dynamic(3) ipnettomediatype.3.192.148.166.222= other(1) ipnettomediatype.5.193.124.224.190= other(1) ipnettomediatype.5.193.124.225.33= other(1) ipnettomediatype.5.193.124.225.35= dynamic(3)
Синтаксис каждого объекта описывается в рамках ASN.1 и показывает побитовое представление объекта. Кодирование объекта характеризует то, как тип объекта отображается через его синтаксис и передается по телекоммуникационным каналам. Кодирование производится в соответствии с базовыми правилами кодирования ASN.1. Все описания объектов базируются на типовых шаблонах и кодах ASN.1 (см. RFC-1213). Формат шаблона показан ниже.
object (Объект): Имя типа объекта с соответствующим ему идентификатором объекта (object identifier) syntax (Синтаксис): asn.1 описание синтаксиса типа объекта. definition (Определение): Текстовое описание типа объекта. access (доступ): Опции доступа. status (состояние): Статус типа объекта.
Маршруты также являются объектами
Поле место назначения представляет собой IP-адрес конечной точки маршрута. Поле индекс интерфейса определяет локальный интерфейс (физический порт), через который можно осуществить следующий шаг по маршруту. Следующие пять полей ( метрика 1-5 ) характеризуют оценку маршрута. В простейшем случае, например, для протокола RIP, достаточно было бы одного поля. Но для протокола OSPF необходимо 5 полей (разные TOS). Поле следующий шаг представляет собой IP-адрес следующего маршрутизатора. Поле тип маршрута имеет значение 4 для опосредованного достижения места назначения; 3 — для прямого достижения цели маршрута; 2 — для нереализуемого маршрута и 1 — для случаев, отличных от вышеперечисленных.
Поле протокол маршрутизации содержит код протокола. Для RIP этот код равен 8, для OSPF — 13, для BGP — 14, для возраст маршрута описывает время в секундах, прошедшее с момента последней коррекции маршрута. Следующее поле — маска маршрута, используется для выполнения логической побитовой операции И над адресом в IP-дейтограмме перед сравнением результата с кодом, хранящимся в первом поле записи ( место назначения ). Последнее поле маршрутная информация содержит код, зависящий от протокола маршрутизации и обеспечивающий ссылки на соответствующую информацию в базе
(рис 9.3) Формат записи маршрутной таблицы в MIBНовым расширением
| Группа | Назначение |
|---|---|
| statistics | Таблица, которая отслеживает около 20 статистических параметров сетевого трафика, включая общее число кадров и количество ошибок |
| history | Позволяет задать частоту и интервалы для измерений трафика |
| alarm | Позволяет установить порог и критерии, при которых агенты выдают сигнал тревоги |
| host | Таблица, содержащая все узлы сети, данные по которым приводятся в сетевой статистике |
| hostTopN | Позволяет создать упорядоченные списки, которые базируются на пиковых значениях трафика группы ЭВМ |
| matrix | Две таблицы статистики трафика между парами узлов. Одна таблица базируется на адресах узлов-отправителей, другая — на адресах узлов-получателей |
| filter | Позволяет определить конкретные характеристики кадров в канале. Например, можно выделить TCP-трафик. |
| packet capture | Работает совместно с группой filter. Позволяет специфицировать объем ресурса памяти, выделяемой для запоминания кадров, которые отвечают критериям filter. |
| event | Позволяет специфицировать набор параметров или условий, которые должен контролировать агент. Когда условия выполняются, информация о событии записывается в специальный журнал |
Для того, чтобы реализовать функционирование
Вся управляющая информация для контроля ЭВМ и маршрутизаторов Интернет концентрируется в базе данных
Согласно нормативам
| |
Описание | Код |
|---|---|---|
| System | Операционная система ЭВМ или маршрутизатора. | 1 |
| Interfaces | Сетевой интерфейс. | 2 |
| addr.trans | Преобразование адреса (напр., с помощью ARP). | 3 |
| IP | Программная поддержка протоколов Интернет. | 4 |
| Программное обеспечение |
5 | |
| TCP | Программное обеспечение TCP-протокола. | 6 |
| UDP | Программное обеспечение UDP-протокола. | 7 |
| Программное обеспечение |
8 | |
| Программное обеспечение |
11 |
| Системная переменная | Описание | Код |
|---|---|---|
| Sysdescr | Текстовое описание объекта; | 1 |
| Sysobjectid | Идентификатор производителя в рамках дерева 1.3.6.1.4.1 | 2 |
| Sysuptime | Время с момента последней загрузки системы (timeticks); | 3 |
| Syscontact | Имя системного менеджера и способы связи с ним; | 4 |
| Sysname | Полное имя домена; | 5 |
| Syslocation | Физическое местоположение системы; | 6 |
| Sysservice | Величина, которая характеризует услуги, предоставляемые узлом (сумма номеров уровней модели OSI); | 7 |
| Переменная описания интерфейсов (iftable) | Тип данных | Описание | ifEntry |
|---|---|---|---|
| IFindex | integer | Список интерфейсов от 1 до ifnumber. | 1 |
| IfDescr | displaystring | Текстовое описание интерфейса. | 2 |
| IfType | integer | Тип интерфейса, например, 6 — Ethernet; 9 — 802.5 маркерное кольцо; 23 — PPP; 28 — |
3 |
| IfNumber | integer | Число сетевых интерфейсов. | |
| IfMTU | integer | MTU для конкретного интерфейса; | 4 |
| IfSpeed | Скорость в бит/с. | 5 | |
| IfPhysaddress | physaddress | Физический адрес или строка нулевой длины для интерфейсов без физического адреса (напр., последовательный). | 6 |
| IfAdminStatus | [1...3] | Требуемое состояние интерфейса: 1 — включен; 2 — выключен; 3 — тестируется. | 7 |
| IfOperStatus | [1...3] | Текущее состояние интерфейса: 1 — включен; 2 — выключен; 3 — тестируется. | 8 |
| IfLastchange | timeticks | Sysuptime, когда интерфейс оказался в данном состоянии. | 9 |
| IfInOctets | counter | Полное число полученных байтов. | 10 |
| IfInUcastpkts | counter | Число пакетов, доставленных на верхний системный уровень ( |
11 |
| IfInNUcastpkts | counter | Число пакетов, доставленных на верхний системный уровень (nonunicast). | 12 |
| IfInDiscads | counter | Число полученных, но отвергнутых пакетов. | 13 |
| IfInErrors | counter | Число пакетов, полученных с ошибкой; | 14 |
| IfInUnknown-Protos | counter | Число пакетов, полученных с ошибочным кодом протокола; | 15 |
| IfOutOctets | counter | Число отправленных байтов; | 16 |
| IfOutUcastPkts | counter | Число |
17 |
| IfOutNucastPkts | counter | Число мультикастинг- и широковещательных пакетов, полученных с верхнего системного уровня; | 18 |
| IfOutDiscads | counter | Количество отвергнутых пакетов из числа отправленных; | 19 |
| IfOutErrors | counter | Число отправленных пакетов, содержащих ошибки; | 20 |
| IfOutQlen | Число пакетов в очереди на отправку; | 21 |
Ниже представлена таблица 9.3а. цифро-точечного представления переменных, характеризующих состояние интерфейса. Эта таблица может быть полезной для программистов, занятых проблемами сетевой диагностики.
| Название объекта | Цифра-точечное представление |
|---|---|
| org | 1.3 |
| 1.3.6 | |
| internet | 1.3.6.1 |
| directory | 1.3.6.1.1 |
| mgmt | 1.3.6.1.2 |
| 1.3.6.1.3 | |
| private | 1.3.6.1.4 |
| enterprises | 1.3.6.1.4.1 |
| security | 1.3.6.1.5 |
| snmpV2 | 1.3.6.1.6 |
| snmpDomains | 1.3.6.1.6.1 |
| snmpProxys | 1.3.6.1.6.2 |
| snmpModules | 1.3.6.1.6.3 |
| snmpMIB | 1.3.6.1.6.3.1 |
| snmpMIBObjects | 1.3.6.1.6.3.1.1 |
| snmpTraps | 1.3.6.1.6.3.1.1.5 |
| mib-2 | 1.3.6.1.2.1 |
| ifMIB | 1.3.6.1.2.1.31 |
| interfaces | 1.3.6.1.2.1.2 |
| ifMIBObjects | 1.3.6.1.2.1.31.1 |
| ifConformance | 1.3.6.1.2.1.31.2 |
| ifTableLastChange | 1.3.6.1.2.1.31.1.5 |
| ifXTable | 1.3.6.1.2.1.31.1.1 |
| ifStackTable | 1.3.6.1.2.1.31.1.2 |
| ifStackLastChange | 1.3.6.1.2.1.31.1.6 |
| ifRcvAddressTable | 1.3.6.1.2.1.31.1.4 |
| ifTestTable | 1.3.6.1.2.1.31.1.3 |
| ifXEntry | 1.3.6.1.2.1.31.1.1.1 |
| ifName | 1.3.6.1.2.1.31.1.1.1.1 |
| ifInMulticastPkts | 1.3.6.1.2.1.31.1.1.1.2 |
| ifInBroadcastPkts | 1.3.6.1.2.1.31.1.1.1.3 |
| ifOutMulticastPkts | 1.3.6.1.2.1.31.1.1.1.4 |
| ifOutBroadcastPkts | 1.3.6.1.2.1.31.1.1.1.5 |
| ifLinkUpDownTrapEnable | 1.3.6.1.2.1.31.1.1.1.14 |
| ifHighSpeed | 1.3.6.1.2.1.31.1.1.1.15 |
| ifPromiscuousMode | 1.3.6.1.2.1.31.1.1.1.16 |
| ifConnectorPresent | 1.3.6.1.2.1.31.1.1.1.17 |
| ifAlias | 1.3.6.1.2.1.31.1.1.1.18 |
| ifCounterDiscontinuityTime | 1.3.6.1.2.1.31.1.1.1.19 |
| ifStackEntry | 1.3.6.1.2.1.31.1.2.1 |
| ifStackHigherLayer | 1.3.6.1.2.1.31.1.2.1.1 |
| ifStackLowerLayer | 1.3.6.1.2.1.31.1.2.1.2 |
| ifStackStatus | 1.3.6.1.2.1.31.1.2.1.3 |
| ifRcvAddressEntry | 1.3.6.1.2.1.31.1.4.1 |
| ifRcvAddressAddress | 1.3.6.1.2.1.31.1.4.1.1 |
| ifRcvAddressStatus | 1.3.6.1.2.1.31.1.4.1.2 |
| ifRcvAddressType | 1.3.6.1.2.1.31.1.4.1.3 |
| ifTestEntry | 1.3.6.1.2.1.31.1.3.1 |
| ifTestId | 1.3.6.1.2.1.31.1.3.1.1 |
| ifTestStatus | 1.3.6.1.2.1.31.1.3.1.2 |
| ifTestType | 1.3.6.1.2.1.31.1.3.1.3 |
| ifTestResult | 1.3.6.1.2.1.31.1.3.1.4 |
| ifTestCode | 1.3.6.1.2.1.31.1.3.1.5 |
| ifTestOwner | 1.3.6.1.2.1.31.1.3.1.6 |
| ifGroups | 1.3.6.1.2.1.31.2.1 |
| ifCompliances | 1.3.6.1.2.1.31.2.2 |
| ifGeneralInformationGroup | 1.3.6.1.2.1.31.2.1.10 |
| ifFixedLengthGroup | 1.3.6.1.2.1.31.2.1.2 |
| ifHCFixedLengthGroup | 1.3.6.1.2.1.31.2.1.3 |
| ifPacketGroup | 1.3.6.1.2.1.31.2.1.4 |
| ifHCPacketGroup | 1.3.6.1.2.1.31.2.1.5 |
| ifVHCPacketGroup | 1.3.6.1.2.1.31.2.1.6 |
| ifRcvAddressGroup | 1.3.6.1.2.1.31.2.1.7 |
| ifStackGroup2 | 1.3.6.1.2.1.31.2.1.11 |
| ifCounterDiscontinuityGroup | 1.3.6.1.2.1.31.2.1.13 |
| ifGeneralGroup | 1.3.6.1.2.1.31.2.1.1 |
| ifTestGroup | 1.3.6.1.2.1.31.2.1.8 |
| ifStackGroup | 1.3.6.1.2.1.31.2.1.9 |
| ifOldObjectsGroup | 1.3.6.1.2.1.31.2.1.12 |
| ifCompliance2 | 1.3.6.1.2.1.31.2.2.2 |
| ifCompliance | 1.3.6.1.2.1.31.2.2.1 |
| ifNumber | 1.3.6.1.2.1.2.1 |
| ifTable | 1.3.6.1.2.1.2.2 |
| ifEntry | 1.3.6.1.2.1.2.2.1 |
| ifIndex | 1.3.6.1.2.1.2.2.1.1 |
| ifDescr | 1.3.6.1.2.1.2.2.1.2 |
| ifType | 1.3.6.1.2.1.2.2.1.3 |
| ifMtu | 1.3.6.1.2.1.2.2.1.4 |
| ifSpeed | 1.3.6.1.2.1.2.2.1.5 |
| ifPhysAddress | 1.3.6.1.2.1.2.2.1.6 |
| ifAdminStatus | 1.3.6.1.2.1.2.2.1.7 |
| ifOperStatus | 1.3.6.1.2.1.2.2.1.8 |
| ifLastChange | 1.3.6.1.2.1.2.2.1.9 |
| ifInOctets | 1.3.6.1.2.1.2.2.1.10 |
| ifInUcastPkts | 1.3.6.1.2.1.2.2.1.11 |
| ifInNUcastPkts | 1.3.6.1.2.1.2.2.1.12 |
| ifInDiscards | 1.3.6.1.2.1.2.2.1.13 |
| ifInErrors | 1.3.6.1.2.1.2.2.1.14 |
| ifInUnknownProtos | 1.3.6.1.2.1.2.2.1.15 |
| ifOutOctets | 1.3.6.1.2.1.2.2.1.16 |
| ifOutUcastPkts | 1.3.6.1.2.1.2.2.1.17 |
| ifOutNUcastPkts | 1.3.6.1.2.1.2.2.1.18 |
| ifOutDiscards | 1.3.6.1.2.1.2.2.1.19 |
| ifOutErrors | 1.3.6.1.2.1.2.2.1.20 |
| ifOutQLen | 1.3.6.1.2.1.2.2.1.21 |
| ifSpecific | 1.3.6.1.2.1.2.2.1.22 |
| Переменная IP-группы | Тип данных | Описание | Код |
|---|---|---|---|
| ipForwarding | integer | Указание на то, что данный объект осуществляет переадресацию (работает как маршрутизатор). | 1 |
| IPdefaultTTL | integer | Значение, которое использует IP в поле TTL. | 2 |
| IPinreceives | counter | Число полученных дейтограмм. | 3 |
| ipInHdrErrors | counter | Число дейтограмм, отвергнутых из-за ошибок формата, неверных адресов или опций, из-за истекшего TTL. | 4 |
| ipInHdrErrors | counter | Число дейтограмм, отвергнутых из-за неверного IP-адреса, например, 0.0.0.0, или неподдерживаемого класса, например, Е. | 5 |
| ipForwDatagrams | counter | Число дейтограмм, для которых данный объект не является местом назначения (маршрутизация отправителя). | 6 |
| ipInUnknownProtos | counter | Число дейтограмм с неподдерживаемым кодом протокола. | 7 |
| ipInDiscards | counter | Число дейтограмм, отвергнутых из-за переполнения буфера. | 8 |
| ipInDelivers | counter | Полное число входных дейтограмм, успешно обработанных на IP-уровне. | 9 |
| ipOutRequests | counter | Полное число IP и |
10 |
| ipOutRequests | counter | Полное число IP и |
11 |
| IPoutNoroutes | counter | Число неудач при маршрутизации. | 12 |
| ipReasmTimeout | counter | Максимальное число тайм-аутов сборки фрагментов. | 13 |
| ipReasmReqds | counter | Число полученных фрагментов | 14 |
| ipReasmOKs | counter | Число полученных и успешно собранных IP-дейтограмм | 15 |
| ipReasmFails | counter | Число полученных IP-дейтограмм, которые по тем или иным причинам не удалось собрать | 16 |
| IPFragOKs | counter | Число успешно фрагментированных IP- дейтограмм. | 17 |
| ipFragFails | counter | Число IP-дейтограмм, которые нужно фрагментировать, но сделать этого нельзя (например, из-за флага). | 18 |
| ipFragCreates | counter | Число IP-дейтограмм фрагментов, сформированных данным объектом. | 19 |
| ipAddrTable | counter | Таблица адресной информации данного объекта. | 20 |
| ipRouteTable | Последовательность записей маршрутной таблицы | Запись в маршрутной таблице | 21 |
| ipAddrEntry | |||
| IPAdEntAddr | IPaddress | IP-адрес для данного ряда | 1 |
| IPadentifindex | integer | Число интерфейсов. | 2 |
| IPadentnetmask | IPaddress | Маска субсети для данного IP-адреса; | 3 |
| IPAdEntBcastAddr | [0...1] | Значение младшего бита широковещательного адреса (обычно 1); | 4 |
| IPAdEntReasm-Maxsize | [0...65535] | Размер наибольшей IP-дейтограммы, полученной интерфейсом, которая может быть собрана. | 5 |
| Переменные TCP-группы | Тип данных | Описание | Код |
|---|---|---|---|
| tcpRtoAlgorithm | integer | Алгоритм выявления таймаута для повторной передачи TCP-пакетов: 1 — ни один из следующих; 2 — постоянное |
1 |
| tcpRtoMin | integer | Минимальное допустимое время повторной передачи TCP-пакетов. | 2 |
| tcpRtoMax | integer | Максимальное значение тайм-аута в миллисекундах. | 3 |
| tcpMaxConn | integer | Максимальное допустимое число TCP-соединений. | 4 |
| tcpActiveOpens | integer | Число TCP-соединений Active-Open | 5 |
| tcpPassiveOpens | integer | Число TCP-соединений |
6 |
| tcpAttemptFails | integer | Число неудачных TCP-соединений | 7 |
| tcpEstabResets | integer | Число разрывов TCP-соединений из состояний ESTABLISHED или CLOSE-WAIT | 8 |
| tcpCurrEstab | Число TCP-соединений, для которых текущее состояние соответствует ESTABLISHED или CLOSE-WAIT | 9 | |
| tcpInSegs | counter | Полное число полученных TCP-сегментов. | 10 |
| tcpOutSegs | counter | Полное число посланных сегментов, исключая повторно пересылаемые. | 11 |
| tcpRetransSegs | counter | Полное число повторно пересланных сегментов. | 12 |
| tcpConnTable | counter | Таблица данных специфичных для соединения | 13 |
| tcpInErrs | counter | Полное число сегментов, полученных с ошибкой. | 14 |
| tcpOutRsts | counter | Полное число посланных сегментов с флагом rst=1. | 15 |
| tcpconntable. TCP-таблица связей | |||
| tcpconnstate | [1...12] | ||
| tcpconnlocal address | ipaddress | Местный IP-адрес. 0.0.0.0 означает, что приемник готов установить связь через любой из интерфейсов. | |
| tcpconnlocal port | [0...65535] | Местный номер порта. | |
| tcpconnlocal address | ipaddress | Удаленный ip-адрес. | |
| tcpconnrem port | [0...65535] | Удаленный номер порта | |
| Переменная |
Описание | Код |
|---|---|---|
| icmpInMsgs | Полное число полученных |
1 |
| icmpInErrors | Число |
2 |
| icmpInDestUnreach | Число |
3 |
| icmpintimeexcds | Число |
4 |
| icmpInParmProbs | Число полученных |
5 |
| icmpInSrcQuench | Число |
6 |
| icmpInRedirects | Число |
7 |
| icmpInEchos | Число полученных |
8 |
| icmpInEchoReps | Число полученных |
9 |
| icmpInTimestamps | Число |
10 |
| icmpInTimestampReps | Число |
11 |
| icmpInAddrMasks | Число |
12 |
| icmpInAddrMaskReps | Число |
13 |
| icmpOutMsgs | Число отправленных |
14 |
| icmpOutErrors | Число не отправленных |
15 |
| icmpOutDestUnreachs | Число |
16 |
| icmpOutTimesExcds | Число посланных |
17 |
| icmpOutParmProbs | Число посланных |
18 |
| icmpOutSrcQuench | Число посланных |
19 |
| icmpOutRedirects | Число посланных |
20 |
| icmpOutEchos | Число посланных |
21 |
| icmpOutEchoReps | Число посланных |
22 |
| icmpOutTimestamps | Число посланных |
23 |
| icmpOutTimestampReps | Число посланных |
24 |
| icmpOutAddrMasks | Число посланных |
25 |
| Переменные at-группы | Тип данных | Описание | atEntry |
|---|---|---|---|
| atIfIndex | integer | Число интерфейсов. | 1 |
| atPhysAddress | physaddress | Физический адрес. Если эта переменная равна строке нулевой длины, физический адрес отсутствует. | 2 |
| atNetAddress | networkaddress | IP-адрес. | 3 |
Помимо простых переменных, объектами
Каждый протокол (например, IP) имеет свою таблицу преобразования адресов. Для IP — это ipnettomediatable. Способ распечатать эту таблицу с помощью программы SNMPI описан ниже.
| Название объекта | Описание | Код |
|---|---|---|
| SnmpInPkts | Число пакетов, которые получены от слоя, расположенного ниже |
1 |
| SnmpOutPkts | Число пакетов, доставленных от |
2 |
| SnmpInBadVersions | Индицирует число |
3 |
| snmpInBadCommunity-Names | Индицирует число |
4 |
| snmpInBadCommunity-Uses | Полное число |
5 |
| snmpInAsnParsErrs | Указывает полное число ошибок ASN.1 или |
6 |
| snmpInTooBigs | Указывает число полученных |
8 |
| snmpInNoSuchNames | Указывает число |
9 |
| snmpInBadValues | Указывает число |
10 |
| snmpInReadOnlys | Указывает число |
11 |
| snmpNnGenErrs | Указывает число |
12 |
| snmpInTotalReqVar | Указывает число объектов |
13 |
| snmpInTotalSetVars | Указывает число объектов |
14 |
| snmpInGetRequests | Указывает число соответствующих |
15 |
| snmpInGetNexts | Указывает полное число |
16 |
| snmpInSetRequests | Указывает полное число |
17 |
| snmpInGetResponses | Указывает полное число |
18 |
| snmpInTraps | Указывает полное число, полученных и успешно обработанных TRAP | 19 |
| snmpOutTooBig | Указывает число посланных |
20 |
| snmpOutNoSuchNames | Указывает число посланных |
21 |
| snmpOutBadValues | Указывает число посланных |
22 |
| snmpOutGenErrs | Указывает число посланных |
24 |
| snmpOutGetRequests | Указывает число посланных |
25 |
| snmpOutGetNexts | Указывает число посланных |
26 |
| snmpOutSetRequests | Указывает число посланных |
27 |
| snmpOutGetResponses | Указывает число посланных |
28 |
| snmpOutTraps | Указывает число посланных |
29 |
| snmpEnableAuthTraps | Говорит о том, разрешены или нет ловушки (TRAP). | 30 |
Стандарт на структуру управляющей информации (
Практически в протоколе
integer. Некоторые переменные объявляются целыми (integer) с указанием начального значения или с заданным допустимым диапазоном значений (в качестве примера можно привести номера UDP- или TCP-портов).
octet string (последовательность байтов). В соответствии с требованиями
object identifier (идентификатор объекта). Имя объекта, которое представляет собой последовательность целых чисел, разделенных точками. апример, 192.148.167.129 или 1.3.6.1.2.1.5.
null. Указывает, что соответствующая переменная не имеет значения.
displaystring. Строка из 0 или более байт (но не более 255), которые представляют собой ASCII-символы. Является частным случаем
physaddress.
Сетевой адрес. Допускается выбор семейства сетевых протоколов. В рамках ASN.1 этот тип описан как choice, он позволяет выбрать протокол из
IP-адрес. Этот адрес используется для определения 32-разрядного Интернет адреса. В нотации ASN.1 — это
time ticks (такты часов). Положительное целое число, которое используется для записи, например, времени последнего изменения параметров управляемого объекта, или времени последней актуализации базы данных. Время измеряется в сотых долях секунды.
gauge (масштаб). Положительное целое число в диапазоне 0 - (232-1), которое может увеличиваться или уменьшаться. Если эта переменная достигнет величины 232-1, она будет оставаться неизменной до тех пор, пока не будет обнулена командой сброс. Примером такой переменной может служить tcpcurresta, которая характеризует число TCP соединений, находящихся в состоянии established или close_wait.
counter (счетчик). Положительное целое число в диапазоне 0 - (232-1), которое может только увеличиваться, допуская переполнение.
sequence. Этот объект аналогичен структуре в языке Си.
Например,
SEQUENCE OF. Описание вектора, все элементы которого имеют один и тот же тип. Элементы могут представлять собой простые объекты, например, типа целое. В этом случае мы имеем одномерный список. Но элементами вектора могут быть объекты типа SEQUENCE, тогда этот вектор описывает двумерный массив.
В
Стандарт ASN.1 определяет форму представления информации и имен. Имена переменных
(рис 9.1) Структура идентификаторов переменных в MIBВ приведенной ниже таблице охарактеризованы четыре простые переменные, идентификаторы которых помещены в нижней части . Все эти переменные допускают только чтение (таблица 9.1">рис 9.7б">таблица 9.1. Все эти переменные допускают только чтение ( Ниже приведено описание таблицы (udptable; index = <udplocaladdress>, <udplocalport>), состоящей из двух простых переменных (read-only) (таблица 9.7в.).Имя переменной
Тип данных
Описание
Код udpInDatagrams
counter
Число UDP-дейтограмм, присланных
1
udpNoPorts
counter
Число полученных UDP-дейтограмм, для которых отсутствует прикладной процесс в порте назначения.
2
udpInErrors
counter
Число UDP-дейтограмм, не доставленных по причинам, отличающимся от отсутствия процесса со стороны порта назначения (напр., ошибка контрольной суммы).
3
udpOutDatagrams
counter
Число посланных UDP-дейтограмм.
4
udpTable
counter
Таблица, содержащая данные о принимающей стороне
5
| Имя переменной | Тип данных | Описание |
|---|---|---|
| udplocaladdress | ipaddress | Местный IP-адрес для данного приемника; |
| udplocalport | (0 - 65535) | Местный номер порта приемника. |
Согласно этой иерархии переменные, соответствующие
Помимо стандартного набора переменных и таблиц
(рис 9.2) Расширение базы данных MIB маршрутизаторов CiscoПрефикс 1.3.6.1.4.1. является стандартным, далее следует расширение, индивидуальное для маршрутизаторов компании Cisco. Например, группа IPcheckpoint accounting позволяет контролировать поток байтов с определенных адресов локальной сети, что бывает важно при работе с коммерческими провайдерами услуг.
Коды-префиксы для различных производителей телекоммуникационного оборудования приведены в таблице 9.8.
| Код префикса | Название фирмы |
|---|---|
| 0 | Зарезервировано |
| 1 | Proteon |
| 2 | IBM |
| 3 | |
| 4 | UNIX |
| 5 | |
| 6 | TWG |
| 7 | Cayman |
| 8 | PSI |
| 9 | Cisco |
| 10 | NSC |
| 11 | HP |
| 12 | Epilogue |
| 13 | U of Tennessee |
| 14 | |
| 15 | Xylogics, inc. |
| 16 | Unisys |
| 17 | Canstar |
| 18 | Wellfleet |
| 19 | TRW |
| 20 | MIT |
Группа локальных переменных IP
Маршрутизаторы Cisco поддерживают две базы данных: active accounting и clear IP accounting, а для базы clear IP accounting (для использования этих команд необходимы accounting-threshold <значение>, по умолчанию максимальное число записей в базе данных равно 512.
Лучшим способом закрепить в памяти все вышесказанное является использование программы SNMPI ( ) или ее аналога. Если в вашем распоряжении имеется ЭВМ, работающая под Unix, например SUN, вы можете попутно узнать много полезного о вашей локальной сети. Ниже описан синтаксис обращения к SNMPI.
snmpi [-a agent] [-c community] [-f file] [-p portno] [-d] [-v] [-w]
SNMPI — крайне простая программа, используемая для тестирования SNMPD. Чтобы проверить, работает ли она, выдайте команду:
% SNMPI dump
Следует отметить, что в ответ на эту операцию будет произведена весьма объемная выдача.
Опция -a предлагает возможность ввести адрес -p позволяет задать номер UDP-порта. По умолчанию это порт 161.
Опция -c позволяет задать пароль (community) для
Опция -f позволяет выбрать файл, содержащий откомпилированные описания
Опция -w включает режим наблюдения, осуществляя выдачу на терминал всех служебных сообщений. Уход из программы по команде quit ( q ).
Если вы работаете на IBM/PC и ваша машина подключена к локальной сети, получите допуск к одной из UNIX-машин в сети (если вы его не имели) и приступайте. Можно начать с обращения типа:
SNMPI -a 193.124.224.33 (адрес или символьное имя надо взять из вашей локальной сети)
Машина откликнется, отобразив на экране SNMPI>, — это означает, что программа имеется и вы можете вводить любые команды.
Начать можно со знакомства с системными переменными (в дальнейшем курсивом выделены команды, введенные с клавиатуры):
SNMPI> get sysdescr.0 snmpi> sysdescr.0="GS software (gs3-k), version 9.1(4) [fc1], software copyright (c) 1986-1993 by cisco systems, inc. compiled thu 25-mar-93 09:49 by daveu" snmpi> get sysobjectid.0 snmpi> sysobjectid.0=1.3.6.1.4.1.9.1.1 snmpi> get sysuptime.0 snmpi> sysuptime.0=14 days, 7 hours, 0 minutes, 15.27 seconds (123481527 timeticks) snmpi> get sysservices.0 snmpi> sysservices.0=0x6
Код 0x06 (sysservices.0) представляет собой сумму кодов уровней модели ISO, поддерживаемых системой. Для справок: 0x01 — физический уровень; 0x02 — связной уровень; 0x04 — Интернет; 0x08 — связь точка-точка; 0x40 — прикладной уровень.
Если у вас возникла необходимость просмотреть таблицу, например, udptable, это также можно сделать, используя snmpi:
SNMPI> next udptable SNMPI> udplocaladdress.193.124.137.14.7=193.124.137.14 SNMPI> next udplocaladdress.193.124.137.14.7 SNMPI> udplocaladdress.193.124.224.33.67=193.124.224.33 SNMPI> next udplocaladdress.193.124.224.33.67 SNMPI> udplocaladdress.193.124.224.33.161=193.124.224.33 SNMPI> next udplocalport.193.124.224.33.67 SNMPI> udplocalport.193.124.224.33.161=161
Если вы хотите получить временные зависимости вариаций потоков дейтограмм, можно воспользоваться услугами программы MRTG. Ниже показана методика выяснения алгоритма и параметров задания величины тайм-аута:
SNMPI> get tcprtoalgorithm.0 tcprtomin.0 tcprtomax.0 tcpmaxconn.0 SNMPI> tcprtoalgorithm.0=vanj(4) (vanj — алгоритм Ван Джакобсона для расчета времени тайм-аута) tcprtomin.0=300 (минимальное значение тайм-аута = 300 мс) tcprtomax.0=60000 (максимальное — 60 сек) tcpmaxconn.0=-1 (никаких ограничений на число соединений)
Чтобы получить информацию о состоянии таблицы адресных преобразований, выдайте команду: SNMPI -a 193.124.224.33 dump at (процедуры с использование субкоманды dump требуют определенного времени для своего исполнения)
atifindex.1.1.193.124.224.33= 1 atifindex.1.1.193.124.224.35= 1 atifindex.3.1.192.148.166.203= 3 atifindex.3.1.192.148.166.205= 3 atifindex.5.1.145.249.30.33= 5 atifindex.5.1.192.148.166.98= 5 atphysaddress.1.1.193.124.224.33= 0x00:00:0c:02:3a:49 atphysaddress.1.1.193.124.224.35= 0x08:00:20:12:1b:b1 atphysaddress.1.1.193.124.224.40= 0x00:00:cd:f9:0d:e7 atphysaddress.1.1.193.124.224.50= 0x00:00:0c:02:fb:c5 atnetaddress.1.1.193.124.224.33= 193.124.224.33 atnetaddress.1.1.193.124.224.35= 193.124.224.35 atnetaddress.1.1.193.124.224.40= 193.124.224.40 atnetaddress.1.1.193.124.224.50= 193.124.224.50 atnetaddress.1.1.193.124.224.60= 193.124.224.60
Текст выдачи с целью экономии места сокращен.
Обычно элементы таблицы расположены в порядке колонка-ряд. Если вы дошли до края колонки или всей таблицы, ЭВМ выдаст вам, в зависимости от реализации программы, имя и значение следующего элемента или сообщение об ошибке.
Чтобы получить полный текст адресной таблицы в рамках SNMPI, достаточно выдать команду:
SNMPI> dump ipaddrtable
snmpi> ipadentaddr.192.148.166.222= 192.148.166.222
ipadentaddr.192.168.1.1= 192.168.1.1
ipadentaddr.192.168.1.2= 192.168.1.2
ipadentaddr.193.124.224.33= 193.124.224.33
ipadentaddr.193.124.224.190= 193.124.224.190
ipadentifindex.192.148.166.222= 3
ipadentifindex.192.168.1.1= 4
ipadentifindex.192.168.1.2= 6
ipadentifindex.193.124.224.33= 1
ipadentifindex.193.124.224.190= 5
(Маски субсетей)
ipadentnetmask.192.148.166.222= 255.255.255.224
ipadentnetmask.192.168.1.1= 255.255.255.0
ipadentnetmask.192.168.1.2= 255.255.255.0
ipadentnetmask.193.124.224.33= 255.255.255.224
ipadentnetmask.193.124.224.190= 255.255.255.224
ipadentbcastaddr.192.148.166.222= 1
(Все эти субсети используют для широковещательной адресации
одни и те же биты).
ipadentbcastaddr.192.168.1.1= 1
ipadentbcastaddr.192.168.1.2= 1
ipadentbcastaddr.193.124.224.33= 1
ipadentbcastaddr.193.124.224.190= 1
ipadentreasmmaxsize.192.148.166.222= 18024
(С точки зрения фрагментации и последующей сборки дейтограмм
данные субсети эквивалентны).
ipadentreasmmaxsize.192.168.1.1= 18024
ipadentreasmmaxsize.192.168.1.2= 18024
ipadentreasmmaxsize.193.124.224.33= 18024
ipadentreasmmaxsize.193.124.224.190= 18024
Данная распечатка совместно с приведенной для IFtable позволяет получить достаточно полную картину конкретной локальной сети. Чтобы познакомиться с ARP таблицей, можно воспользоваться командой:
SNMPI> dump ipnettomediatable SNMPI> ipnettomediaifindex.1.193.124.224.33= 1 ipnettomediaifindex.1.193.124.224.35= 1 ipnettomediaifindex.3.192.148.166.193= 3 ipnettomediaifindex.3.192.148.166.196= 3 ipnettomediaifindex.3.193.124.226.110= 3 ipnettomediaifindex.5.145.249.30.33= 5 ipnettomediaifindex.5.192.148.166.100= 5 ipnettomediaphysaddress.1.193.124.224.33= 0x00:00:0c:02:3a:49 ipnettomediaphysaddress.3.192.148.166.196= 0xaa:00:04:00:0c:04 ipnettomediaphysaddress.3.192.148.166.198= 0xaa:00:04:00:0e:04 ipnettomediaphysaddress.3.192.148.166.203= 0x00:00:01:00:54:62 ......................................... ipnettomediaphysaddress.5.145.249.30.33= 0x00:00:0c:02:69:7d ipnettomediaphysaddress.5.192.148.166.100= 0x00:20:af:15:c1:61 ipnettomediaphysaddress.5.192.148.166.101= 0x08:00:09:42:0d:e8 ipnettomedianetaddress.1.193.124.224.33= 193.124.224.33 ipnettomedianetaddress.1.193.124.224.35= 193.124.224.35 ipnettomedianetaddress.3.192.148.166.193= 192.148.166.193 ipnettomedianetaddress.3.193.124.226.110= 193.124.226.110 ipnettomedianetaddress.5.145.249.30.33= 145.249.30.33 ipnettomediatype.1.193.124.224.33= other(1) ipnettomediatype.1.193.124.224.35= dynamic(3) ipnettomediatype.1.193.124.224.37= dynamic(3) ipnettomediatype.3.192.148.166.195= dynamic(3) ipnettomediatype.3.192.148.166.222= other(1) ipnettomediatype.5.193.124.224.190= other(1) ipnettomediatype.5.193.124.225.33= other(1) ipnettomediatype.5.193.124.225.35= dynamic(3)
Синтаксис каждого объекта описывается в рамках ASN.1 и показывает побитовое представление объекта. Кодирование объекта характеризует то, как тип объекта отображается через его синтаксис и передается по телекоммуникационным каналам. Кодирование производится в соответствии с базовыми правилами кодирования ASN.1. Все описания объектов базируются на типовых шаблонах и кодах ASN.1 (см. RFC-1213). Формат шаблона показан ниже.
object (Объект): Имя типа объекта с соответствующим ему идентификатором объекта (object identifier) syntax (Синтаксис): asn.1 описание синтаксиса типа объекта. definition (Определение): Текстовое описание типа объекта. access (доступ): Опции доступа. status (состояние): Статус типа объекта.
Маршруты также являются объектами
Поле место назначения представляет собой IP-адрес конечной точки маршрута. Поле индекс интерфейса определяет локальный интерфейс (физический порт), через который можно осуществить следующий шаг по маршруту. Следующие пять полей ( метрика 1-5 ) характеризуют оценку маршрута. В простейшем случае, например, для протокола RIP, достаточно было бы одного поля. Но для протокола OSPF необходимо 5 полей (разные TOS). Поле следующий шаг представляет собой IP-адрес следующего маршрутизатора. Поле тип маршрута имеет значение 4 для опосредованного достижения места назначения; 3 — для прямого достижения цели маршрута; 2 — для нереализуемого маршрута и 1 — для случаев, отличных от вышеперечисленных.
Поле протокол маршрутизации содержит код протокола. Для RIP этот код равен 8, для OSPF — 13, для BGP — 14, для возраст маршрута описывает время в секундах, прошедшее с момента последней коррекции маршрута. Следующее поле — маска маршрута, используется для выполнения логической побитовой операции И над адресом в IP-дейтограмме перед сравнением результата с кодом, хранящимся в первом поле записи ( место назначения ). Последнее поле маршрутная информация содержит код, зависящий от протокола маршрутизации и обеспечивающий ссылки на соответствующую информацию в базе
(рис 9.3) Формат записи маршрутной таблицы в MIBНовым расширением
| Группа | Назначение |
|---|---|
| statistics | Таблица, которая отслеживает около 20 статистических параметров сетевого трафика, включая общее число кадров и количество ошибок |
| history | Позволяет задать частоту и интервалы для измерений трафика |
| alarm | Позволяет установить порог и критерии, при которых агенты выдают сигнал тревоги |
| host | Таблица, содержащая все узлы сети, данные по которым приводятся в сетевой статистике |
| hostTopN | Позволяет создать упорядоченные списки, которые базируются на пиковых значениях трафика группы ЭВМ |
| matrix | Две таблицы статистики трафика между парами узлов. Одна таблица базируется на адресах узлов-отправителей, другая — на адресах узлов-получателей |
| filter | Позволяет определить конкретные характеристики кадров в канале. Например, можно выделить TCP-трафик. |
| packet capture | Работает совместно с группой filter. Позволяет специфицировать объем ресурса памяти, выделяемой для запоминания кадров, которые отвечают критериям filter. |
| event | Позволяет специфицировать набор параметров или условий, которые должен контролировать агент. Когда условия выполняются, информация о событии записывается в специальный журнал |
Для того, чтобы реализовать функционирование
Для получения официальных документов о завершении программы дополнительного профессионального образования (удостоверения о повышении квалификации, дипломов о профессиональной переподготовке и MBA) необходимо предоставить:
Внимание! Вы можете не заказывать доставку бумажной версии официального документы, а скачать его в электронном виде и распечатать самостоятельно. Информация о выданном документе в течение 1 месяца загружается в Федеральную информационную систему «Федеральный реестр сведений о документах об образовании и (или) о квалификации, документах об обучении» - ФИС ФРДО.
Доступ на новый сайт осуществляется с использованием адреса электронной почты, который был указан вами при регистрации на "старом". Мы постарались перенести все ваши данные с прежнего ресурса, однако не исключена вероятность потери части информации.
При возникновении проблемы со входом, воспользуйтесь функцией сброса пароля
Если вы обнаружите несоответствия, пожалуйста, сообщите нам.