[英]snmp-server trap-source using pysnmp
我是pysnmp的新手。 我當前的要求是支持snmp陷阱的陷阱源。 我試圖了解如何使用pysnmp ntforg.NotificationOriginator構造來支持此功能。
我當前用於發送陷阱的代碼段如下:
varBinds = rfc1902.ObjectIdentity('SNMPv2-MIB', 'coldStart')
trapVarBinds = trapAgent.VarBinds(varBinds,'','')
trapPdu = rfc1902.NotificationType(
varBinds
).resolveWithMib(self.mibViewController)
SendTrap(trapAgent.TrapData(trapPdu,trapVarBinds))
def SendTrap(self,trapData):
for server in trapServer: #list of trapServer config info
data = trapServer[server]
print 'Trap server:%s'%(data,)
sendRequestHandle = ntforg.NotificationOriginator(snmpContext).sendVarBinds(
snmpEngine,
data.Name,
#None,'',
snmpContext.contextEngineId,'',
trapData.trapPdu
)
關於如何支持陷阱源的任何見解/建議都將非常有幫助。 謝謝!
請參閱通知發起者
您可以如下指定源IP和端口
from pysnmp.entity import config
from pysnmp.carrier.asynsock.dgram import udp
config.addSocketTransport(
snmpEngine,
udp.domainName,
udp.UdpSocketTransport().openClientMode(iface=('127.0.0.1', 1024))
)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.