1. 程式人生 > >SNMP4J自帶的操作SNMP協議的命令列工具

SNMP4J自帶的操作SNMP協議的命令列工具

SNMP4J自帶了一個操作SNMP協議的命令列工具,功能非常強大,除了支援基本的SNMP請求get、getnext、set和getbulk(SNMPv2c/v3)外,還支援傳送inform(SNMPv2c/v3)、trap(SNMPv2c/v3)和v1trap(SNMPv1),以及監聽上述trap和請求,並且還提供了在getnext、getbulk基礎上包裝的walk和getTable命令

在SNMP裝置連線、資料一致性的問題時,經常需要通過工具獲取裝置側的資料,在研發除錯時我們經常使用mibbrowser,但是mibbrowser依賴mib檔案,而且是商用軟體現網不一定有,SNMP4J命令列工具的要求則很簡單,只需要JRE和SNMP4J以及LOG4J的包即可執行,可以成為我們定位SNMP問題的好幫手

包裝一個SNMP4J.bat命令,命令如下
@java -cp ./snmp4j-2.1.0.jar;./com.springsource.org.apache.log4j-1.2.16.jar org.snmp4j.tools.console.SnmpRequest %*

直接執行SNMP4J或者SNMP4J -h可以檢視幫助,說明很詳細,兩個簡單示例如下:

//執行SNMPv2c的getnext請求
SNMP4J -c public -v 2c -p GETNEXT -d OFF 10.66.93.109/20004 1.3.6.1.2.1.1.2

//獲取SNMPv3的表,從1.3.6.1.4.1.2011.2.106.1.2.1.1到1.3.6.1.4.1.2011.2.106.1.2.1.14
SNMP4J -u infox -n 40 -v 3 -Ot -d OFF 10.66.93.109/10031 1.3.6.1.4.1.2011.2.106.1.2.1.1-14