当前位置:   article > 正文

Python使用PySNMP获取交换机名_pysnmp.hlapi.asyncore

pysnmp.hlapi.asyncore

使用的SNMPv2c。

源码来自http://snmplabs.com/pysnmp/examples/hlapi/asyncore/sync/manager/cmdgen/snmp-versions.html

做了一点修改。

  1. # -*- coding: utf-8 -*-
  2. from pysnmp.hlapi import *
  3. deviceIP = "192.168.75.137"
  4. snmpv2Community = "testv2"
  5. # ----------------------------------------------------------------
  6. def getDeviceName(deviceIP, snmpCommunity):
  7. deviceNameOID = "1.3.6.1.2.1.1.5.0"
  8. errorIndication, errorStatus, errorIndex, varBinds = next(
  9. getCmd(SnmpEngine(),
  10. CommunityData(snmpCommunity),
  11. UdpTransportTarget((deviceIP, 161)),
  12. ContextData(),
  13. ObjectType(ObjectIdentity(deviceNameOID))
  14. )
  15. )
  16. if errorIndication:
  17. print(errorIndication)
  18. elif errorStatus:
  19. print('%s at %s' % (errorStatus.prettyPrint(),
  20. errorIndex and varBinds[int(errorIndex) - 1][0] or '?'))
  21. else:
  22. for varBind in varBinds:
  23. # 推导式
  24. print(' = '.join([x.prettyPrint() for x in varBind]))
  25. def main():
  26. getDeviceName(deviceIP, snmpv2Community)
  27. main()
  28. # 输出结果:SNMPv2-MIB::sysName.0 = R1.test.com

 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/繁依Fanyi0/article/detail/156748
推荐阅读
相关标签
  

闽ICP备14008679号