Я пытаюсь загрузить пользовательский файл MIB, используя библиотеку pysnmp, и продолжаю получать это сообщение об ошибке:
raise error.SmiError('No module %s at %s' % (modName, self))
pysnmp.smi.error.SmiError: No module ROSS-VIDEO-MIB at <pysnmp.smi.view.MibViewController object at 0x0000019AA10B65C0>caused by <class 'pyasn1.error.PyAsn1Error'>: Malformed Object ID ROSS-VIDEO-MIB at ObjectName: None
Я изучил, что означает "Неверный идентификатор объекта", но не было Есть много ресурсов, объясняющих ... любые идеи?
Вот весь мой код:
from pysnmp import *
from pysnmp.hlapi import *
# from pyasn1 import debug
from pysnmp.entity import engine, config
from pysnmp.smi import compiler, view, rfc1902
for (errorIndication,
errorStatus,
errorIndex,
varBinds) in nextCmd(SnmpEngine(snmpEngineID='80003520300066742b0b9'),
CommunityData('public'),
UdpTransportTarget(('192.168.10.5', 161)),
ContextData(),
ObjectType(ObjectIdentity('SNMPv2-MIB').addAsn1MibSource('http://mibs.snmplabs.com/asn1').loadMibs()),
ObjectType(ObjectIdentity('SNMPv2-SMI').addAsn1MibSource('http://mibs.snmplabs.com/asn1').loadMibs()),
ObjectType(ObjectIdentity('ROSS-VIDEO-MIB').addAsn1MibSource('file:///C:/Users/user/OneDrive/Desktop/TBS/TD_SNMP/MIBs/ROSS-VIDEO-MIB.MIB').loadMibs())):
if errorIndication:
print(errorIndication)
break
elif errorStatus:
print('%s at %s' % (errorStatus.prettyPrint(),
errorIndex and varBinds[int(errorIndex) - 1][0] or '?'))
break
else:
for varBind in varBinds:
print(' = '.join([x.prettyPrint() for x in varBind]))
Спасибо, ребята!