Добавить данные таблицы PySNMP Command Responder - PullRequest
0 голосов
/ 09 апреля 2020

Я пытаюсь разобраться с PySNMP Command Responder [1], в частности, предоставляя информацию о таблице IF-MIB (для начинающих в любом случае) для запросов snmpget / snmpwalk. Итак, я рассматриваю пример для SNMP Responder [2], а также для создания и вставки таблиц, найденных здесь [3], [4], [5].

Из моего понимания я определю /etc/snmpresponder/managed-objects/__IF-MIB.py, в котором я укажу большинство или все хуки, которые требуются CommandResponder для выполнения заданных операций (для ex-операции snmpgetnext -v2c -c public 127.0.0.1:1161 IF-MIB::ifMtu.1). Предположим, это нормально, у меня есть следующие вопросы:

  1. Как правильно добавить данные в столбец таблицы (скажем, IF_MIB :: ifMtu)? Могу ли я связаться с snmpEngine или mibInstrumentation, используемыми SnmpCommander?
  2. Могу ли я полагаться исключительно на метод экспорта? args.append(SysnameObjectInstance( (1, 3, 6, 1, 2, 1, 2, 2, 1, 4), (idx,), ifNumber.syntax.clone(idx + 1) ))
  3. Для IF_MIB.py [6] я не вижу подобного RowStatus, подобного [3]. Как удалить строку?
  4. В целом, насколько подвержен изменениям API? Я вижу различия между выпусками (например, writeMibObjects и writeVars), хотя версия 5.0 еще не выпущена.

[1] http://snmplabs.com/snmpresponder/

[2] http://snmplabs.com/snmpresponder/mib-implementation/index.html#

[3] http://snmplabs.com/pysnmp/faq/how-to-implement-agent-mib.html

[4] http://snmplabs.com/pysnmp/examples/smi/agent/implementing-mib-objects.html

[5] https://github.com/etingof/pysnmp/blob/master/examples/smi/agent/operations-on-managed-objects.py

[6] https://github.com/etingof/pysnmp-mibs/blob/master/pysnmp_mibs/IF-MIB.py

...