python netsnmp与扭曲

时间:2015-02-09 22:13:55

标签: python network-programming twisted snmp

我试图找出是否可以使用netsnmp将Python twisted绑定设为异步?如果有人有一个例子,那将是有帮助的。我的目标是看看我是否可以以asyn方式使用Python的netsnmp绑定来侦听陷阱,发送SNMP get请求等。

3 个答案:

答案 0 :(得分:-1)

到目前为止,我发现zenoss写的pynetsnmp已经过时了。不确定是否有更新的库或者是否带有自己的SNMP库?

答案 1 :(得分:-1)

你检查过pysnmp了吗?图书馆支持扭曲。 http://pysnmp.sourceforge.net/examples/v3arch/twisted/contents.html

from twisted.internet import reactor
from pysnmp.entity import engine, config
from pysnmp.entity.rfc3413 import cmdrsp, context
from pysnmp.carrier.twisted.dgram import udp

snmpEngine = engine.SnmpEngine()

config.addTransport(
    snmpEngine,
    udp.domainName,
    udp.UdpTwistedTransport().openServerMode(('127.0.0.1', 161))
)

config.addV1System(snmpEngine, 'my-read-area', 'public')
config.addV1System(snmpEngine, 'my-write-area', 'private')


config.addVacmUser(snmpEngine, 1, 'my-read-area', 'noAuthNoPriv', (1, 3, 6, 1, 2, 1))
config.addVacmUser(snmpEngine, 1, 'my-write-area', 'noAuthNoPriv', (1, 3, 6, 1, 2, 1), (1, 3, 6, 1, 2, 1))

snmpContext = context.SnmpContext(snmpEngine)

cmdrsp.GetCommandResponder(snmpEngine, snmpContext)
cmdrsp.SetCommandResponder(snmpEngine, snmpContext)
cmdrsp.NextCommandResponder(snmpEngine, snmpContext)

reactor.run()

答案 2 :(得分:-2)

http://twistedsnmp.sourceforge.net就是这样的实现。