带有twisted的python netsnmp

问题描述 投票:0回答:3

我正在尝试查找 Python 的 netsnmp 绑定是否可以使用 twisted 进行异步?如果有人有一个例子,那会很有帮助。我的目标是看看是否可以以异步方式使用 Python 的 netsnmp 绑定来侦听陷阱、发送 SNMP get 请求等。

python network-programming twisted snmp
3个回答
-1
投票

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


-1
投票

你检查过 pysnmp 了吗?图书馆支持扭曲。

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
投票

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

© www.soinside.com 2019 - 2024. All rights reserved.