模拟 SNMP 陷阱来测试监控

模拟 SNMP 陷阱来测试监控

我正在尝试在 Windows 上使用 Net-SNMP 来模拟应该在我们的监控系统上触发警报的陷阱。

设置如下:

  • 发送陷阱的 Windows 7 客户端
  • Net-SNMP 作为发送陷阱的软件
  • Linux 与 Adventnet ManageEngine OpManager 作为 NMS(不相关)

这就是我想要实现的

发送 OID 为 .1.3.6.1.4.1.5089.1.0.1 的陷阱(根据我已加载到 NMS 中的 MIB)并向其中发送某种消息,以查看是否可以在 NMS 中收到任何警报。我可以看到我实际上在防火墙中发送了一个陷阱,但我不知道它包含什么。

这是我迄今为止的尝试:

snmptrap.exe -v 2c -c xxxxxxx 192.168.100.65 '' 6 0 .1.3.6.1.4.1.5089.1.0.1 s "123456"

但是,我似乎找不到任何带有 snmptrap 示例的合理文档。基本上,我需要知道什么:

  • '' <- 我为什么需要这个?我可以省略它,它仍然会发送陷阱
  • 6 <- 我认为是企业通用陷阱。这是正确的吗?
  • 0 <- 我不知道,我需要一些值
  • .1.3.6.1.4.1.5089.1.0.1 <- 我认为这是企业特定的 OID,后面应该跟着一些数字
  • s <- 表示字符串
  • “123456”<-只是一个随机测试字符串......

这对我来说没有多大意义,如果有人可以阐明这一点,我将非常感激。

答案1

请尝试以下操作:

snmptrap.exe -v 2c -c xxxxxxx 192.168.100.65 
'' .1.3.6.1.4.1.5089.1.0.1 .1.3.6.1.4.1.5089.2.0.999 s "123456"
  • '' <- v2c trap 的第一个参数是代理正常运行时间,它是必需的,空参数将被替换为当前值

  • .1.3.6.1.4.1.5089.1.0.1 <- 陷阱 OID

  • .1.3.6.1.4.1.5089.2.0.999 <- varbind(这需要在 MIB 中定义为字符串值)

  • s <- 表示字符串

  • “123456”<-只是一个随机测试字符串......

这将生成一个具有以下内容的 SNMPv2c 陷阱(如在 wireshark 中所示):

      variable-bindings: 3 items
            1.3.6.1.2.1.1.3.0: 878104
            1.3.6.1.6.3.1.1.4.1.0: 1.3.6.1.4.1.5089.1.0.1 (iso.3.6.1.4.1.5089.1.0.1)
            1.3.6.1.4.1.5089.2.0.999: 31323334353 (this is 123456 octet string)

该输出来自 Linux 上的 snmptrap,但似乎与 Windows 上的相同。

答案2

忘记网络 SNMP 吧,使用它太麻烦了……只需从http://ireasoning.com/mibbrowser.shtml...加载一个 mib 文件,您就可以查看并发送所有 SNMP 陷阱。

答案3

我也不完全理解它,但这对我有用(反复试验的方法;)

snmptrap -v 2c -Ci -u 用户 -c 社区主机''.xyzqoid 1 s 字符串 2 s 字符串2

相关内容