windows 下怎样利用NET-SNMP 发送和接收trap
NET-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,authentication failure;5,neighbor loss,6,enterprise specific.
具体例子:
snmptrap -v 1 -c public -d localhost DAP-2590-v111:dap2590 192.168.0.25 1 0 DAP-2590-v111:wirelessLanIfDesc
s 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,找出占用该端口的进程,决定是否停掉。
** 碰到错误 Warning: no access control information configured. This receiver will *NOT* accept any incoming notifications.
没有设定访问控制的情况下NET-SNMP对所有的进入trap都丢掉。因为一个snmp manager可能收到大量的trap而其中只有一小部分是真正需要处理的。具体设置可以通过net-snmp安装目录下的bin/snmpconf.bat来实现(用此方法需要保证计算机上已安装ActivePerl);或者参照docs/Net-SNMP.chm->configuratoin->snmptrapd.conf->Access Control中的描述来手工修改。
**举例,最简单的设定的步骤(对所有的都不丢):
1.建一个snmptrapd.conf并在此文件中加入下面这行配置。
disableAuthorization yes
2. 在运行snmptrapd的时候加入读取配置文件的参数。e.g.
C:/Program Files/Net-SNMP/usr/bin>snmptrapd -c "C:/Program Files/Net-SNMP/usr/bin/snmptrapd.conf" -f -Le -d
现在收到trap之后,会发现消息已经被尽可能地解开。
* 如何调用其他windows程序来处理net-snmp捕捉到的trap?
1.在上面生成的文件中,加入下面配置
traphandle default <program>
**举例:
编写下面批处理文件test.bat:
@echo off
echo. >> c:/temp/log.txt
echo %date% %time% >> c:/temp/log.txt
set /P host=%=%
set /P ip=%=%
set /P oid=%=%
set /P val=%=%
echo TRAP: host=%host%; ip=%ip%; %oid% = %val%; >> c:/temp/log.txt
然后在snmptrapd.conf中加入
traphandle default c:/temp/test.bat
那么net-snmp在收到trap时会执行test.bat,打开c:/temp/log.txt会发现有记录在内
参考地址:http://blog.csdn.net/vastsmile/archive/2009/09/09/4535128.aspx
windows 下怎样利用NET-SNMP 发送和接收trap相关推荐
- Windows 下 C++ 利用 OpenCV glob 函数获取文件夹下所有文件绝对路径
绪论 本文记录 Windows 下 C++ 利用 OpenCv glob 函数得到 文件夹下所有文件的绝对路径(含文件名).本文还含有 std::string::find()等函数的记录.如果是 Py ...
- Windows下企业微信机器人定时发送消息
Windows下企业微信机器人定时发送消息提醒(小白篇) - 简书 Windows terminal使用curl出现错误 - 简书 $url = "https://qyapi.weixin. ...
- docker安装redis提示没有日记写入权限_对 Redis 在 Windows 下的利用方式思考
我写的文章永远都是那么的又臭又长又菜. 前言 上次写了一篇有关 SSRF 打 Redis 主从的文章,居然被人喷了!!!说我根本就没有复现过张嘴就来???我没有理会,然后又有朋友在群问,Redis 在 ...
- cygwin中写c语言程序,在windows下怎么利用Cygwin进行编程
Windows下使用C语言+嵌入SQL实现DB2开发 Cygwin,gcc的介绍和安装在前面的文章有将过,请参考 在Windows中使用Cygwin环境下的gcc编译器编译Informix ESQ/C ...
- windows下定时利用bat脚本实现ftp上传和下载
前言: 工作中可能会遇到以下情况,利用windows作为中转,来实现两台linux服务器的文件传输. 实现步骤: 1.FTP上传和下载的bat脚本. 脚本分为两部分:可执行bat脚本和ftp命令文件: ...
- windows下python利用f2py调用Fortran
目录 1.运行环境 2.测试实例 3.参考文章 Fortran(Formula Translation)是世界上第一个被正式推广使用的高级语言,其目前仍然是数值计算领域最重要的编程语言之一,虽然有ju ...
- 用vbs往服务器发送文件,[转] Windows 下命令行/VBS脚本,发送带附件邮件.
利用VBScript发送邮件,以前从网上找的代码,不知原来的出处了.也不知作者是何人-.. 挺有用的脚本,我就一直在使用这个脚本来发邮件,还可以带附件.放在这里做个备份,免得到时又找不到了. 目前我就 ...
- php 获取cpu,Windows下如何利用PHP获取服务器的CPU和内存参数状态信息
通过生成vbs脚本获取CPU和内存信息. class SystemInfoWindows { /** * 判断指定路径下指定文件是否存在,如不存在则创建 * @param string $fileNa ...
- windows 串口编程 c语言,windows下C语言版串口发送程序(基于VS2017)
#include "tchar.h" #include int main() { /*****************************打开串口*************** ...
最新文章
- 使用mybatis一次性添加多条数据 在oracle 数据库上
- windows 解决 Go下载包失败 设置代理
- Fragment向ChildFragment传值
- 字符串查找KMP算法(转)
- jquery在线预览PDF文件,打开PDF文件
- Java命名规范(建议收藏)
- python访问webservice接口
- Linux下MongoDB服务安装
- 服务器一定要改默认端口
- 好东西再安利一遍!!
- PX4(Pixhawk)和Audupilot(APM)的区别与联系
- 微信扫一扫打印照片的原理以及实现过程(持续更新中)
- 应试教育——人性的扼杀
- python是什么和c++是什么区别_编程c++和python的区别
- 小说作者推荐:张廉合集
- 【2018-CCPC青岛网赛】 HDU - 6441 Find Integer
- MATLAB中的偏最小二乘回归(PLSR)和主成分回归(PCR)
- Java 根据高德地图获取经纬度坐标
- 在Vue.data已定义的变量,运行时却找不到变量
- 前端要学多久才能去工作?具备什么技能?
热门文章
- php加载不了图片不显示,图片显示不出来,但是数据库里有显示
- 关于for循环里边是否可以用return语句
- mysql union join_MySQL 超新手入门(5) JOIN 与 UNION 查询
- 网络相关之TCP(有趣的对话)
- 飞花的糖果_JAVA
- 顺序表应用4-2:元素位置互换之逆置算法(数据改进)
- 【Linux】25.ubuntu使用 nethogs 监测网络流量情况
- 采用opencv_cascadetrain进行训练的步骤及注意事项
- Vue.js 组件基础
- 从零开始学习jQuery (八) 插播:jQuery实施方案