как использовать обратный вызов от ответчика команды pysnmp V3?

Я использую последнюю версию pysnmp 4.2.4 и протестировал пример ответа на команду SNMPV1/2C (http://pysnmp.sourceforge.net/examples/current/v1arch/agent/cmdrsp.html), который возвращает значение Uptime в ответ на OID 1,3,6,1,2, 1,1,3,0

Я использовал пример ответчика V3 (http://pysnmp.sourceforge.net/examples/current/v3arch/agent/cmdrsp/v3-multiple-users.html) и вернуть системное значение (none) для 1,3,6,1,2, 1,1,3,0.

Как добавить обратный вызов в версию V3, чтобы он вызывал класс Uptime, аналогичный версии V1 (и возвращал локальное значение)?

ТИА Стив


person Steve    schedule 05.05.2013    source источник


Ответы (1)


Модель v3 вводит понятие класса контроллера инструментирования MIB, который обеспечивает обратные вызовы — один для чтения, а другой для операций набора. Реализация стандартного контроллера MIB вызывает объекты Python Managed Object Instances (каждый из которых идентифицируется OID) для получения/установки их значений.

Таким образом, вы можете настроить свой собственный класс MibInstrumentatonController (см. EchoMibInstrumController здесь) или используйте стандартный контроллер MIB с собственными экземплярами управляемых объектов (см. MyStaticMibScalarInstance здесь).

Настройки SNMPv3 в этих примерах немного отличаются, но это не относится к реализации MIB.

person Pooh    schedule 06.05.2013