Ниже показано, как я пытаюсь реализовать свой агентская сторона. В начале реализации я получил ошибку типа
Код: Выделить всё
Error: OID not increasing: SNMPv2-SMI::dod
>= SNMPv2-SMI::dod
Ошибка: OID не увеличивается: SNMPv2-SMI::dod, Как увеличить OID?< /p>
Итак, я исправил свой код, например
Код: Выделить всё
class sample ():
def readVars (self , varBinds, acInfo=(None, None)):
retItem = []
for ov in varBinds:
if str(ov[0]) == '1.3.6.1.4.1.12345.1.1.1.0':
retItem.extend([(ov[0], v2c.OctetString('%s' % primary_keys['value1']))])
elif str(ov[0]) == '1.3.6.1.4.1.12345.1.1.2.0':
retItem.extend([(ov[0], v2c.OctetString('%s' % primary_keys['value2']))])
.
.
.
.
def readNextVars (self , varBinds, acInfo=(None, None)):
retItem = []
for ov in varBinds:
if str(ov[0]) == '1.3.6.1.4.1.12345.1.1.1.0':
retItem.extend([('1.3.6.1.4.1.12345.1.1.2.0', v2c.OctetString('%s' % primary_keys['value2']))])
elif str(ov[0]) == '1.3.6.1.4.1.12345.1.1.2.0':
retItem.extend([('1.3.6.1.4.1.12345.1.1.3.1.1.0', v2c.OctetString('%s' % item_list['value3']]))])
.
.
.
.
else:
retItem.extend([('1.3.6.1.4.1.44555.1.1.1.0', v2c.OctetString('%s' % primary_keys['value1']))])
return retItem
Код: Выделить всё
mibTreeA = sample()
self._snmpContext.registerContextName(v2c.OctetString('ContextOne'), mibTreeA)
self._snmpContext.registerContextName(v2c.OctetString('ContextTwo'), mibTreeA)
Подробнее здесь: https://stackoverflow.com/questions/593 ... agent-side