无法在UDP 162上接收snmp-traps

时间:2018-06-04 18:33:02

标签: networking nexus snmp net-snmp opennms

提前感谢您的帮助。

问题: 无法在udp 162端口上接收snmp-trap。 场景:尝试将一个nexus 5672置于OpenNMS中进行监控

预先检查:

  1. 我能够从我的linux节点上取消nexus 5k OpenNMS已安装。
  2. 我甚至可以做snmpgets。
  3. 我看到udp 161上的snmp流量,但它们主要是因为opennms正在做的snmp-get。
  4. 当我在162端口进行TCPDUMP时无法看到任何事情:(
  5. 我已检查是否在本地设置了任何ACL,但它们不是,iptables作为服务已停止。

    我已经确认snmp-configs已被正确推送。

    配置被推送到环回接口上,并且nexus 5k上也没有acl-groups,并且nexus 5k和OpenNMS托管Linux系统之间没有防火墙

    请帮助,我不知道我错过了什么。

2 个答案:

答案 0 :(得分:1)

好的,首先,SNMP有两个概念,第一个是轮询数据以从传感器获取数据或从设备中发现元素。监控应用程序向您的Nexus设备发送请求。这是您在发出snmpwalksnmpget命令时执行的操作。 Nexus设备运行的SNMP代理正在侦听端口161 / UDP。 第二个是,您的Nexus设备可以向您的监控应用程序发送消息。您的OpenNMS监控应用程序需要在端口162 / UDP上运行侦听器,称为 SNMP陷阱 SNMP Informs

因此尝试使用snmpget或snmpwalk调试没有获取 SNMP Traps 的问题并没有帮助。通信由Nexus设备初始化,OpenNMS是陷阱的监听器。

我会尝试使用以下步骤调试问题:

  • 确保OpenNMS已启用Trapd并正在侦听正确的界面,例如ss -lnpu sport = :162
  • 确保您的OpenNMS服务器上没有阻止阻止162 / UDP流量的防火墙,例如: iptables -L
  • 使用tcpdump通过查看带有协议UDP的目标端口162的流量,查看Nexus的SNMP陷阱是否到达OpenNMS服务器。
  • 如果您从OpenNMS服务器收到SNMP陷阱,则可以开始查看OpenNMS服务器的trapd.log并验证IP的社区设置是否正确。 OpenNMS将使用为发件人IP地址配置的社区来处理陷阱

希望这会有所帮助

答案 1 :(得分:0)

此问题得到解决。从Linux端到OpenNMS SNMP端,一切都很好。但是,网络设备错误地推送了SNMP配置。我将其更改为使用默认的VRF而不是环回地址,然后它开始工作。