Pysnmp: неправильный идентификатор объекта - PullRequest
0 голосов
/ 31 марта 2020

Я пытаюсь загрузить пользовательский файл 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]))

Спасибо, ребята!

...