Android SNMP:使用bulk命令用python恢复整个MIBtree

Android SNMP:使用bulk命令用python恢复整个MIBtree,android,python,snmp,Android,Python,Snmp,我在android中有一个SNMP代理。 我正在尝试使用以下python脚本恢复整个MIB树: from pysnmp.entity.rfc3413.oneliner import cmdgen cmdGen = cmdgen.CommandGenerator() errorIndication, errorStatus, errorIndex, \ varBinds = cmdGen.bulkCmd( cmdgen.CommunityData('public',

我在android中有一个SNMP代理。 我正在尝试使用以下python脚本恢复整个MIB树:

from pysnmp.entity.rfc3413.oneliner import cmdgen  


cmdGen = cmdgen.CommandGenerator()

errorIndication, errorStatus, errorIndex, \
varBinds = cmdGen.bulkCmd(  
        cmdgen.CommunityData('public', mpModel=0),  
        cmdgen.UdpTransportTarget(('192.168.0.90', 32150)), 
        0, 
        25, 
        (1,3,6,1,4,1,12619,1,1)
    )

if errorIndication:
    print(errorIndication)
elif errorStatus:
    print('%s at %s' % (errorStatus.prettyPrint(),
                    errorIndex and varBinds[int(errorIndex) - 1][0] or '?'))
else:
    for varBind in varBinds:
    print(' = '.join([repr(x) for x in varBind]))
如果我使用oid(1,3,6,1,4,112619,1,1)作为根oid,则输出如下:

ObjectType(ObjectIdentity(ObjectName('1.3.6.1.4.1.12619.1.1.1.0')),OctetString('intel ICI101'))
ObjectType(ObjectIdentity(ObjectName('1.3.6.1.4.1.12619.1.1.2.0')),OctetString('4.4.4'))
ObjectType(ObjectIdentity(ObjectName('1.3.6.1.4.1.12619.1.1.3.0')), TimeTicks(10100333))
(ObjectIdentity(ObjectName('1.3.6.1.4.1.12619.1.2.1.0')), EndOfMibView())
它工作正常。问题是我想要整个MIB树,所以我想要使用根oid,即(1,3,6,1,4,112619,1)。但使用该OID的输出是:

OIDs are not increasing

如何实现此功能?

ignoreNonIncreasingOid=True

将该参数添加为选项使其工作

varBinds = cmdGen.bulkCmd(  
        cmdgen.CommunityData('public', mpModel=0),  
        cmdgen.UdpTransportTarget(('192.168.0.90', 32150)), 
        0, 
        25, 
        (1,3,6,1,4,1,12619,1),
        ignoreNonIncreasingOid = True
    )