2014-11-21 23 views
0

我創建了一些smnp代理,它將使用pysnmp來獲取OID響應。 我可以如何使pysnmp的人類可讀的響應OID?如何使pysmp oids可以對人類進行讀取

示例命令發生器:

cmdGen = cmdgen.CommandGenerator() 

    errorIndication, errorStatus, errorIndex, varBinds =cmdGen.getCmd(
    cmdgen.UsmUserData('user','privKey','authKey'), 
    cmdgen.UdpTransportTarget(('127.0.0.1', 161)),(1,3,6,1,2,1,1,1,0)) 

    #what I need: 
    make_human_readble_OID(VarBinds) 

感謝您的幫助!

回答

2

您應該通過lookupNames和/或lookupValues標誌來getCmd()作爲here所示。請記住,人的可讀性通常需要明確使用MIB。使用具有pysnmp的MIB您必須:

  1. 使用編譯pysnmp-MIB工具(從pysnmp分佈)
  2. 製作pysnmp負載從它們原來的ASN.1表示轉換MIB的pysnmp類和使用這些pysnmp -style MIB通過將文件系統上的位置通過.loadMibs()或.addMibSources()傳遞到MibVariable(如圖所示)here
相關問題