构建SNMP协议的Trap请求
但是还有一种情况,就是 SNMP 代理主动向网络管理站 NMS 发出报文,通知发生了某些事件。该种情况使用的是 Trap 请求,它可以用来通知故障、连接的中断和恢复、认证失败等消息。
由于 SNMP 版本不同,netwox 工具提供了不同的模块,用于构建 SNMPv1 版本和 SNMPv2 版本的 Trap 请求。
构建 SNMPv1 版本的 Trap 请求netwox 工具编号为 161 的模块实现了 SNMPv1 版本的 Trap 请求功能,其语法格式如下:
netwox 161 -i IP -r OID -a IP -s Traptype -z timestamp -n OID -t OIDtype -V oidvalue
参数说明:
【实例】已知网络管理站 NMS 地址为 182.16.184.190。主机 192.168.59.133 作为 SNMP 代理,构建 SNMP Trap 请求,具体步骤如下:
1) 构建 SNMP Get 请求,设置企业对象 OID 为 .1.3.6.1.4.1,通知网络管理站 NMS,OID.1.3.6.1.2.1.1.1.0 对应的值为 APC Web/SNMP Management Card。执行命令如下:
root@daxueba:~# netwox 161 -i 182.16.184.190 -r .1.3.6.1.4.1.3.1 a 192.168.59.133 -s 3 -z 0 -n .1.3.6.1.2.1.1.1.0 -t s -V APC Web/SNMP Management Card
执行命令后没有任何输出信息,但是会成功构建 SNMP Trap 请求。
2) 通过抓包查看构建的 SNMP Trap 请求,如图所示。
![构建SNMP协议的Trap请求](http://ytso-blog-oss-img.oss-cn-beijing.aliyuncs.com/wp-content/uploads/2021/07/19/20210719_60f5b13eb70ed.gif)
其中,该数据包的源 IP 地址为 192.168.59.133,目标 IP 地址为 182.16.184.190。Info 列显示了 trap,表示该数据包为 SNMP 代理向客户端发送的 Trap 数据包,是针对 SNMPv1 版本的。
Simple Network Management Protocol 部分显示了 Trap 请求的相关报文信息,具体如下:
Simple Network Management Protocol version: version-1 (0) community: public data: trap (4) ) #PDU类型, 这里值为4, 表示为Trap请求 trap enterprise: 1.3.6.1.4.1.3.1 (iso.3.6.1.4.1.3.1) #企业OID agent-addr: 192.168.59.133 #代理IP地址 generic-trap: linkUp (3) #Trap类型 specific-trap: 0 #特定代码 time-stamp: 0 #时间戳 variable-bindings: 1 item 1.3.6.1.2.1.1.1.0: 415043205765622f534e4d50204d616e6167656d656e7420... Object Name: 1.3.6.1.2.1.1.1.0 (iso.3.6.1.2.1.1.1.0) #OID Value (OctetString): 415043205765622f534e4d50204d616e6167656d656e7420... Variable-binding-string: APC Web/SNMP Management Card #OID的值
上述输出信息显示了 Trap 请求的报文信息,如代理 IP 地址、Trap 类型、OID,以及对应的值。
构建 SNMPv2 版本的 Trap 请求netwox 工具中编号为 162 的模块实现了 SNMPv2 版本的 Trap 请求功能,其语法格式如下:
netwox 162 -i IP -r OID -z timestamp -n OID -t OIDtype -V oidvalue
参数说明:
【实例】构建 SNMPv2 版本的 Trap 请求。执行命令如下:
root@daxueba:~# netwox 162 -i 182.16.184.190 -r .1.3.6.1.4.1.3.1 -z 0 -n .1.3.6.1.2.1.1.1.0 -t s -V APC Web/SNMP Management Card
执行命令后没有任何输出信息。
通过抓包查看构建的 Trap 请求,如图所示。
![构建SNMP协议的Trap请求](http://ytso-blog-oss-img.oss-cn-beijing.aliyuncs.com/wp-content/uploads/2021/07/19/20210719_60f5b13ecbeea.gif)
从报文中可以看到,data 的值为 snmpV2-trap(7),表示 PDU 类型为 SNMPv2 版本的 Trap 请求。
21342.html
Web相关文章
- MetaDaily|工体元宇宙入选“中国数字样板工程”,腾讯与蔚来签署战略合作协议 深入自动驾驶云等领域合作
- 深入浅出 SSL/TLS 协议
- 如何设计可向后兼容的RPC协议
- Java 基于TCP协议的Socket编程 —— 服务器端程序
- SkeyeVSS国标视频汇聚云服务使用Onvif协议进行摄像机设备接入以及获取设备信息
- 基于Redis构建10万+终端级的高性能部标JT808协议的Gps网关服务器详解大数据
- 使用DHCP协议获取IP地址
- 协议Linux内核网络协议:为计算机构建未来(linux内核网络)
- Linux下使用UDP协议发送数据包(linuxudp发包)
- 魅族Canonical今日签署战略协议,明年将推Ubuntu MX产品
- Linux系统中配置的协议管理策略(linux系统的协议)
- MySQL XA 事务协议对性能的影响(mysql xa 性能)
- Oracle数据库专属协议全面构建企业数据库架构(Oracle使用的协议)
- 使用Redis构建即时通讯系统的必要性(从redis即时通讯协议)
- Redis集群构建之通讯协议研究(redis集群通讯协议)