net-snmp软件包搭建SNMP环境

搭建一个SNMP环境可以方便学习,也可直观的了解SNMP中各种实体及其行为,更加有效的学习。此处用net-snmp软件包搭建SNMP环境。

1   net-snmp简介

net-snmp是个开源的SNMP实现项目。支持SNMPv1、SNMPv2、SNMPv3,支持基于IPv4和IPv6的SNMP应用程序开发。

net-snmp包括以下内容:

l 完整的API用于SNMP应用程序开发(包括c和perl的API);

l 一个可扩展的SNMP代理程序(snmpd);开发者可开发动态模块扩展snmpd,net-snmp内置扩展子代理与主代理的通信协议;

l 提供众多命令行工具检查和使用SNMP协议;

l 一个trap接收进程,用于接收和显示trap。并可以将trap记录到日志文件里;

l 一个图形化的MIB浏览工具(tkmib:基于Tk/Perl的);

net-snmp被很多商业化linux包含,大多少的linux使用net-snmp的主代理实现Linux的SNMP支持。

2         安装与配置

net-snmp需要经过安装和配置两个主要步骤才可以使用。

2.1       操作系统

net-snmp可以在BSO UNIX、Linux、Windows等操作系统上编译使用。此处我们选择Linux操作系统。如果没有第二台机器装Linux,可以在Windows下安装一个VMWare(5.5以上版本),新建一个虚拟机,在虚拟机上安装Linux。

安装Linux时需要选择安装开发套件,否则编译net-snmp时会缺少编译和连接工具。

2.2       下载

net-snmp下载地址:http://www.net-snmp.org/download.html可以选择下载二进制文件或源码。源码需要自己编译,二进制只有Linux版本。

该处源码以net-snmp-5.2.2.tar为例。

2.3       解压

Su – root   //切换到root用户,否则后面的编译和安装会有问题。

Tar –xvf net-snmp-5.2.2.tar        //进入net-snmp源码目录后,执行该指令进行解压;

2.4       编译准备

编译之前需要进行编译准备,以生成编译所需的配置文件和Makefile,执行下列命令:

cd net-snmp-5.2.2

./configure

检查编译环境的最后会提示输入一些配置信息。一般取默认值即可(版本号笔者选择2)。net-snmp提供可扩展的代理,安装后运行在本机上,使本机成为一台被管理设备。最后配置检查程序会生成相关配置文件、编译及安装所需要的输入文件及相应的Makefile。

2.5       编译

make                   //使用编译准备步骤生成的Makefile,就可以编译net-snmp了。编译生成net-snmp的C语言开发库、SNMP工具、可扩展的主代理、开发工具。

2.6       安装

make install //

net-snmp编译完成后需要进行安装。默认安装情况下,安装后的文件和路径为:

1)         可扩展代理snmpd位于:/usr/local/share/ net-snmp

2)         C语言开发库位于:          /usr/local/share/ lib

3)         C语言开发头文件位于:/usr/local/share/ include

4)         net-snmp提供的SNMP工具位于:      /usr/local/share/ net-snmp

5)         net-snmp依赖的MIB文件位于:/usr/local/share/ net-snmp/mibs

6)         net-snmp依赖的配置文件:           /usr/local/share/ net-snmp/conf/etc/snmp

2.7       配置文件

需要为我们的测试环境配置一个学习用的配置文件。

Vi /etc/snmp/snmpd.conf         //进入编辑net-snmp的配置文件;

2.8       验证

安装完成后需要验证是否可以正常工作。

1)         Snmpd    //启动代理。验证主代理是否可以正常启动;

也可以加入参数使snmpd使用指定配置文件启动:

Snmpd -C –c /etc/snmp/snmpd.conf             //该方式,我们可以配置很多不同的配置文件,设置不同的运行环境,便于学习和开发。

2)         Ps -aef | grep snmpd      //检查代理是否已启动。(代理是守护进行,执行后会到后台运行)

3)         从代理中读取一个管理对象验证代理是否正常运行。

Snmpget -v2c –c public localhost sysDescr.o               //读取MIB-II表中的sysDescr对象,该对象表示设备的描述信息。执行该命令后应该得到类似以下的结果:SNMPv2-MIV::sysDescr.0=STRING:linux leelin.leelindomain 2.4.18-14 #1 Wed Sep 4 13:35:50 EDT 2002 i686

3         工具使用介绍

net-snmp提供了许多工具使用和调试SNMP,下面简单说明。具体参数请参见相应工具的Man page。方法: man <command>,例如:man snmpget

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值