net-snmp的安装配置和移植应用(1)

一、SNMP

简单网络管理协议,作为一种短期的网络管理解决方案,用于管理网络设备。所有支持SNMP协议的设备都提供一个SNMP统一的界面

所以作为网络设备,支持SNMP协议是必要的。

二、SNMP模型

一套完整的的SNMP系统包含三个部分

  • 管理信息库(MIB)
  • SNMP设备(Agent)
  • 网管系统(NMS)
net-snmp的安装配置和移植应用(1)


三、SNMP的实现

根据SNMP的模型,我用主机Ubuntu系统和开发板实现一套SNMP系统

主机Ubuntu系统作为NMS、开发板作为Agent设备,开发板上维护自己的MIB

这样就有了两个主要的任务: Ubuntu上安装snmp服务、开发板移植snmp服务


四、主机Ubuntu安装SNMP服务

在Ubuntu上安装SNMP服务有两种方式

  1. 用apt-get install snmp snmpd 命令安装
  2. 下载源码http://www.net-snmp.org/download.html、对源码进行配置安装
由于我们进行移植的时候做的就是源码的配置移植安装,所以在主机上用简单的命令安装。
(1)命令安装
net-snmp的安装配置和移植应用(1)

在安装的打印信息还能看出来一些东西、比如安装的SNMP版本号是5.4.2.1

而现在官网最先版为5.7.3版本

net-snmp的安装配置和移植应用(1)

当然版本问题并不是那么重要

安装成功后、snmpget --version查看SNMP

net-snmp的安装配置和移植应用(1)

(2)SNMP的配置文件

http://www.net-snmp.org/docs/man/snmpd.conf.html(此为官方配置文档,怀疑这为什么是“简单”网络管理协议,其实并不简单)

不过还好的是源码中会给一个EXAMPLE.conf,就是一个conf的样板。我们可以根据这个样板改改就可以了。

[email protected]:~/workspace/net-snmp/net-snmp-5.4.4$ sudo cp EXAMPLE.conf /etc/snmp/snmpd.conf

[email protected]:~$ sudo vim /etc/snmp/snmpd.conf

对SNMP的配置文件进行编辑。

1>

net-snmp的安装配置和移植应用(1)

把监控IP更为本机IP

2>

net-snmp的安装配置和移植应用(1)

添加 access MyROSystem "" any noauth exact all none none

更改rocommunity public default -V systemonly为:rocommunity public default 

3>

net-snmp的安装配置和移植应用(1)

去掉#trap2sink localhost public

#informsink localhost public 的#号

(3)验证snmp服务

重新启动snmpd

sudo /etc/init.d/snmpd restart

net-snmp的安装配置和移植应用(1)

snmpwalk -v 2c -c public 192.168.1.148获取主机上维护的MIB数据

由于数据太大,terminel竟然无法完全显示

snmpwalk -v 2c -c public 192.168.1.148  > snmpMIB.txt 重定向到文件中查看

net-snmp的安装配置和移植应用(1)

这样等于是主机Ubuntu自己既做agent又做NMS、通过自己查询自己SNMP服务维护的MIB信息

五、开发板移植SNMP服务

见下篇博客