2014-11-04 51 views
1

當博科Vyatta的5600執行下面的命令,你只需從.1.3.6.1.2.添加額外的OID根拖欠的「裸」 snmpwalk的命令SNMP代理輸出

snmpwalk -c XXXXXXX -v 2c vyatta01.foo.com

根OID獲得的OID但是,供應商特定的OID僅在根OID .1.3.6.1.4.中可用,在執行「裸」snmpwalk時需要獲得這些供應商OID,如上所示。

我有一種情況,我無法更改用於檢索數據的命令,所以我不能簡單地將.1.3.6.1.4添加到snmpwalk命令的末尾。我也無法更改在Vyatta路由器上運行的SNMP代理(Net-SNMP)。

我已經考慮過使用SNMP代理擴展或傳遞指令,但我不確定如何配置它。實質上,我希望能夠執行snmpwalk並讓它返回來自.1.3.6.1.2.1.3.6.1.4根的OID。我使用了不推薦使用的「exec」指令指向任意OID來檢索特定信息,但在這種情況下,我可以指定一個根OID。

任何援助將非常感激。

+0

這些答案有幫助嗎?或者你需要更多信息? – k1eran 2014-12-22 17:43:22

回答

0

管理員(Netsnmp的snmpwalk命令)而不是代理是指定要走的OID。我認爲代理人返回不同於管理員請求的不同OID是有意義的,因此任何更改都需要在經理方面進行。

snmpwalk手冊頁說:

snmpwalk [APPLICATION OPTIONS] [COMMON OPTIONS] [OID] 

If no OID argument is present, snmpwalk will search the subtree rooted at 
SNMPv2-SMI::mib-2 (including any MIB object values from other MIB modules, 
that are defined as lying within this subtree). 
+1

這裏是後退術語,經理是要求代理人提供的東西。 – Jolta 2014-11-07 09:31:39

+0

Yikes - 謝謝@Jolta - 現在修復我的答案! – k1eran 2014-11-07 09:51:29

0

代理未正確安排其的OID在字典序,使它不可能爲了一個經理從根走它仍然達到整個MIB樹。

我見過這種情況發生在某些供應商的Windows SNMP代理擴展中,但顯然其他人也可能犯同樣的錯誤。這個錯誤在代理商中是確定的,需要在那裏修復,所以向博科提交錯誤報告。但是,可以通過分別執行每個子樹的snmpwalk s來在管理器端實施解決方法。一步.1.3.6.1.2,另一步行.1.3.6.1.4

這聽起來很不幸,網絡管理框架將依靠snmpwalk命令對根OID。合適的NMS可以靈活地決定在代理上走哪些OID。

也許你可以在你的系統上使用snmpwalk命令的別名?編寫一個包裝腳本來檢查代理地址,如果代理是Brocade,包裝器可以執行兩個snmpwalk命令並連接它們的輸出。這是一個相當醜陋的黑客攻擊,但這是我能想到的。