必威体育Betway必威体育官网
当前位置:首页 > IT技术

snmp trap安装配置

时间:2019-05-30 20:42:07来源:IT技术作者:seo实验室小编阅读:98次「手机版」
 

snmptrap

1 环境

ubuntu 16.04

2. 安装

sudo apt-get install snmptrapd

3. 配置

备注:

配置文件路径, /etc/snmp/snmptrapd.conf

在snmpwalk介绍及其用法一文中,介绍过net-snmp的snmpwalk的用法,殊不知,net-snmp还有trap的命令程序,可以用来测试snmp的trap方法(包括inform方法)。这些命令程序是: snmptrap、snmpinform和snmptrapd。其中:

snmptrap:可以模拟snmp agent发送一个trap到snmp管理端(一般称为网管,snmp manager或snmp client);

snmpinform:可以模拟snmp agent发送一个inform request到snmp管理端(Trap是发送给SNMP管理者的通知网络状况等的警告消息,而Inform是需要SNMP管理者确认接收的Trap。与Inform 相比较,Trap通知方式为不可靠传输,因为snmp管理端在收到一条Trap通知后无需回复任何确认信息,所以snmp agent无法知道Trap通知是否已经被snmp管理端正确接收);

snmptrapd:一个模拟snmp管理端接收trap/inform通知的程序;

由上可见,通过上述3个命令程序,我们可以研究snmp的trap行为及其报文,如果你正在开发snmp agent的trap功能但又没有snmp管理端,这3个程序则可帮上你的大忙。下面详细介绍这3个命令程序的具体用法。

snmptrapd的配置及其使用

snmptrapd.conf文件

跟snmp agent一样,snmptrapd也需要一个配置文件才能运行,否则会提示不能接收trap的信息。snmptrapd所需的配置文件名称为:snmptrapd.conf,安装net-snmp后,默认是没有这个配置文件的,因此需要新建此文件。snmptrapd.conf文件可放在net-snmp的安装路径下,也可放在其它路径中,但需要在启动运行时指定该文件。建立后,添加如下文件内容

authCommunity log,execute,net public

上面语句指明以“public”为“community”请求的snmp “notification”允许的操作[见参考资料2]。上面添加的是比较简单的配置,但可使snmptrapd程序运行起来并正确接收trap包。

服务器运行

sudo snmptrapd -d -f -Lo

上面命令中的选项表示:

-C : 表示不使用net-snmp默认路径下的配置文件snmptrapd.conf;

-c : 指定snmptrapd.conf文件;

-d : 显示收到和发送的数据报,通过这个选项可以看到数据报文;

-f : 默认情况下,snmptrapd是在后台中运行的,加上这个选项,表示在前台运行;

-L : 指定日志记录在哪里,后面的o表示直接输出到屏幕上,如果是跟着f表示日志记录到指定的文件中;

可通过snmptrapd -h查看命令帮助了解该命令的使用。

snmptrap的使用方法

snmptrap可模拟发送不同snmp协议版本的trap包。各协议版本的snmptrap使用方法略有不同。

客户端运行

发送V1版本trap报文的方法

sudo snmptrap -v1 -c public 10.10.12.219 1.3.6.1.4.1.1 10.10.12.219 2 3 1000 1.3.6.1.9.9.44.1.2.1 i 12 1.3.4.1.2.3.1 s test_snmptrap

上面指令各项参数的意思分别为:

snmptrap

-v1

-c public

10.10.12.219

1.3.6.1.4.1.1

10.10.12.219

2

3

1000

命令

Snmp协议版本

共同体

Snmp管理端IP 

Enterprise-OID

Snmp代理IP

Trap类型

Trap特征码

uptime

1.3.6.1.9.9.44.1.2.1

I

12

12 1.3.4.1.2.3.1

s

test_snmptrap

被发送参数的OID

数据类型

数据值

被发送参数的OID

数据类型

数据值

上面中,snmptrapd和snmptrap都在虚拟Ubuntu中执行的,所以snmp管理端IP和snmp代理IP一样。执行后,在执行snmptrapd的窗口中可接收到数据,如下:

04 01 01 40 04 0A 0A 0C DB 02 01 02 .+…..@……..

0032: 02 01 03 43 02 03 E8 30 29 30 0E 06 09 2B 06 01 …C…0)0…+..

0048: 09 09 2C 01 02 01 02 01 0C 30 17 06 06 2B 04 01 ..,……0…+..

0064: 02 03 01 04 0D 74 65 73 74 5F 73 6E 6D 70 74 72 …..test_snmptr

0080: 61 70 ap

2013-03-23 17:44:32 ubuntu.local [10.10.12.219] (via UDP: [10.10.12.219]:52930) TRAP, SNMP v1, community public

SNMPv2-SMI::enterprises.1 Link Down Trap (3) Uptime: 0:00:10.00

SNMPv2-SMI::internet.9.9.44.1.2.1 = integer: 12 SNMPv2-SMI::org.4.1.2.3.1 = STRING: “test_snmptrap”

snmptrapd接收到一个trap类型为2即Link Down类型,特征码为3的trap包。

发送V2版本trap报文的方法

从上面可看到,发送V1版本的trap包有较多的参数,如uptime等,而在V 2c版本中则交给了指令程序去做。

sudo snmptrap -v 2c -c public 10.10.12.219 "aaa" 1.3.6.1.4.1.2345 SNMPv2-MIB::sysLocation.0 s "just here"

上面指令各项参数的意思分别为:

10.10.12.219 “aaa”:分别是snmp代理的IP和主机名称,主机名称可以为空;

1.3.6.1.4.1.2345:企业OID,Enterprise-OID;

SNMPv2-MIB::sysLocation.0 s “just here”:分别是:数据OID、数据类型、数据值。

使用V2c版本,是不是省了很多,不用输入很多的参数选项。执行指令后,snmptrapd收到如下数据信息:

Received 75 bytes from UDP: [10.10.12.219]:40033

0000: 30 49 02 01 01 04 06 70 75 62 6C 69 63 A7 3C 02 0I…..public.<.

0016: 04 76 90 66 76 02 01 00 02 01 00 30 2E 30 15 06 .v.fv……0.0..

0032: 0A 2B 06 01 06 03 01 01 04 01 00 06 07 2B 06 01 .+………..+..

0048: 04 01 92 29 30 15 06 08 2B 06 01 02 01 01 06 00 …)0…+…….

0064: 04 09 6A 75 73 74 20 68 65 72 65 ..just here

2013-03-24 10:35:50 ubuntu.local [UDP: [10.10.12.219]:40033]:

SNMPv2-MIB::snmpTrapOID.0 = OID: SNMPv2-SMI::enterprises.2345 SNMPv2-MIB::sysLocation.0 = STRING: just here

snmpinform的使用方法

snmpinform的使用跟snmptrap的使用方法是一样的,在这里就不多介绍和说明了。

本文转自:

https://www.linuxidc.com/Linux/2012-05/61141.htm

相关阅读

snmp-check的用法(注意点)

【使用环境】kali linux2018.1【snmp-check版本】snmp-check v1.9 【查看帮助信息】【用法】snmp-check 【选项】 <目标ip>这里

BootStrapping

项目实例:https://github.com/Binpress/php-bootstrapping-crash-course因为有路由的存在,因此我们需要设置虚拟主机,直接将我们的项

SNMP配置

SNMP配置SNMP简介目前网络中用得最广泛的网络管理协议是SNMP(Simple Network Management Protocol,简单网络管理协议)。SNMP是被

强化学习系列(七):n-step Bootstrapping (步步为营)

一、前言 在强化学习系列(五):蒙特卡罗方法(Monte Carlo)和强化学习系列(六):时间差分算法(Temporal-Difference Learning)中,我们介绍了

SNMP基础知识整理

目录1、SNMP诞生背景2、SNMP简介3、SNMP术语4、SNMP的网络架构5、MIB简介6、SNMP协议的实现及常用指令写在前面: 此博文是笔者通过

分享到:

栏目导航

推荐阅读

热门阅读