net-snmp在windows上的配置开发及详细的代码流程
NET-SNMP代理配置手册
NET-SNMP代理配置手册中文版译者:ioerr2010年7月19日原文属于windows版net-snmp 5.5.0版自带chm文档中的snmpd.conf部分,如果大家在类unix环境中使用,可能会有区别。
从5月21日开始翻译到现在差不多2个月,校稿一次,实在没有心力校稿第二次了,呵呵。
费了这半天劲希望对大家有所帮助,如果发现翻译有错误欢迎发邮件:ZHL98040011@,我会立即更正,以便大家参考。
大家可以随意转发,但请带上俺的名字ioerr,每当我在别的网站看见我翻译的文档,心中之得意…嘿嘿:D。
但请勿用于商业用途,否则后果自负。
还有下面几个文档在我的博客上(/ioerr),欢迎参考。
MRTG配置参考手册NTOP中文手册openBSD 4.2 packages 和ports系统SNMPD.CONF(5) Net-SNMP SNMPD.CONF(5)名称snmpd.conf - Net-SNMP's snmp代理的配置文件描述Net-SNMP代理使用一个或者更多个配置文件来控制它的运行和提供管理信息。
这些配置文件(snmpd.conf和snmpd.local.conf)位于snmp_config(5)手册页指出的目录中。
snmpconf(是一个perl脚本程序)可以为snmp代理生成最常用的配置文件。
查看snmpconf(1)来获取进一步的详细信息,或者尝试运行命令:snmpconf -g basic_setup这里有大量的指令可以指定,绝多数可以被划入四个大类:* 用户访问控制类* 控制代理提供信息类* 本地系统监控类* 代理功能扩展类有一些指令不能自然的划入这四类中,但是这四类这些指令包括了典型的snmpd.conf 配置文件的主要部分。
全部指令请运行以下命令来获得:snmpd –H代理行为控制虽然绝大多数指令与代理提供的MIB包含的信息有关,但还有一些指令用于控制snmpd代理本身--通常它被认为是一个提供服务的守护进程。
我的net-snmp安装配置总结
Net-snmp安装配置总结以下内容这只涉及到了net-snmp的一些宏观方面的操作和应用,并没有说明具体开发相关事宜。
而且目前很强烈的感觉到,针对net-snmp具体开发的文档太少,所以行走起来很艰辛,因此仍然有很长的路要走,靠时间去积累!我以我的经历简单概述总结,希望这对初学者有帮助~一:安装net-snmp1.解压文件:cd /usr/srctar –zxv –f net-snmp-5.7.2.tar.gz2.配置makefile./configure--prefix=/usr/local/net-snmp--enable-mfd-rewrites--with-default-snmp-version="2c"--with-sys-contact="xxx@"--with-sys-location="China"--with-logfile="/var/log/snmpd.log"--with-persistent-directory="/var/net-snmp"解释:prefix:net-snmp将要安装的路径enable-mfd-rewrites:允许用新的MFD重写可用的mid模块with-default-snmp-version:默认的SNMP版本with-sys-contact:可以配置该设备的联系人with-sys-location:该设备的位置with-logfile:日志文件路径with-persistent-directory:不变数据存储目录当然,可以根据实际需求,添加需要编译的模块,如—with-mib-modules=”xxx”3.make4.make install5.配置snmpd.conf,在/var/local/net-snmp/share/snmp目录下新建snmpd.conf文件,在里面添加如下内容:syslocation Chinasyscontact xxx@rocommunity publicrwcommunity whoareyou6.设置net-snmp自启动:在/etc/rc.local文件末尾加入以下代码/usr/local/net-snmp/sbin/snmpd -c /usr/local/net-snmp/share/snmp/snmpd.conf &7.设置环境变量在/etc/profile末尾加入以下代码PATH=/usr/local/net-snmp/bin:/usr/local/net-snmp/sbin:$PATH 使环境变量设置生效source /etc/profile8.查看snmpd是否启动:ps –ef | grep snmpd或者lsof –i:161二:添加Mib库1.将MY-MIB.txt mib库拷到/var/local/net-snmp/share/snmp/mibs目录2.添加环境变量。
win7下安装NET-SNMP-配置过程-服务无法启动
net-snmp 配置开发(win7系统)一、安装1、net-snmp安装程序:net-snmp-5.6.1.1-1.x86.exe(文件名是net-snmp-5.6.1.1-1.x86.exe已经编译好的版本,无需再编译)2、Perl安装程序:ActivePerl-5.22.0.2200-MSWin32-x86-64int-299195.msi(以上全部默认安装路径)修改路径没调试不知道可行不?二、配置1、snmpd.conf配置。
在c:/usr/etc/snmp 目录添加配置文件snmpd.conf 。
此路径下已经有了一个snmp.conf文件,不要混淆,新建TXT文件再去后缀。
添加如下内容(简单配置:)rocommunity publicrwcommunity private它表示:启动agent 服务后,public 共同体是只读的,private 共同体可读也可写。
或:详细配置:在snmpd.conf加入:##### First, map the community name (COMMUNITY) into a security name# (local and mynetwork, depending on where the request is coming# from):# source communitycom2sec local localhost root (修改为public)com2sec local 192.168.1.110 root (修改为192.168.1.100 public)com2sec mynetwork 192.168.1.0/24 public##### Second, map the security names into group names:# sec.model group MyRWGroup v1 localgroup MyRWGroup v2c localgroup MyRWGroup usm localgroup MyROGroup v1 mynetworkgroup MyROGroup v2c mynetworkgroup MyROGroup usm mynetwork##### Third, create a view for us to let the groups have rights to:# incl/excl subtree maskview all included .1 80##### Finally, grant the 2 groups access to the 1 view with different# write permissions:# context sec.model sec.level match read write notifaccess MyROGroup "" any noauth exact all none noneaccess MyRWGroup "" any noauth exact all all none####(注意每次改动snmpd.conf文件后都要重启snmp服务)2、注册snmp agent服务,在(软件安装路径)\路径下,打开文件registeragent.bat就行,自动注册服务。
net_SNMP编译详解
net_SNMP编译详解编译net-snmp-5.7.1步骤I386编译:1、在源文件中/net-snmp-5.7.1;执行./configure --prefix=/usr/net-snmp/ --enable-embedded-perl --enable-shared --with-perl-modules2、在源文件在源文件中/net-snmp-5.7.1;执行#make,#makeinstall3、如果需要把MIB文件,使用工具生成.C和.h文件,那么进行以下步骤:(1)将自己写好的mib文件(如yourmib.MIB,最好检查没有语法错误和警告,否则用mib2c生成的mib的.C文件就不全了,可通过SNMPC工具检查),拷贝源MIB文件到LINUX下,复制该mib 文件的代码到/usr/snmp/share/snmp/mibs中。
(2)在源代码net-snmp-5.7.1的路径下,命令行中执行下以命令#export MIBS=all ;就会将安装net-snmp-5.7.1的路径下的mibs目录的所有mibs 文件包含进来了。
(3)如果使用net-snmp中的mib2c工具生成MIB的.c和.h文件,则进行如下操作:1)为了使用mib2c来扩展snmp代理,必须安装perl模块,因为mib2c是使用perl语言来编写的。
2)命令就可完成perl模块的安装:在路径/net_snmp5.7.1/perl/SNMP下执行命令perl Makefile.PL。
3)然后在该目录下执行命令:make和make install.4)当安装成功后,在当前目录下执行命令:#env MIBS=“+YTATM-ACCESSNET-MIB”mib2c cetc54。
就会在当前目录下生成C文件和相应的头文件。
修改名字.c名字时,#env MIBS=“+YTA TM-ACCESSNET-MIB”mib2c –f nie cetc54。
windows下编译使用Net-SNMP
说明:根据net-snmp-5.6中的“README.win32”摘录和翻译。
转载请注明出处。
email:wulinshuxue@net-snmp 在windows下用MSVC编译(一)net-snmp是一个开源项目,提供关于snmp的一些库和工具。
下载网址:/projects/net-snmp/目前的最新版本是5.6。
如果想简单地安装一下的话,可以下载x86的exe版本,一般最新版的程序还没有发布exe版本。
目前最新的exe版本为net-snmp-5.5.0-1.x86.exe 。
在网上搜了一下,大多是在linux下的编译过程,windows下的情况比较少,另外,一些注意事项也很少。
在下载了net-snmp-5.6后,看到里面那么多的文件,觉得很晕。
我猜里面需要先读的文件大概是“win32.readme”,这个文件是在win32环境下编译使用net-snmp的说明文件。
用记事本打开后,估计超长的篇幅要让不少人崩溃。
不过没事,这是分小节写的,每小节有内容说明,条理很清晰。
摘录了一些说明,并作了大致的翻译,如下:1、“This guide describes building with Microsoft Visual C++ 6.0 and higher, with the gcc compiler from MinGW / MSYS, and with the gcc compiler from Cygwin.As developers build with other Win32 environments, their notes will beincluded here.”这个指南介绍了如何使用VC++6.0及更高版本以及gcc来build。
2、If you are using Microsoft Visual Studio 6.0, you will have to install the Platform SDK (PSDK) first.如果使用的是VC6.0,那么必须先安装PSDK3、If you are using any of the following environments, the PSDK download is not necessary as the required parts of the PSDK are included:- Microsoft Visual Studio 2002 or later.- Cygwin.- MinGW.使用的是这些环境的话,无需安装PSDK4、There are two ways to build Net-SNMP using Microsoft Visual C++. The first and easiest method is using Configure and nmake on the command line, and the second is using the Workspace files inside the interactive development environment.两种方式来用VC build Net-SNMP.第一种,也是最简单的方法,就是在命令行下使用Configure和nmake。
NET-SNMP开发记录
1、安装./configuremakemake install2、配置参数/文件只有适当的配置snmpd.conf文件,snmpd才能运行起来。
位置:可以在./configure的时候指定配置文件所在的位置,也可以用--with-persistent-directory="path"的命令行指定配置文件所在的位置。
文件的配置:配置文件对于net-snmp的运行十分重要,net-snmp中提供了一个EXAMPLE.conf。
可以在EXAMPLE.conf的基础上进行修改,需要修改的地方主要包括:1) com2sec设置可访问的IP地址,访问的口令以及分组# source communitycom2sec local localhost privatecom2sec mynetwork 10.8.0.0/16 private2)group设置安全用户名的组# sec.model group MyRWGroup v1 localgroup MyRWGroup v2c localgroup MyRWGroup usm localgroup MyROGroup v1 mynetworkgroup MyROGroup v2c mynetworkgroup MyROGroup usm mynetwork3)view可以对哪些MIB子树进行访问# incl/excl subtree maskview all included .14)access指定各个组对MIB子数的读写权限# context sec.model sec.level match read write notif access MyROGroup "" any noauth exact all none none access MyRWGroup "" any noauth exact all all none3、命令行在./configure ; make; make install之后在net-snmp/agent目录下会生成一系列的可执行文件。
Net-SNMP
Net-SNMP配置说明文档目录Linux环境下安装说明 (3)一安装 (3)二配置 (4)三启动 (4)四测试 (4)Windows(XP&2003)环境下安装说明 (5)一安装net-snmp-5.4.1-ssl-3.win32.exe (5)二注册为系统服务 (5)三安装ActivePerl-5.10.0.1003-MSWin32-x86-285500.msi,默认安装即可 (5)四新建SNMP用户 (5)五在添加删除程序中,选择添加windows组件,然后选中管理和监视工具,点击详细信息,选择简单网络管理协议。
安装过程需要使用XP安装光盘 (8)六安装informant-std-15.exe,按默认方式即可 (8)七停止系统snmp服务 (8)八修改crgs用户的密码 (10)九在系统管理工具的服务里重启net-snmp Agent服务,并将启动方式改为自动启动 10十测试 (10)FAQ (11)1.Windows2003系统中,执行到2.4步骤中,输入snmpconf –I 后系统提示版本错误,是怎么回事? (11)Linux环境下安装说明==支持Linux (kernels 2.6 to 1.3)==一安装1.解压安装包:2.进入解压目录:3.安装预处理稍等一会,出现提示,请直接按回车,直至回到默认输入状态。
4.编译稍等一会,即可完成编译5.安装二配置1.输入vi /usr/local/share/snmp/snmpd.conf写入数据:disk / 100000(注意有空格,该处作用是允许磁盘剩余空间数100M 低于此数将会有警告错误返回)保存退出;2.添加snmpv3用户,在当前输入:然后输入密码123456789.crgs,此处要求输入两次,两次密码为相同的密码。
三启动手动启动:开机自动启动:在/etc/rc.d/rc.local文件中最后添加一段/usr/local/sbin/snmpd&四测试执行如下命令,能够获得当前系统时间,即为成功。
Windows SNMP 2012 配置步骤配置
snmp 服务要想正确的配置并连上云监控,必须要有三个步骤:.开启snmp服务.对snmp服务配置.如果开启了windows 系统防护墙,要添加防火墙规则,允许外网访问snmp 服务。
snmp服务的开启进入Windows 桌面后,单击左下角的Windows 图标,进入开始桌面找到服务器管理器后,点击进去,进入服务器管理器窗口。
服务器管理器窗口中,点击添加角色和功能。
在弹出来的添加角色和功能向导对话框中,选择安装类型标签,右侧选择基于角色或基于功能的安装选项,选择下一步。
在服务器选择标签中,选择从服务器池中选择服务器选项,选择服务器,点击下一步。
点击功能标签,在右侧功能中选中SNMP服务和SNMP WMI 提供程序,向下拉动滑动条。
在功能标签中,右侧功能中选择远程服务器管理工具->功能管理工具->SNMP工具,点击下一步。
在确认标签右侧,可以看到我们需要安装的功能,点击安装。
snmp 的配置Snmp 服务安装完成后,就可以对snmp 进行配置了。
首先打开运行对话框。
右击左下角的Windows图标,点开后,单击运行选项,就进入运行对话框了。
在运行对话框的打开标签那填写services.msc,点击确定打开Windows服务界面。
在Windows服务界面中,找到SNMP Service,右击,选择属性,进入Windows的snmp服务配置界面。
在SNMP Service 的配置窗口中,你只需要切换到安全选项卡,按照以下的图示进行填写,这里的团体名称就是前边介绍过的SNMP v2c版本中的密码字符串,这里的public只是一个例子,你可以填写其它的字符串,随后在云监控中添加服务器时,选择2c协议,同时在Community输入框中填写这个团体名称即可。
另一个需要特别设置的地方是下边的授权主机,因为云监控目前的监测点IP 无法具体确定,建议选择接受来自任何主机的SNMP数据包。
如果选择接受来自这些主机的SNMP数据包,则在下边的指定主机中添加101.199.100.150,220.181.150.98,180.153.229.230,220.181.150.125, 103.28.11.237,103.28.10.244,103.28.10.245这几个IP,这是云监控的专用监控点,使得除此之外的其它服务器无法获取你的服务器监控信息(暂时不推荐用户指定IP 访问)配置完后点击确定保存。
linux和windows的SNMP配置方法
[root@ ]# rpm –ivh net-snmp-xxx.rpm
或者
[root@ ]#yum install net-snmp
(3)安装后打开默认的/etc/snmp/snmpd.conf 文件,更改如下配置:
1) 查找以下代码:
# source
1/4
然后重启 snmp 服务即可生效 2、 Linux 系统可以装 rpm 包或源码编译(如果你的系统已安装直接跳到第(3)步) (1)源码编译安装 net-snmp
[root@]# tar zxvf net-snmp-xxx.tar.tar [root@ ]# cd net-snmp-xxx [root@ net-snmp-xxx]# ./configure [root@ ]# make [root@ ]# make install (2)rpm 包安装 net-snmp(安装系统盘里可以找到)
将"read"字段改为 all.
修改后:access notConfigGroup "" any noauth exact all none none
3) 查找以下代码:
3/4
#view all included .1 80 将该行前面的"#"去掉. 保存关闭. 4) 运行/etc/init.d/snmpd start 命令运行 snmpd.或 service snmpd start. 5) 如果有防火墙,打开 UDP 161 端口。 最后运行 netstat -ln 查看 161 端口是否打开了. 使用 ntsysv,让 snmp 服务,每次开机自动运行。 排错 在 cacti 监控管理工作站上 1. 首先检查一下 rra/下面,有没有数据 2. snmpwalk -v 2c -c public ServerIP if 用来测试被控对象(serverIP)是否开启了 SNMP 服务 3. snmpwalk -v 2c ServerIP -c public .1.3.6.1.4.1.2021.10.1.3 查看被控端是否有 CPU 负载的数据返回 4. php /var/www/html/poller.php 用来测试 PHP 是否可以采集到数据。
在windows平台下编译net
在windows平台下编译net-snmp目录, windows, 源代码, 超链接, 程序分享到:新浪微博QQ空间开心网人人网在windows下编译net-snmp其实很简单,我用的是net-snmp5.2.1.2的版本。
只需把源码下的win32目录中的几个库的工程编译就行了。
但记住,把netsnmp.lib放在最后编译,要不然编译结果不一样,切记,切记。
然后再用编译出来的四个库文件:netsnmp.lib,netsnmpagent.lib,netsnmphelpers.lib,netsnmpmibs.lib,来编译netsnmp.dll。
注意还要加上wsock32.lib。
如果编译出错,提示跟VC默认的库有冲突,按提示在编译环境中用NODEFAULTLIB:XXX来去掉VC的缺省库文件。
下面介绍一下几个例子程序,例子源代码都可以通过net-snmp的帮助超链接连到其网站下载1.编译例子example-demon;#include <net-snmp/net-snmp-config.h>#include <net-snmp/net-snmp-includes.h>#include <net-snmp/agent/net-snmp-agent-includes.h>#include <signal.h>#include "nstAgentSubagentObject.h"static int keep_running;RETSIGTYPEstop_server(int a) {keep_running = 0;}intmain(int argc, char *argv[]){int agentx_subagent=0; /* change this if you want to be a SNMP master agent *//*为了编译成为主代理,这里设为0*/int background = 0; /* change this if you want to run in the background */int syslog = 0; /* change this if you want to use syslog *//* print log errors to syslog or stderr */if (syslog)snmp_enable_calllog();elsesnmp_enable_stderrlog();/* we're an agentx subagent? */if (agentx_subagent) {/* make us a agentx client. */netsnmp_ds_set_boolean(NETSNMP_DS_APPLICATION_ID, NETSNMP_DS_AGENT_ROLE, 1); }/* run in background, if requested */if (background && netsnmp_daemonize(1, !syslog))exit(1);/* initialize tcpip, if necessary */SOCK_STARTUP;/* initialize the agent library */init_agent("example-demon");/* initialize mib code here *//* mib code: init_nstAgentSubagentObject from nstAgentSubagentObject.C */init_nstAgentSubagentObject();/* initialize vacm/usm access control */if (!agentx_subagent) {void init_vacm_vars();/*---------------小修改一下---------------*/void init_usmUser();}/* example-demon will be used to read example-demon.conf files. *//*这里会读取一个为example-demon.conf 的配置文件--关键*/init_snmp("example-demon");/* If we're going to be a snmp master agent, initial the ports */if (!agentx_subagent)init_master_agent(); /* open the port to listen on (defaults to udp:161) *//* In case we recevie a request to stop (kill -TERM or kill -INT) */keep_running = 1;signal(SIGTERM, stop_server);signal(SIGINT, stop_server);snmp_log(LOG_INFO,"example-demon is up and running.\n");/* your main loop here... */while(keep_running) {/* if you use select(), see snmp_select_info() in snmp_api(3) *//* --- OR --- */agent_check_and_process(1); /* 0 == don't block */}/* at shutdown time */snmp_shutdown("example-demon");SOCK_CLEANUP;return 0;}这里都有很详细的注释,就不说明了。
Net-SNMP
Net-SNMPNet-SNMP配置说明文档目录Linux环境下安装说明 (3)一安装 (3)二配置 (4)三启动 (4)四测试 (4)Windows(XP&2003)环境下安装说明 (5)一安装net-snmp-5.4.1-ssl-3.win32.exe (5)二注册为系统服务 (5)三安装ActivePerl-5.10.0.1003-MSWin32-x86-285500.msi,默认安装即可 (5)四新建SNMP用户 (5)五在添加删除程序中,选择添加windows组件,然后选中管理和监视工具,点击详细信息,选择简单网络管理协议。
安装过程需要使用XP安装光盘 (8)六安装informant-std-15.exe,按默认方式即可 (8)七停止系统snmp服务 (8)八修改crgs用户的密码 (10)九在系统管理工具的服务里重启net-snmp Agent服务,并将启动方式改为自动启动 10十测试 (10)FAQ (11)1.Windows2003系统中,执行到2.4步骤中,输入snmpconf –I 后系统提示版本错误,是怎么回事? (11)Linux环境下安装说明==支持Linux (kernels 2.6 to 1.3)==一安装1.解压安装包:2.进入解压目录:3.安装预处理稍等一会,出现提示,请直接按回车,直至回到默认输入状态。
4.编译稍等一会,即可完成编译5.安装二配置1.输入vi /usr/local/share/snmp/snmpd.conf写入数据:disk / 100000(注意有空格,该处作用是允许磁盘剩余空间数100M 低于此数将会有警告错误返回)保存退出;2.添加snmpv3用户,在当前输入:然后输入密码123456789.crgs,此处要求输入两次,两次密码为相同的密码。
三启动手动启动:开机自动启动:在/etc/rc.d/rc.local文件中最后添加一段/usr/local/sbin/snmpd&四测试执行如下命令,能够获得当前系统时间,即为成功。
关于snmp与windows的实验报告
关于snmp与windows的实验报告一、实验目的1 了解并实践在windows下snmp的配置。
2 熟悉在windows 环境下snmp内部函数的调用方法。
3 对书中所给的关于snmp函数调用的例子进行调试。
二、实验步骤1 在windows 7 环境下安装并配置snmp 代理2 安装必备的软件V isual c++3 在Vc++环境下调用snmp内部函数。
4 对书中的例子调试并检验。
三、具体操作1 在windows 7 环境下安装并配置snmp 代理一、打开“控制面板”->“程序”,选择“打开或关闭windows功能”二、将简单网络管理协议(SNMP)以及WMI_SNMP勾选上,如下图所示:三、选中“计算机”,点击右键,选择“管理”,在左侧,选择“服务和应用程序”->“服务”,在右侧找到“SNMP Service”,双击选择。
四、在弹出的对话框中,选择“安全”选项卡,点击“添加”,在弹出的对话框中,社区名称填入任意字符串,点击“添加”,最后点击“应用”。
2 安装必备的软件V isual c++由于调试的过程中用到的头文件snmp.h mgmtapi.h 只有Vc++ 中才提供,所以需要安装Vc++。
具体安装过程不再详细介绍。
3 在Vc++ 环境下调用snmp内部函数。
书中例子的具体实现与检验结果:P180 例1#include "snmp.h"#include "stdio.h"#include "windows.h"typedef int(_stdcall *Ocmp)(AsnObjectIdentifier *,AsnObjectIdentifier * );void main(){int nResult;UINT dwA[]={1,3,6,1};UINT dwB[]={1,3,6,1};HINSTANCE lh;Ocmp myocmp;lh=LoadLibrary("snmpapi.dll");myocmp=(Ocmp)GetProcAddress(lh,"SnmpUtilOidCmp");AsnObjectIdentifier OidA={sizeof(dwA)/sizeof(UINT),dwA};AsnObjectIdentifier OidB={sizeof(dwB)/sizeof(UINT),dwB};nResult=(* myocmp)(&OidA,&OidB);printf("%d\n",nResult);FreeLibrary(lh);}运行结果:P180 例2#include "snmp.h"#include "stdio.h"#include "windows.h"typedef int(_stdcall *Ocmp)(AsnObjectIdentifier *,AsnObjectIdentifier * );void main(){int nResult;UINT dwA[]={1,3,6,2};UINT dwB[]={1,3,6,1};HINSTANCE lh;Ocmp myocmp;lh=LoadLibrary("snmpapi.dll");myocmp=(Ocmp)GetProcAddress(lh,"SnmpUtilOidCmp");AsnObjectIdentifier OidA={sizeof(dwA)/sizeof(UINT),dwA};AsnObjectIdentifier OidB={sizeof(dwB)/sizeof(UINT),dwB};nResult=(* myocmp)(&OidA,&OidB);printf("%d",nResult);FreeLibrary(lh);}运行结果:P180 例3#include "snmp.h"#include "stdio.h"#include "windows.h"typedef int(_stdcall *Ocmp)(AsnObjectIdentifier *,AsnObjectIdentifier * );void main(){int nResult;UINT dwA[]={1,3,6,1};UINT dwB[]={1,13,244,7634};HINSTANCE lh;Ocmp myocmp;lh=LoadLibrary("snmpapi.dll");myocmp=(Ocmp)GetProcAddress(lh,"SnmpUtilOidCmp");AsnObjectIdentifier OidA={sizeof(dwA)/sizeof(UINT),dwA};AsnObjectIdentifier OidB={sizeof(dwB)/sizeof(UINT),dwB};nResult=(* myocmp)(&OidA,&OidB);printf("%d\n",nResult);FreeLibrary(lh);}P180 例4#include "snmp.h"#include "stdio.h"#include "windows.h"typedef int(_stdcall *Ocmp)(AsnObjectIdentifier *,AsnObjectIdentifier * );void main(){int nResult;UINT dwA[]={1,3,6,2,1};UINT dwB[]={1,3,6,1};HINSTANCE lh;Ocmp myocmp;lh=LoadLibrary("snmpapi.dll");myocmp=(Ocmp)GetProcAddress(lh,"SnmpUtilOidCmp");AsnObjectIdentifier OidA={sizeof(dwA)/sizeof(UINT),dwA};AsnObjectIdentifier OidB={sizeof(dwB)/sizeof(UINT),dwB};nResult=(* myocmp)(&OidA,&OidB);printf("%d\n",nResult);FreeLibrary(lh);}运行结果:#include "snmp.h"#include "stdio.h"#include "windows.h"typedef int(_stdcall *Ocmp)(AsnObjectIdentifier *,AsnObjectIdentifier * );void main(){int nResult;UINT dwA[]={1,3,6};UINT dwB[]={1,3,6,1,2,1,1};HINSTANCE lh;Ocmp myocmp;lh=LoadLibrary("snmpapi.dll");myocmp=(Ocmp)GetProcAddress(lh,"SnmpUtilOidCmp");AsnObjectIdentifier OidA={sizeof(dwA)/sizeof(UINT),dwA};AsnObjectIdentifier OidB={sizeof(dwB)/sizeof(UINT),dwB};nResult=(* myocmp)(&OidA,&OidB);printf("%d",nResult);FreeLibrary(lh);}运行结果:p180 例6#include "snmp.h"#include "stdio.h"#include "windows.h"typedef int(_stdcall *Ocmp)(AsnObjectIdentifier *,AsnObjectIdentifier*,UINT);void main(){int nResult;UINT dwA[]={1,3,6,2};UINT dwB[]={1,3,6,1};HINSTANCE lh;Ocmp myocmp;lh=LoadLibrary("snmpapi.dll");myocmp=(Ocmp)GetProcAddress(lh,"SnmpUtilOidCmp");AsnObjectIdentifier OidA={sizeof(dwA)/sizeof(UINT),dwA};AsnObjectIdentifier OidB={sizeof(dwB)/sizeof(UINT),dwB};nResult=(* myocmp)(&OidA,&OidB,3);printf("%d\n",nResult);FreeLibrary(lh);}运行结果:P202 例1#include "mgmtapi.h"#include "windows.h"#include "stdio.h"typedef int(_stdcall *sto)(LPSTR,AsnObjectIdentifier *);void main(){HINSTANCE lh;sto mysto;lh=LoadLibrary("mgmtapi.dll");mysto=(sto)GetProcAddress(lh,"SnmpMgrStrToOid");AsnObjectIdentifier oid;(* mysto)("1.1",&oid);printf("%d",oid.idLength);FreeLibrary(lh);}运行结果:p202 例2#include "mgmtapi.h"#include "windows.h"#include "stdio.h"typedef int(_stdcall *sto)(LPSTR,AsnObjectIdentifier *); void main(){HINSTANCE lh;sto mysto;lh=LoadLibrary("mgmtapi.dll");mysto=(sto)GetProcAddress(lh,"SnmpMgrStrToOid");AsnObjectIdentifier oid;(* mysto)("system.sysName",&oid);printf("%d",oid.idLength);FreeLibrary(lh);}运行结果:。
Windows下使用net-snmp所遇问题及解决
Windows下使用net-snmp-5.4.1扩展代理所遇问题及解决SNMP代理的开发包有很多,本人选择了net-snmp-5.4.1,开发过程中所遇到的文档及帮助文件多是unix或linux平台的,因此步步维艰,遇到了不少问题。
本人扩展代理的方法是将自定义的mib文件编译到snmpd代理中,编译mib文件的工具是mib2c。
以下所列的问题及解决方法有些是共性的,有些是特定条件下产生的,仅供参考。
1)通过vc运行代理后,DOS窗口一闪就关闭,通过命令行窗口运行,提示信息:Error opening specified endpoint ""Server Exiting with code 1解决:windows系统的snmp服务需要关闭,因为UDP端口已经被占用。
代理默认的端口都是162,也可以通过配置进行修改。
2)启动snmpd代理如下C:\usr\bin>snmpd -f -Le –d,出现以下内容:netsnmp_assert x failed C:\net-snmp-5.4.1\net-snmp-5.4.1\agent\agent_registry.c: 535netsnmp_assert x failed C:\net-snmp-5.4.1\net-snmp-5.4.1\agent\agent_registry.c: 535netsnmp_assert x failed C:\net-snmp-5.4.1\net-snmp-5.4.1\agent\agent_registry.c: 535NET-SNMP version 5.4.1但不影响使用。
解决:这是开发包中的一个bug,agent_registry.c中第535行代码存在问题,官方补丁代码方法:a) 将\agent\agent_registry.c文件中从第535行netsnmp_assert(!"registration != duplicate"); /* always false */ 修改为:if (new_sub->namelen != 1) /* ignore root OID dups */netsnmp_assert(!"registration != duplicate"); /* always false */ 也就是加上一个是否为根节点OID的判断。
各系统snmp安装及配置(windows,linux,网络设备)
一、Cisco交换机、路由器安装配置1.telnet连接cisco网络设备2.进入特权模式Router> enableRouter> password (输入密码)3.进入全局模式Router#conf t4.配置snmp!配置SNMP只读团体public,主要用于数据采集Router(config)# snmp-server community public RO!配置SNMP只读团体public,主要用于设备操作(如开启关闭端口)Router(config)# snmp-server community public RW配置开启snmp trap 功能Router(config)# snmp-server enable traps!配置SNMP trap 目的地址,主要用于将trap上报到网管服务器Router(config)# snmp-server host 172.18.162.145 traps public配置界面如下图所示:二、华为交换机、路由器安装配置1.telnet x.x.x.x2.super 进入最高权限3.system-view 进入系统视图4.开启SNMP服务!配置开启SNMP服务snmp-agent5.配置SNMP团体!配置SNMP只读团体,主要用于数据采集snmp-agent community read srrc!配置SNMP读写团体,主要用于设备操作(如开启关闭端口)snmp-agent community write srrcmanager6.配置SNMP版本!设置支持的SNMP版本snmp-agent sys-info version all三、Windows xp snmp安装配置安装snmp1.请依次单击“开始”、“控制面板”,双击“添加或删除程序”,然后单击“添加/删除Windows组件”。
2.在“组件”中,单击“管理和监视工具”(但是请不要选中或清除其复选框),然后单击“详细信息”。
net-snmp安装配置手册
NET-SNMP安装配置手册2008.3.11张兵Aaron Cheung移动互联网事业部第四开发部东软集团(成都)有限公司Address:成都都江堰市青城山东软大道1号东软软件园B5楼Postcode:611844QQ:375627443Email:zhang.bing@Gmail:zhangcqu@目录第1章 net-snmp安装及配置...................................................................................................1-11.1 安装....................................................................................................................................1-11.2 设置net-snmp自启动..........................................................................................................1-31.3 设置环境变量.....................................................................................................................1-3第2章 net-snmp测试..............................................................................................................2-32.1 本地通过localhost测试.......................................................................................................2-32.2 本地通过IP测试..................................................................................................................2-42.3 远程通过IP测试..................................................................................................................2-5第3章 snmpd.conf详解..........................................................................................................3-63.1 通道控制配置.....................................................................................................................3-73.1.1 定义安全体名称.......................................................................................................3-73.1.2 定义安全组..............................................................................................................3-73.1.3 定义视图..................................................................................................................3-83.1.4 向安全组授权相应的视图.........................................................................................3-83.2 系统联系人信息..................................................................................................................3-93.3 进程检查...........................................................................................................................3-103.4 可执行脚本.......................................................................................................................3-113.5 磁盘检查...........................................................................................................................3-123.6 负载均衡检查...................................................................................................................3-133.7 可扩展部分.......................................................................................................................3-143.8 通过控制...........................................................................................................................3-153.9 其它..................................................................................................................................3-16第4章 net-snmp指令............................................................................................................4-164.1 snmpget...........................................................................................................................4-164.2 snmpwalk.........................................................................................................................4-164.3 snmpconf.........................................................................................................................4-164.4 snmpd..............................................................................................................................4-174.5 snmpgetnext....................................................................................................................4-174.6 snmpset...........................................................................................................................4-174.7 snmpbulkget.....................................................................................................................4-174.8 snmptrap..........................................................................................................................4-174.9 snmptrapd........................................................................................................................4-174.10 snmpinform....................................................................................................................4-174.11 snmptable......................................................................................................................4-174.12 snmpstatus.....................................................................................................................4-184.13 snmpbulkwalk................................................................................................................4-184.14 snmpdelta......................................................................................................................4-184.15 snmptest........................................................................................................................4-184.16 snmptranslate................................................................................................................4-184.17 snmpusm.......................................................................................................................4-184.18 snmpvacm......................................................................................................................4-184.19 snmpdf...........................................................................................................................4-18第5章 JAVA开发..................................................................................................................5-185.1 NET-SNMP采集示例程序(Java)..................................................................................5-185.2 NET-SNMP主动发送示例程序(Java)..........................................................................5-205.3 运行结果...........................................................................................................................5-21第6章 Linux常用OID............................................................................................................6-226.1 CPU.................................................................................................................................6-226.2 内存..................................................................................................................................6-226.3 磁盘..................................................................................................................................6-236.4 示例..................................................................................................................................6-23第7章 snmpd.conf示例配置.................................................................................................7-23图目录图1-1 解压net-snmp-5.3.2.tar.gz...........................................................................................1-1图1-2 进入解压后的目录.......................................................................................................1-1图1-3 configure命令及参数...................................................................................................1-1图1-4 configure摘要..............................................................................................................1-2图1-5 编译及安装命令...........................................................................................................1-2图1-6 添加snmpd.conf文件...................................................................................................1-2图1-7 snmpd.conf原文件内容................................................................................................1-2图1-8 snmpd.conf修改后文件内容........................................................................................1-3图1-9 net-snmp自启动代码...................................................................................................1-3图1-10 net-snmp环境变量.....................................................................................................1-3图2-1 本地通过localhost测试................................................................................................2-3图2-2 本地通过locahost测试后的部分显示结果.....................................................................2-4图2-3 本地通过IP测试...........................................................................................................2-4图2-4 本地通过IP测试...........................................................................................................2-5图2-5 远程通过IP测试...........................................................................................................2-6图3-1 snmpd.conf定义安全体名称........................................................................................3-7图3-2 snmpd.conf定义安全组................................................................................................3-7图3-3 snmpd.conf定义安全组属性表.....................................................................................3-7图3-4 snmpd.conf定义视图...................................................................................................3-8图3-5 snmpd.conf向安全组授权的相应视图..........................................................................3-8图3-6 系统联系人信息...........................................................................................................3-9图3-7 进程检查....................................................................................................................3-10图3-8 可执行脚本................................................................................................................3-11图3-9 磁盘检查....................................................................................................................3-12图3-10 负载均衡检查..........................................................................................................3-13图3-11 可扩展部分..............................................................................................................3-14图3-12 通过控制..................................................................................................................3-15图3-13 其它.........................................................................................................................3-16图5-1 程序执行结果............................................................................................................5-21表目录表3-1 snmpd.conf定义安全体名称属性表..............................................................................3-7表3-2 snmpd.conf定义视图的属性表.....................................................................................3-8表3-3 snmpd.conf向安全组授权的相应视图..........................................................................3-8表6-1 CPU常用OID.............................................................................................................6-22表6-2 内存常用OID.............................................................................................................6-22表6-3 磁盘常用OID.............................................................................................................6-23第1章 net-snmp安装及配置1.1 安装步骤1: 解压图1-1解压net-snmp-5.3.2.tar.gz 步骤2: configure1)进入源文件目录图1-2进入解压后的目录2)configure图1-3configure命令及参数prefix:net-snmp将要安装的路径enable-mfd-rewrites:允许用新的MFD重写可用的mid模块with-default-snmp-version:默认的SNMP版本with-sys-contact:可以配置该设备的联系人with-sys-location:该设备的位置with-logfile:日志文件路径with-persistent-directory:不变数据存储目录3)configure摘要步骤3: 编译并安装步骤4: 配置snmpd.conf1)将EXAMPLE.conf文件复制到/usr/local/net-snmp/share/snmp,并重命名为snmpd.conf2)将snmpd.conf中如图1-7的内容修改为如图1-8所示图1-7snmpd.conf原文件内容图1-8snmpd.conf修改后文件内容【注意】在编辑snmpd.conf可使用空格,但不能使用TAB键,否则会出现错误1.2 设置net-snmp自启动在/etc/rc.local文件的末尾加上如图1-9所示代码图1-9net-snmp自启动代码1.3 设置环境变量在/etc/profile文件的export命令前加上如图1-10所示代码图1-10net-snmp环境变量第2章 net-snmp测试在配置net-snmp的时候,配置了三种情况:本地通过localhost访问、本地通过IP访问、远程通过IP测试。
在Windows环境下编译Net-Snmp
在Windows环境下编译NET-SNMP的具体实现步骤备注:在windows环境下搭建NET-SNMP开发环境时,这篇文章给我了一些实质性的帮助,先整理一下,将其与大家分享。
一、准备工作1、安装Microsoft Visual Studio 2005,其中Visual C++为必选组件2、安装Active Perl解析器至C:\usr目录下该步骤必须执行,否则在后期执行配置操作时,会提示没有安装perl解析器的错误,从而无法自动配置。
二、编译NET-SNMP源文件(基于readme.win32中的Microsoft Visual C++ - Workspace - Building部分)1、配置默认安装路径,打开net-snmp-5.1.3\win32\net-snmp\net-snmp-config.h,将第8行改为#define INSTALL_BASE "C:/usr"在net-snmp-config.h文件中,所有的路径都是使用UNIX下的/符号,如果将其改为Windows下的\符号的话,反而会在后期配置时出现路径错误。
2、在Visual Studio 2005中打开net-snmp-5.1.3\win32\win32.dsw,点击“全部都是”转换工作空间。
3、单击菜单栏的“生成”下的“配置管理器”,将活动解决方案配置从Debug改成release。
此处也可以不修改,但是在后面的安装过程中,需要加入“-debug”参数。
(后续内容以不修改为例)。
4、在右侧解决方案资源管理器中,依次对libagent、libhelpers、libnetsnmptrapd、snmplib、netsnmpmibs这五个项目单击鼠标右键,选择“重新生成”。
5、单击菜单栏的“生成”下的“生成解决方案”。
6、单击菜单栏的“生成”下的“配置管理器”,在“项目上下文中”[color=red]去掉[/color]对libagent、libhelpers、libnetsnmptrapd、snmplib、netsnmpmibs这五个项目的选择,其余不变。
WindowsSNMP2012配置步骤配置概论
snmp 服务要想正确的配置并连上云监控,必须要有三个步骤:.开启snmp服务.对snmp服务配置.如果开启了windows 系统防护墙,要添加防火墙规则,允许外网访问snmp 服务。
snmp服务的开启进入Windows 桌面后,单击左下角的Windows 图标,进入开始桌面找到服务器管理器后,点击进去,进入服务器管理器窗口。
服务器管理器窗口中,点击添加角色和功能。
在弹出来的添加角色和功能向导对话框中,选择安装类型标签,右侧选择基于角色或基于功能的安装选项,选择下一步。
在服务器选择标签中,选择从服务器池中选择服务器选项,选择服务器,点击下一步。
点击功能标签,在右侧功能中选中SNMP服务和SNMP WMI 提供程序,向下拉动滑动条。
在功能标签中,右侧功能中选择远程服务器管理工具->功能管理工具->SNMP工具,点击下一步。
在确认标签右侧,可以看到我们需要安装的功能,点击安装。
snmp 的配置Snmp 服务安装完成后,就可以对snmp 进行配置了。
首先打开运行对话框。
右击左下角的Windows图标,点开后,单击运行选项,就进入运行对话框了。
在运行对话框的打开标签那填写services.msc,点击确定打开Windows服务界面。
在Windows服务界面中,找到SNMP Service,右击,选择属性,进入Windows的snmp服务配置界面。
在SNMP Service 的配置窗口中,你只需要切换到安全选项卡,按照以下的图示进行填写,这里的团体名称就是前边介绍过的SNMP v2c版本中的密码字符串,这里的public只是一个例子,你可以填写其它的字符串,随后在云监控中添加服务器时,选择2c协议,同时在Community输入框中填写这个团体名称即可。
另一个需要特别设置的地方是下边的授权主机,因为云监控目前的监测点IP 无法具体确定,建议选择接受来自任何主机的SNMP数据包。
如果选择接受来自这些主机的SNMP数据包,则在下边的指定主机中添加101.199.100.150,220.181.150.98,180.153.229.230,220.181.150.125,103.28.11.237,103.28.10.244,103.28.10.245这几个IP,这是云监控的专用监控点,使得除此之外的其它服务器无法获取你的服务器监控信息(暂时不推荐用户指定IP 访问)配置完后点击确定保存。
windows下用NET-SNMP接受并处理SNMPTrapNotification
windows下用NET-SNMP接受并处理SNMP Trap/NotificationNET-SNMP 提供了两个工具来发送和接收trap,* 用NET-SNMP如何发送trap?snmptrap发送trap,具体用法:snmptrap -v 1 -c public -d localhost enterprise-oid agent trap-type specific-type uptime [OID TYPE VALUE]agnet : 发送方地址trap-type : 0 , coldstart; 1, warstart;2, linkdown; 3, linkup; 4,authenticationfailure;5,neighbor loss,6,enterprise specific.具体例子:snmptrap -v 1 -c public -d localhost DAP-2590-v111:dap2590 192.168.0.25 1 0DAP-2590-v111:wirelessLanIfDescs mytest* 用NET-SNMP如何捕捉trap?** 怎样让net-snmp收到trap?C:/Program Files/Net-SNMP/usr/bin>snmptrapd -f -Le -d执行之后NET-SNMP开始接收trap,注意这是debug模式,会将收到的trap包内容打印出。
** 碰到错误couldn't open udp:162 -- errno 2 ("No such file or directory")?碰到此错误很可能是有程序占用了windows的SNMP接受端口(162)。
用下面命令来找出占用此端口的进程。
netstat -ano|find "162"如果有输出则最后一个数字是进程号。
从微软免费下一个Process Explorer,找出占用该端口的进程,决定是否停掉。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
int
handle_probaLocation(netsnmp_mib_handler *handler,
3.对read-only节点的代码修改
以probaCompName节点为例:
int
handle_probaCompName(netsnmp_mib_handler *handler,
netsnmp_handler_registration *reginfo,
PROBA-MIB DEFINITIONS::=BEGIN
IMPORTS
enterprises,OBJECT-TYPE,Integer32,TimeTicks
FROM SNMPv2-SMI
TEXTUAL-CONVENTION, DisplayString FROM SNMPv2-TC;
snmp_log(LOG_ERR, "unknown mode (%d) in handle_probaCompName\n", reqinfo->mode );
return SNMP_ERR_GENERR;
}
return SNMP_ERR_NOERROR;
3.安装
运行win32目录下的install-net-snmp.bat批处理文件,会把上一步编译生成的文件及相关的头文件等拷贝到c:\usr目录。
4.配置
在c:\usr\etc\snmp目录添加配置文件snmpd.conf,添加如下内容:
rocommunity public
::={baseinfo 3}
END
三.Agent端开发
在上一步中定义好MIB的结构后,现在就开始编码实现定义好的节点。net-snmp提供了一个MIB2C工具,利用它可以根据MIB的定义和配置文件自动生成*.c和*.h模板文件,然后只需要在相应位置添加对节点数据的处理就可以了。
netsnmp_agent_request_info *reqinfo,
netsnmp_request_info *requests)
{
/* We are never called for a GETNEXT if it's registered as a
win32.dsw 编译lib文件和工具文件如snmpget,snmpset的工程
win32sdk.dsw 类似于win32.dsw,区别在于:需要安装Platform SDK。如果需要agent能支持 interfaces等一些高级功能,必须用此工程编译。XPSP2 Platform SDK的下载地址
-- proba node
proba OBJECT IDENTIFIER::={enterprises 8888}
baseinfo OBJECT IDENTIFIER ::= { proba 1 }
-- company name
probaCompName OBJECT-TYPE
strlen("proba")/* XXX: the length of the data in bytes */);
break;
default:
/* we should never get here, so this is a really bad error */
/msdownload/platformsdk/sdkupdate/XPSP2FULLInstall.htm
只需要安装Core SDK就可以了,安装完后需要从开始菜单中Register一下。
注意编译的顺序,最好先编译libsdll.dsw,把netsnmp.lib,netsnmpagent.lib,netsnmphelpers.lib,netsnmpmibs.lib,netsnmptrapd.lib文件先编译好,再编译win32sdk.dsw中的项目。
如果成功,会生成makefile文件
cmd>nmake
cmd>nmake install
这时,会将net-snmp相关的perl模块编译好并安装到c:\perl\site\lib目录下。
注:有时候运行nmake会失败,把其它机器上安装好的c:\perl\site\lib目录下的文件拷贝过来,也可以运行。
一.安装及配置SNMP(win32环境)
1.下载
从下载到最新的net-snmp(目前最新版本5.4.1)net-snmp-5.4.1.zip
2.解压编译
解压后,可以看到有一个win32目录,里面存放的是和win32环境相关的文件,有3个dsw:
libsdll.dsw 编译lib文件和dll文件的工程
::={baseinfo 1}
-- company location
probaLocation OBJECT-TYPE
SYNTAX DisplayString (SIZE (0..255))
ACCESS read-write
2.用mib2c生成模板源代码
运行以下命令:
cmd>mib2c -c mib2c.scalar.conf baseinfo
会按照模板配置文件mib2c.scalar.conf生成baseinfo.h和baseinfo.c文件。注意:baseinfo是上一步在MIB中定义的proba下的一个节点。在baseinfo.c中有很多/* XXX 注释*/的地方,这些地方是需要我们修改,填上我们对节点数据的处理代码。
1.配置net-snmp的perl模块
用使用mib2c工具,需要perl模块的支持,可以从/ActivePerl下载,目前最新版是5.8.8
在net-snmp源文件的perl目录下,运行以下命令:
cmd>perl makefile.pl
switch(reqinfo->mode) {
case MODE_GET:
snmp_set_var_typed_value(requests->requestvb, ASN_OCTET_STR,
(u_char *)"proba" /* XXX: a pointer to the scalar's data */,
cmd> snmpset -v2c -c private localhost sysContact.0 = piyeyong
如果正常,会的到取得和设置成功的提示,出错会给出错误提示。
二.MIB文件编写
MIB文件会存放于C:\usr\share\snmp\mibs\目录下,是*.txt,纯文本文件,可以直接打开查看和更改。RFC1213中定义的MIB节点信息的定义存放与RFC1213-MIB.txt,这些节点是比较重要的,会经常用到。
void
init_baseinfo(void)
{
memset(location, '\0', sizeof location);
memcpy(location, "beijing", sizeof "beijing");
。。。。。。
probaEmployeeNumber OBJECT-TYPE
SYNTAX INTEGER
ቤተ መጻሕፍቲ ባይዱ
ACCESS read-only
STATUS mandatory
DESCRIPTION "The number of employee"
rwcommunity private
它表示的含义是,启动agent服务后,通过public共同体是只读的,private共同体可读也可写。
在命令行运行如下命令,将snmp注册为windows的服务:
cmd>”C:\usr\bin\snmpd.exe” –register -Lf "C:/usr/log/snmpd.log"
如果要扩展MIB,应该定义在1.3.6.1.4.1(.dod.internet.private.enterprises)子树下。自定义MIB的节点,只需要描述该节点的SYNTAX,ACCESS,STATUS,DESCRIPTION等属性及它属于父节点的第几个子节点即可。如下所示,为扩展MIB的一个简单例子:
"instance", as it's "magically" handled for us. */
/* a instance handler also only hands us one request at a time, so
we don't need to loop over a list of requests; we'll only get one. */
注册成功后可以在【控制面板】->【管理工具】->【服务】中看到刚注册的服务,服务名是:net-snmp agent
5.运行
cmd>net start “net-snmp agent”
如果正常,会得到启动服务成功的提示
6.验证
cmd>snmpget –v2c –c public localhost 1.3.6.1.2.1.1.5.0
}
从上面的代码看出,只需在两处/* XXX 注释 */的代码处填上这个节点的数据即可,管理站在执行get命令时这个值会返回给管理站。
4.对read-write节点的代码修改
以probaLocation节点为例:
static char location[256];
SYNTAX DisplayString (SIZE (0..255))