Oid

模擬 SNMP 陷阱以測試監控

  • August 12, 2010

我正在嘗試在 Windows 上使用 Net-SNMP 來模擬一個應該在我們的監控系統上觸發警報的陷阱。

這是設置:

  • 發送陷阱的 Windows 7 客戶端
  • Net-SNMP 作為發送陷阱的軟體
  • 使用 Adventnet ManageEngine OpManager 作為 NMS 的 Linux(不相關)

這就是我想要完成的

發送帶有 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” <- 只是一個隨機測試字元串…

這對我來說沒有多大意義,如果有人能對此有所了解,我將不勝感激。

嘗試以下操作:

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 上的相同。

引用自:https://serverfault.com/questions/147876