Management Information Bases (MIBs) SNMP не определяет, какую информацию (какие переменные) управляемая система должна предоставлять. Наоборот, SNMP использует расширяемую модель, в которой доступная информация определяется Базами Управляющей Информации (MIB - Management Information Base). Базы Управляющей Информации описывают структуру управляющей информации устройств. Они используют иерархическое пространство имён, содержащее уникальный идентификатор объекта (англ. object identifier (OID)). Грубо говоря, каждый уникальный идентификатор объекта идентифицирует переменную, которая может быть прочитана или установлена через SNMP. MIBы используют нотацию, определённую в ASN.1.
Иерархия MIB может быть изображена как дерево с безымянным корнем, уровни которого присвоены разными организациями. На самом высоком уровне MIB OIDы принадлежат различным организациям, занимающимся стандартизацией, в то время как на более низком уровне OIDы выделяются ассоциированными организациями. Эта модель обеспечивает управление на всех слоях сетевой модели OSI, так как MIBы могут быть определены для любых типов данных и операций.
Управляемый объект — это одна из любого числа характеристик, специфических для управляемого устройства. Управляемый объект включает в себя один или более экземпляров объекта (идентифицируемых по OID), которые на самом деле переменные.
Существует два типа управляемых объектов:
Скалярные объекты определяют единственный экземпляр объекта. Табличные объекты определяют множественные, связанные экземпляры объектов которые группируются в таблицах MIB. Примером управляемого объекта может быть atInput, который является скалярным объектом содержащим единственный экземпляр объекта, целое число, которое показывает общее количество входящих пакетов AppleTalk на сетевой интерфейс маршрутизатора.
Идентификатор объекта (OID) уникально идентифицирует управляемый объект в иерархии MIB.
| Согласно нормативам MIB управляющая информация делится на 11 категорий | ||
|---|---|---|
| MIB-категория | Описание | |
| 1 | System | Операционная система ЭВМ или маршрутизация |
| 2 | Interfaces | Сетевой интерфейс |
| 3 | Addr. trans. | Преобразование адреса (напр., с помощью ARP) |
| 4 | Ip | Программная поддержка протоколов Internet |
| 5 | Icmp | Программное обеспечение протокола ICMP |
| 6 | Tcp | Программное обеспечение протокола TCP |
| 7 | Udp | Программное обеспечение протокола UDP |
| 8 | egp | Программное обеспечение протокола EGP |
| 9 | cmot | (группа в настоящее время не используется) |
| 10 | Trans | Transmission |
| 11 | SNMP | Программное обеспечение SNMP-протокола. |
| Системная переменная | Описание | Код |
|---|---|---|
| Sysdescr | Текстовое описание объекта sysDescr OBJECT-TYPE
SYNTAX DisplayString (SIZE (0..255))
ACCESS read-only
STATUS mandatory
DESCRIPTION
"A textual description of the entity. This value
should include the full name and version
identification of the system's hardware type,
software operating-system, and networking
software. It is mandatory that this only contain
printable ASCII characters."
::= { system 1 }
| 1 |
| Sysobjectid | Идентификатор производителя в рамках дерева 1.3.6.1.4.1 sysObjectID OBJECT-TYPE
SYNTAX OBJECT IDENTIFIER
ACCESS read-only
STATUS mandatory
DESCRIPTION
"The vendor's authoritative identification of the
network management subsystem contained in the
entity. This value is allocated within the SMI
enterprises subtree (1.3.6.1.4.1) and provides an
easy and unambiguous means for determining `what
kind of box' is being managed. For example, if
vendor `Flintstones, Inc.' was assigned the
subtree 1.3.6.1.4.1.4242, it could assign the
identifier 1.3.6.1.4.1.4242.1.1 to its `Fred
Router'."
::= { system 2 }
| 2 |
| Sysuptime | Время с момента последней загрузки системы (timeticks) sysUpTime OBJECT-TYPE
SYNTAX TimeTicks
ACCESS read-only
STATUS mandatory
DESCRIPTION
"The time (in hundredths of a second) since the
network management portion of the system was last
re-initialized."
::= { system 3 }
| 3 |
| Syscontact | Имя системного менеджера и способы связи с ним sysContact OBJECT-TYPE
SYNTAX DisplayString (SIZE (0..255))
ACCESS read-write
STATUS mandatory
DESCRIPTION
"The textual identification of the contact person
for this managed node, together with information
on how to contact this person."
::= { system 4 }
| 4 |
| Sysname | Полное имя доменаsysName OBJECT-TYPE
SYNTAX DisplayString (SIZE (0..255))
ACCESS read-write
STATUS mandatory
DESCRIPTION
"An administratively-assigned name for this
managed node. By convention, this is the node's
fully-qualified domain name."
::= { system 5 }
| 5 |
| Syslocation | Физическое местоположение системыsysLocation OBJECT-TYPE
SYNTAX DisplayString (SIZE (0..255))
ACCESS read-write
STATUS mandatory
DESCRIPTION
"The physical location of this node (e.g.,
`telephone closet, 3rd floor')."
::= { system 6 }
| 6 |
| Sysservice | Величина, которая характеризует услуги, предоставляемые узлом (сумма номеров уровней модели OSI)sysServices OBJECT-TYPE
SYNTAX INTEGER (0..127)
ACCESS read-only
STATUS mandatory
DESCRIPTION
"A value which indicates the set of services that
this entity primarily offers.
The value is a sum. This sum initially takes the
value zero, Then, for each layer, L, in the range
1 through 7, that this node performs transactions
for, 2 raised to (L - 1) is added to the sum. For
example, a node which performs primarily routing
functions would have a value of 4 (2^(3-1)). In
contrast, a node which is a host offering
application services would have a value of 72
(2^(4-1) + 2^(7-1)). Note that in the context of
the Internet suite of protocols, values should be
calculated accordingly:
layer functionality
1 physical (e.g., repeaters)
2 datalink/subnetwork (e.g., bridges)
3 internet (e.g., IP gateways)
4 end-to-end (e.g., IP hosts)
7 applications (e.g., mail relays)
For systems including OSI protocols, layers 5 and
6 may also be counted."
::= { system 7 }
| 7 |
Переменные IFtable (интерфейсы; префикс=1.3.6.1.2.1.2)
| Переменная описания интерфейсов (iftable) | Тип данных | Описание | ifEntry |
|---|---|---|---|
| IFindex | integer | Список интерфейсов от 1 до ifnumber. | 1 |
| IfDescr | displaystring | Текстовое описание интерфейса. | 2 |
| IfType | integer | Тип интерфейса, например, 6 - ethernet; 9 - 802.5 маркерное кольцо; 23 - PPP; 28 - SLIP. | 3 |
| IfNumber | integer | Число сетевых интерфейсов. | |
| IfMTU | integer | mtu для конкретного интерфейса; | 4 |
| IfSpeed | gauge | Скорость в бит/с. | 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 | Число пакетов, доставленных на верхний системный уровень (unicast). | 11 |
| IfInNUcastpkts | counter | Число пакетов, доставленных на верхний системный уровень (unicast). | 12 |
| IfInDiscads | counter | Число полученных но отвергнутых пакетов. | 13 |
| IfInErrors | counter | Число пакетов, полученных с ошибкой; | 14 |
| IfInUnknownProtos | counter | Число пакетов, полученных с ошибочным кодом протокола; | 15 |
| IfOutOctets | counter | Число отправленных байтов; | 16 |
| IfOutUcastPkts | counter | Число unicast- пакетов, полученных с верхнего системного уровня; | 17 |
| IfOutNucastPkts | counter | Число мультикастинг- и широковещательных пакетов, полученных с верхнего системного уровня; | 18 |
| IfOutDiscads | counter | Количество отвергнутых пакетов из числа отправленных; | 19 |
| IfOutErrors | counter | Число отправленных пакетов, содержащих ошибки; | 20 |
| IfOutQlen | gauge | Число пакетов в очереди на отправку; | 21 |
Переменные IP-группы (префикс=1.3.6.1.2.1.4)
| Переменная 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 и ICMP дейтограмм, переданных для отправки. | 10 |
| ipOutRequests | counter | Полное число IP и ICMP дейтограмм, переданных для отправки. | 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 |
| IPAdEntReasmMaxsize | [0…65535] | Размер наибольшей IP-дейтограммы, полученной интерфейсом, которая может быть собрана. | 5 |
Переменные TCP-группы (префикс=1.3.6.1.2.1.6)
Переменные TCP-группы |Тип данных| Описание |Код |
| tcpRtoAlgorithm | integer | Алгоритм выявления таймаута для повторной передачи TCP-пакетов: 1 - ни один из следующих; 2 - постоянное RTO; 3 - стандарт MIL-std-1778; 4 - алгоритм Ван Джакобсона | 1 |
| tcpRtoMin | integer | Минимальное допустимое время повторной передачи tcp- пакетов. | 2 |
| tcpRtoMax | integer | Максимальное значение тайм-аута в миллисек. | 3 |
| tcpMaxConn | integer | Максимальное допустимое число tcp-соединений. | 4 |
| tcpActiveOpens | integer | Число TCP-соединений Active-Open | 5 |
| tcpPassiveOpens | integer | Число TCP-соединений Passive-Open (из состояния LISTEN) | 6 |
| tcpAttemptFails | integer | Число неудачных TCP-соединений | 7 |
| tcpEstabResets | integer | Число разрывов TCP-соединений из состояний ESTABLISHED или CLOSE-WAIT | 8 |
| tcpCurrEstab | Gauge | Число 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] | Состояние соединения: | |
| 1 | - closed; | ||
| 2 | - listen; | ||
| 3 | - syn_sent; | ||
| 4 | - syn_rcvd; | ||
| 5 | - established; | ||
| 6 | - fin_wait_1; | ||
| 7 | - fin_wait_2; | ||
| 8 | - close_wait; | ||
| 9 | - last_ack; | ||
| 10 | - closing; | ||
| 11 | - time_wait; | ||
| 12 | - delete TCB. | ||
| Только последняя переменная может устанавливаться менеджером, немедленно прерывая связь. | |||
| tcpconnlocal | address | ipaddress Местный IP-адрес. 0.0.0.0 означает, что приемник готов установить связь через любой из интерфейсов. | |
| tcpconnlocal port | [0…65535] | Местный номер порта. | |
| tcpconnlocaladdress | ipaddress | Удаленный ip-адрес. | |
| tcpconnrem port | [0…65535] | Удаленный номер порта. | |
Переменные ICMP-группы (тип данных - counter; префикс=1.3.6.1.2.1.5)
| Переменная icmp-группы | Описание | Код |
| icmpInMsgs | Полное Число полученных ICMP-сообщений. | 1 |
| icmpInErrors | Число ICMP-сообщений, полученных с ошибками. | 2 |
| icmpInDestUnreach | Число ICMP-сообщений о недостижимости адресата. | 3 |
| icmpintimeexcds | Число ICMP-сообщений об истечении времени. | 4 |
| icmpInParmProbs | Число полученных ICMP-сообщений о проблемах с параметрами. | 5 |
| icmpInSrcQuench | Число ICMP-сообщений с требованием сократить или прервать посылку пакетов из-за перегрузки. | 6 |
| icmpInRedirects | Число ICMP-сообщений о переадресации. | 7 |
| icmpInEchos | Число полученных ICMP-запросов отклика. | 8 |
| icmpInEchoReps | Число полученных ICMP-эхо- откликов. | 9 |
| icmpInTimestamps | Число ICMP-запросов временных меток. | 10 |
| icmpInTimestampReps | Число ICMP-откликов временных меток. | 11 |
| icmpInAddrMasks | Число ICMP-запросов адресных масок. | 12 |
| icmpInAddrMaskReps | Число ICMP-откликов на запросы адресных масок. | 13 |
| icmpOutMsgs | Число отправленных ICMP- сообщений. | 14 |
| icmpOutErrors | Число не отправленных ICMP- сообщений из-за проблем в ICMP (напр. нехватка буферов). | 15 |
| icmpOutDestUnreachs | Число ICMP-сообщений о недоступности адресата. | 16 |
| icmpOutTimesExcds | Число посланных ICMP-сообщений об истечении времени. | 17 |
| icmpOutParmProbs | Число посланных ICMP-сообщений о проблемах с параметрами. | 18 |
| icmpOutSrcQuench | Число посланных ICMP-сообщений об уменьшении потока пакетов. | 19 |
| icmpOutRedirects | Число посланных ICMP-сообщений о переадресации. | 20 |
| icmpOutEchos | Число посланных ICMP-эхо-запросов. | 21 |
| icmpOutEchoReps | Число посланных ICMP-эхо-откликов. | 22 |
| icmpOutTimestamps | Число посланных ICMP-запросов временных меток. | 23 |
| icmpOutTimestampReps | Число посланных ICMP-откликов на запросы временных меток. | 24 |
| icmpOutAddrMasks | Число посланных ICMP-запросов адресных масок. | 25 |
Переменные AT-группы (attable, преобразование адресов; префикс=1.3.6.1.2.1.3).
| еременные at-группы | Тип данных | Описание | atEntry |
|---|---|---|---|
| atIfIndex | integer | Число интерфейсов. | 1 |
| atPhysAddress | physaddress | Физический адрес. Если эта переменная равна строке нулевой длины, физический адрес отсутствует. | 2 |
| atNetAddress | networkaddress | IP-адрес. | 3 |
Переменные UDP-группы (тип данных - counter; префикс=1.3.6.1.2.1.7)
| Имя переменной | Тип данных | Описание | Код |
|---|---|---|---|
| udpInDatagrams | counter | Число UDP-дейтограмм, присланных процессам пользователя. | 1 |
| udpNoPorts | counter | Число полученных UDP-дейтограмм, для которых отсутствует прикладной процесс в порте назначения. | 2 |
| udpInErrors | counter | Число не доставленных UDP-дейтограмм по причинам, отличающимся от отсутствия процесса со стороны порта назначения (напр., ошибка контрольной суммы). | 3 |
| udpOutDatagrams | counter | Число посланных UDP-дейтограмм. | 4 |
| udpTable | counter | Таблица, содержащая данные о принимающей стороне | 5 |
Переменные SNMP-группы (тип данных - counter; префикс=1.3.6.1.2.1.11)
| Название объекта | Описание | Код |
|---|---|---|
| snmpInPkts | Число пакетов, полученных от слоя, расположенного ниже SNMP. | 1 |
| snmpOutPkts | Число пакетов доставленных от SNMP к нижележащему слою. | 2 |
| snmpInBadVersions | Индицирует число PDU, полученных с ошибкой в поле версия. | 3 |
| snmpInBadCommunityNames | Индицирует число PDU, полученных с нечитаемым или нелегальным именем community. | 4 |
| snmpInBadCommunityUses | Полное число SNMP-пакетов, полученных с нечитаемым или нелегальным значение операции для данного имени community. | 5 |
| snmpInAsnParsErrs | Указывает полное число ошибок ASN.1 или BER, которые не могут быть обработаны во входных SNMP-сообщениях | 6 |
| snmpInTooBigs | Указывает число полученных PDU со слишком большим значением поля статус ошибки. | 8 |
| snmpInNoSuchNames | Указывает число PDU, полученных с индикацией ошибки в поле nosuchname. | 9 |
| snmpInBadValues | Указывает число PDU, полученных с индикацией ошибки в поле badvalue. | 10 |
| snmpInReadOnlys | Указывает число PDU, полученных с индикацией ошибки в поле readonly. | 11 |
| snmpNnGenErrs | Указывает число PDU, полученных с generr-полем. | 12 |
| snmpInTotalReqVar | Указывает число объектов MIB, которые были восстановлены. | 13 |
| snmpInTotalSetVars | Указывает число объектов MIB, которые были изменены. | 14 |
| snmpInGetRequests | Указывает число соответствующих pdu, которые были получены. | 15 |
| snmpInGetNexts | Указывает полное число pdu с запросами GetNext | 16 |
| snmpInSetRequests | Указывает полное число pdu, полученных с запросами SET | 17 |
| snmpInGetResponses | Указывает полное число pdu, полученных c откликами на запросы | 18 |
| snmpInTraps | Указывает полное число, полученных и успешно обработанныз TRAP | 19 |
| snmpOutTooBig | Указывает число посланных PDU с полем toobig. | 20 |
| snmpOutNoSuchNames | Указывает число посланных PDU с полем nosuchname. | 21 |
| snmpOutBadValues | Указывает число посланных PDU с полем badvalue. | 22 |
| snmpOutGenErrs | Указывает число посланных PDU с полем genErrs. | 24 |
| snmpOutGetRequests | Указывает число посланных PDU Get-Request | 25 |
| snmpOutGetNexts | Указывает число посланных PDU Get-NEXT | 26 |
| snmpOutSetRequests | Указывает число посланных PDU SET | 27 |
| snmpOutGetResponses | Указывает число посланных PDU откликов | 28 |
| snmpOutTraps | Указывает число посланных PDU TRAPs | 29 |
| snmpEnableAuthTraps | Говорит о том, разрешены или нет ловушки (TRAPS). | 30 |