Обработчик управления устройством с синхронизацией интерфейсов и их индексов

Материал из BiTel WiKi

(Различия между версиями)
Перейти к: навигация, поиск
Cromeshnic (Обсуждение | вклад)
(Новая страница: «= Описание = <p>Класс - обработчик управления устройством по SNMP (DeviceManager) взамен стандартного…»)
Следующая правка →

Версия 06:42, 23 декабря 2013

Содержание

Описание

Класс - обработчик управления устройством по SNMP (DeviceManager) взамен стандартного.

  • Умеет выдавать uptime, как и стандартный SnmpDeviceManager.
  • Умеет синхронизировать интерфейсы устройства и их snmp-индексы (нужны для учёта flow)
Полезен для схем, использующих интерфейсы, например Vlan per user + Cisco IP subscriber interface + ISG

Как пользоваться

  • Скачиваем библиотеку snmp4j[1] (я использовал snmp4j-2.2.3.jar[2]).
  • Копируем snmp4j-2.2.3.jar (или другую версию) в /usr/local/BGBillingServer/lib/app
  • Рестартуем сервер биллинга
  • Делаем ./update в BGInetAccess и BGInetAccounting и рестартуем их
  • Копируем себе в динамический код классы:
ru.dsi.bgbilling.modules.inet.dyn.device.snmp.IfaceSnmpDeviceManager
ru.dsi.bgbilling.modules.inet.dyn.device.snmp.SnmpDeviceManager
ru.dsi.bgbilling.modules.inet.dyn.device.snmp.SnmpClient
  • Компилируем динамический код
  • Указываем в типе устройства модуля Inet "Обработчик управления устройством: ru.dsi.bgbilling.modules.inet.dyn.device.snmp.IfaceSnmpDeviceManager"
  • Настраиваем конфигурацию устройства/типа устройства/родительского устройства (по усмотрению) - см раздел "Конфигурация"
  • Перечитываем конфигурацию устройств
  • Заходим в устройство с нашим обработчиком, кликаем правой кнопкой, выбираем "выполнить команду", пишем ifsync, смотрим результат:

Файл:ifsync-result.png

Принцип работы

Настройка

Код

P.S.

  • Использовал snmp4j вместо westhawk snmp, т.к. в последнем нельзя сделать GETNEXT
Личные инструменты