Решение ошибки Unknown Object Identifier (Index out of range: XXX (ifIndex))

Сегодня решил сделать шаблон Zabbix для рисования графиков трафика с портов GPON плат на Huawei SmartAX MA5683T.

Из Linux посмотрел индексы интерфейсов командой:

snmpwalk -v2c -c public 192.168.0.101 ifDesc

Получил ответ что-то в виде (где 4194336768 индекс нулевого порта GPON платы):

IF-MIB::ifDescr.4194336768 = STRING: Huawei-MA5600-V800R008-GPON_UNI
… и т.д.

Соответственно по этому индексу должен считываться и трафик, поэтому выполнил команду:

snmpwalk -v2c -c public 192.168.0.101 ifInOctets.4194336768

Но в итоге получил ответ:

.1.3.6.1.2.1.2.2.1.13.4194336768: Unknown Object Identifier (Index out of range: 4194336768 (ifIndex))

Решить проблему помогло добавления ключа -Ir в команду:

snmpwalk -v2c -Ir -c public 192.168.0.101 ifInOctets.4194336768

В ответ:

IF-MIB::ifInOctets.4194336768 = Counter32: 2686914701

Но, так как в Zabbix негде указать дополнительные опции к SNMP запросам, то пришлось написать скрипт:

snmpwalk -v2c -Ir -c public 192.168.0.101 ifInOctets.4194336768 | sed -e 's/.*Counter32: //g'

В конце команды редактором SED я отрезал лишний текст чтобы на выходе была только цифра.
В Zabbix потом изменим элемент данных, где Тип: Внешняя проверка, Ключ: ИмяСкрипта.sh, Тип информации: Числовой (с плавающей точкой), Хранение значения: Дельта (скорость в секунду).

One thought on “Решение ошибки Unknown Object Identifier (Index out of range: XXX (ifIndex))”

Добавить комментарий