Протокол IP : Протокол SNMP

Сведения о значениях индексов таблицы в SNMP

5 апреля 2016 - Машинный перевод
Другие версии: PDF-версия:pdf | Английский (22 августа 2015) | Отзыв


Содержание


Введение

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

Предварительные условия

Требования

Для использования данного документа требуется знание следующих тем:

  • Общие знания SNMP

  • Программное обеспечение использовало сделать запрос устройств Сisco через SNMP

Используемые компоненты

Сведения, содержащиеся в данном документе, касаются следующих версий программного и аппаратного обеспечения:

  • Версия UCD SNMP 4.2

  • Cisco Catalyst 5509 с Cisco выпуск ПО IOS� 5.5 (7)

Сведения, представленные в этом документе, были получены от устройств, работающих в специальной лабораторной среде. Все устройства, описанные в этом документе, были запущены с чистой (стандартной) конфигурацией. В рабочей сети необходимо изучить потенциальное воздействие всех команд до их использования.

Условные обозначения

Дополнительные сведения об условных обозначениях см. в документе Технические рекомендации Cisco. Условные обозначения.

Приступая к работе с ifIndex

Одной из первых вещей учиться, когда вы имеете дело с SNMP, является ifIndex. Это - первичный ключ всех объектов. Считайте его способом, которым все интерфейсы (физический и логический) сломаны и назначили значение. Во время этого значения назначают, загружаются устройства, и оно не может быть изменено. Если информация должна быть опрошена для того определенного интерфейса, она должна использовать то назначенное значение.

IfIndex определен в IF-MIB (RFC 1213 leavingcisco.com) этим способом:

InterfaceIndex ::= TEXTUAL-CONVENTION
       DISPLAY-HINT "d"
       STATUS       current
       DESCRIPTION
               "A unique value, greater than zero, for each interface
               or interface sub-layer in the managed system.  It is
               recommended that values are assigned contiguously
               starting from 1.  The value for each interface sub-
               layer must remain constant at least from one re-
               initialization of the entity's network management
               system to the next re-initialization."
       SYNTAX       Integer32 (1..2147483647)

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

ifEntry OBJECT-TYPE
         SYNTAX      IfEntry
         MAX-ACCESS  not-accessible
         STATUS      current
         DESCRIPTION
             "An entry containing management information applicable
             to a particular interface."
         INDEX   { ifIndex }
        ::= { ifTable 1 }

Учитывая MIB и элемент таблицы, можно определить, как индексирована таблица. Следующий раздел предоставляет примеры ifIndex.

Опрос объектов

Опрос объектов на основе ifIndex

При запуске команды snmpwalk для опроса основанного на ifIndex объекта (ifName) для порта 7/4 на коммутаторе, вы получаете эти выходные данные:

sj-cse-568: snmpwalk 172.16.99.60 public ifname

ifMIB.ifMIBObjects.ifXTable.ifXEntry.ifName.1 = sc0
ifMIB.ifMIBObjects.ifXTable.ifXEntry.ifName.2 = sl0
ifMIB.ifMIBObjects.ifXTable.ifXEntry.ifName.3 = VLAN-1
ifMIB.ifMIBObjects.ifXTable.ifXEntry.ifName.4 = VLAN-1002
ifMIB.ifMIBObjects.ifXTable.ifXEntry.ifName.5 = VLAN-1004
ifMIB.ifMIBObjects.ifXTable.ifXEntry.ifName.6 = VLAN-1005
ifMIB.ifMIBObjects.ifXTable.ifXEntry.ifName.7 = VLAN-1003
ifMIB.ifMIBObjects.ifXTable.ifXEntry.ifName.8 = 7/1
ifMIB.ifMIBObjects.ifXTable.ifXEntry.ifName.9 = 7/2
ifMIB.ifMIBObjects.ifXTable.ifXEntry.ifName.10 = 7/3

!--- This is the relevant line:

ifMIB.ifMIBObjects.ifXTable.ifXEntry.ifName.11 = 7/4
ifMIB.ifMIBObjects.ifXTable.ifXEntry.ifName.12 = 7/5
ifMIB.ifMIBObjects.ifXTable.ifXEntry.ifName.13 = 7/6
ifMIB.ifMIBObjects.ifXTable.ifXEntry.ifName.14 = 7/7
ifMIB.ifMIBObjects.ifXTable.ifXEntry.ifName.15 = 7/8
ifMIB.ifMIBObjects.ifXTable.ifXEntry.ifName.16 = 7/9
ifMIB.ifMIBObjects.ifXTable.ifXEntry.ifName.17 = 7/10
ifMIB.ifMIBObjects.ifXTable.ifXEntry.ifName.18 = 7/11
ifMIB.ifMIBObjects.ifXTable.ifXEntry.ifName.19 = 7/12
ifMIB.ifMIBObjects.ifXTable.ifXEntry.ifName.20 = ATM8/0
ifMIB.ifMIBObjects.ifXTable.ifXEntry.ifName.22 = /A
ifMIB.ifMIBObjects.ifXTable.ifXEntry.ifName.23 = /B
ifMIB.ifMIBObjects.ifXTable.ifXEntry.ifName.24 = Nu0
ifMIB.ifMIBObjects.ifXTable.ifXEntry.ifName.25 = LEC/ATM8/0.10
ifMIB.ifMIBObjects.ifXTable.ifXEntry.ifName.532 = 3/1
ifMIB.ifMIBObjects.ifXTable.ifXEntry.ifName.533 = 3/2

!--- Output suppressed.

В тех выходных данных от опроса ifName (ifDescr на маршрутизаторах), заметьте, что существует количество, подключенное к каждой строке после ifName. Это - ifIndex, который назначен на фактический интерфейс в той же строке. Это означает, что второй строке опроса, порт 7/4, назначают ifIndex 11. Если вы хотите информацию о порте 7/4 от объекта ifIndexed, используйте индекс 11. Это означает добавлять .11 до конца идентификатора объекта MIB (OID), получать экземпляр того объекта, который соответствует тем же значениям ifIndex.

Опрос объектов в случае, если таблица не проиндексирована на основе ifIndex или имеет перекрестную индексацию

Иногда, таблицы не индексированы ifIndex, такой как с BRIDGE-MIB. Эти выходные данные исследуют, как они индексированы:

dot1dBasePortEntry OBJECT-TYPE
         SYNTAX  Dot1dBasePortEntry
         ACCESS  not-accessible
         STATUS  mandatory
         DESCRIPTION
                 "A list of information for each port of the
                 bridge."
         REFERENCE
                 "IEEE 802.1D-1990: Section 6.4.2, 6.6.1"
         INDEX  { dot1dBasePort }
         ::= { dot1dBasePortTable 1 }

Те выходные данные показывают, что dot1dBasePortEntry индексирован dot1dBasePort. Как это преобразовывает назад в ifIndex? BRIDGE-MIB обращается к объекту, названному dot1dBasePortIfIndex. Объект определен этим способом:

dot1dBasePortIfIndex OBJECT-TYPE
         SYNTAX  INTEGER
         ACCESS  read-only
         STATUS  mandatory
         DESCRIPTION
                 "The value of the instance of the ifIndex object,
                 defined in MIB-II, for the interface corresponding
                 to this port."
         ::= { dot1dBasePortEntry 2 }

Те выходные данные показывают, как коррелировать от BRIDGE-MIB до IF-MIB. Следующий пример показывает, как все это совмещается.

Примечание: BRIDGE-MIB создан на vlan, следовательно сообщество “public@vlan-id” должно использоваться для сред не-vlan1.

Сведение BRIDGE-MIB к IF-MIB

При запуске snmpwalk на BRIDGE-MIB вы получаете следующий пример выходных данных для Индекса. Используйте dot1dBasePortIfIndex (.1.3.6.1.2.1.17.1.4.1.2) для сопоставления его назад с ifIndex. Как только у вас есть ifIndex, используйте его для опроса других объектов на основе ifIndex.

sj-cse-568: snmpwalk 172.16.99.60 public .1.3.6.1.2.1.17.1.4.1.2

17.1.4.1.2.203 = 671
17.1.4.1.2.204 = 672
17.1.4.1.2.205 = 673
17.1.4.1.2.206 = 674
17.1.4.1.2.207 = 675
17.1.4.1.2.208 = 676
17.1.4.1.2.209 = 677
17.1.4.1.2.210 = 678
17.1.4.1.2.211 = 679
17.1.4.1.2.212 = 680
17.1.4.1.2.213 = 681
17.1.4.1.2.214 = 682
17.1.4.1.2.215 = 683
17.1.4.1.2.216 = 684
17.1.4.1.2.257 = 581
17.1.4.1.2.385 = 8
17.1.4.1.2.386 = 9
17.1.4.1.2.387 = 10
17.1.4.1.2.388 = 11
17.1.4.1.2.389 = 12
17.1.4.1.2.390 = 13
17.1.4.1.2.391 = 14
17.1.4.1.2.392 = 15
17.1.4.1.2.393 = 16
17.1.4.1.2.394 = 17
17.1.4.1.2.395 = 18
17.1.4.1.2.396 = 19
17.1.4.1.2.449 = 22

Линия полужирного текста (17.1.4.1.2.388 = 11) показывает, что .388 является индексом. Поскольку вы опросили объект dot1dBasePortIfIndex от BRIDGE-MIB.388 dot1dBasePortIfIndex. 11 в выходной линии является фактически ifIndex. При сборе информации от этого опроса и от предыдущего опроса можно решить, что порт 7/4 имеет ifIndex 11 и dot1dBasePortIfIndex (Индекс для BRIDGE-MIB).388.

Связанные обсуждения сообщества поддержки Cisco

В рамках сообщества поддержки Cisco можно задавать и отвечать на вопросы, обмениваться рекомендациями и совместно работать со своими коллегами.


Дополнительные сведения


Document ID: 40700