NoSuchObjectError pysnmp

NoSuchObjectError pysnmp

当我将 pysnmp 操作传递给 oid 时,我目前遇到错误。我得到的错误是

*************************NoSuchObjectError({'str': "Can't resolve node name ::(u'1', u'3', u'6', u'1', u'4', u'1', u'9', u'9', u'91', u'1', u'2', u'1', u'1', u'4') at "})***********

这是我的代码:

def SNMPWalkChildren(ipAddress, communityString, parentOID):
result = ""
try:
    DebugCode(ipAddress + " " + communityString + " " + parentOID)
    cmdGen = cmdgen.CommandGenerator()

    errorIndication, errorStatus, errorIndex, varBindTable = cmdGen.nextCmd(
        cmdgen.CommunityData(communityString),
        cmdgen.UdpTransportTarget((ipAddress, 161)),
        parentOID
    )

    if errorIndication:
        DebugCode(errorIndication)
    else:
        if errorStatus:
            DebugCode('%s at %s' % (
                errorStatus.prettyPrint(),
                errorIndex and varBindTable[-1][int(errorIndex)-1] or '?'
                )
            )
        else:
            for varBindTableRow in varBindTable:
                for name, val in varBindTableRow:                       
                    result += "\"" + str(name.prettyPrint()) + "\"" + ', \n'
                    DebugCode(name.prettyPrint())
    DebugCode(result[:-2])
    return result[:-2]
except Exception as e:
    DebugCode(str(e))

确保 parentOID 是一个(ascii 或 utf-8)字符串:

'1.3.6.1.4.1.9.9.91.1.2.1.1.4'

或一个整数元组:

(1, 3, 6, 1, 4, 1, 9, 9, 91, 1, 2, 1, 1, 4)

但不是 unicode 字符串 (u'1.3.6.1.4.1.9.9.91.1.2.1.1.4')。