歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux編程 >> Linux編程 >> 簡單網絡協議SNMP

簡單網絡協議SNMP

日期:2017/3/1 10:22:11   编辑:Linux編程

1. 概念了解

SNMP 是專門設計用於在 IP 網絡管理網絡節點(服務器、工作站、路由器、交換機及 HUBS 等)的一種標准協議,它是一種應用層協議。 SNMP 使網絡管理員能夠管理網絡效能,發現並解決網絡問題以及規劃網絡增長。通過 SNMP 接收隨機消息(及事件報告)網絡管理系統獲知網絡出現問題。

SNMP 管理的網絡有三個主要組成部分:管理的設備、代理和網絡管理系統。

管理設備是一個網絡節點,包含 SNMP 代理並處在管理網絡之中。

被管理的設備(如路由器、訪問服務器,交換機和網橋、 HUBS 、相關主機)用於收集並儲存管理信息。通過 SNMP , NMS 能得到這些信息。

SNMP 代理是被管理設備上的一個網絡管理軟件模塊。

2.移植前准備

a.從http://www.net-snmp.org/網址下載net-snmp-5.6.1.1.tar.gz源碼包

b.確定已安裝交叉編譯器arm-linux-gcc

3.移植過程

1.解壓net-snmp-5.6.1.1.tar.gz

2.配置

CC=arm-linux-gcc ./configure --prefix=/usr/local/arm_netsnmp --build=i386-linux --host=arm-linux --enable-mini-agent --disable-ipv6 --with-endianness=little --disable-manuals --disable-ucd-snmp-compatibility --enable-as-needed --disable-embedded-perl --without-perl-modules --disable-snmptrapd-subagent --disable-applications --disable-scripts

3.編譯make

4.安裝make install

注:出錯的話,看下出錯原因,有些庫沒裝的話,要裝上。我的是這個庫:apt-get install libperl.dev

5.移植到開發板

a.在arm_netsnmp底下生成的snmpd移植到開發板/tmp/ArmSnmp(目錄自己隨便找個地方放)

b.vi snmpd.conf,添加內容如下:

rocommunity public
rwcommunity 123456

wq保存退出

6.測試結果

a.先在開發板運行如下命令:

[root@EM9X60 /tmp/ArmSnmp]#./snmpd -C -c ./snmpd.conf

b.然後在linux主機運行:

root@an-virtual-machine:/usr/local/net-snmp/bin# ./snmpget -v2c -c public 192.168.1.94 sysDescr.0
SNMPv2-MIB::sysDescr.0 = STRING: Linux EM9X60 2.6.30 #92 Wed Mar 30 17:39:47 CST 2011 armv5tejl

注:snmpget是linux主機平台的(下載源碼後,默認安裝就可以得到)

Copyright © Linux教程網 All Rights Reserved