一、SNMP协议概述

SNMP是基于TCP/IP协议族的网络管理标准,是一种在IP网络中管理网络节点(如服务器、工作站、路由器、交换机等)的标准协议。SNMP能够使网络管理员提高网络管理效能,及时发现并解决网络问题以及规划网络的增长。网络管理员还可以通过SNMP接收网络节点的通知消息以及告警事件报告等来获知网络出现的问题。

SNMP管理的网络主要由三部分组成:

被管理的设备

SNMP代理

网络管理系统(NMS)

它们之间的关系如图所示。

 

 

网络中被管理的每一个设备都存在一个管理信息库(MIB)用于收集并储存管理信息。通过SNMP协议,NMS能获取这些信息。被管理设备,又称为网络单元或网络节点,可以是支持SNMP协议的路由器、交换机、服务器或者主机等等。

SNMP代理是被管理设备上的一个网络管理软件模块,拥有本地设备的相关管理信息,并用于将它们转换成与SNMP兼容的格式,传递给NMS。

 

NMS运行应用程序来实现监控被管理设备的功能。另外,NMS还为网络管理提供大量的处理程序及必须的储存资源。

基本上,SNMP代理者以变量呈现管理资料。管理系统透过GETGETNEXTGETBULK协定指令取回资讯,或是代理者在没有被询问的情况下,使用TRAPINFORM传送资料。管理系统也可以传送配置更新或控制的请求,透过SET协定指令达到主动管理系统的目的。配置和控制指令只有当网络基本结构需要改变的时候使用,而监控指令则通常是常态性的工作。

 

二、协议版本区别

①SNMPv1SNMP协议的最初版本,提供最小限度的网络管理功能。SNMPv1SMIMIB都比较简单,且存在较多安全缺陷。
SNMPv1采用团体名认证。团体名的作用类似于密码,用来限制NMSAgent的访问。如果SNMP报文携带的团体名没有得到NMS/Agent的认可,该报文将被丢弃
②SNMPv2c
SNMPv2c也采用团体名认证。在兼容SNMPv1的同时又扩充了SNMPv1的功能:它提供了更多的操作类型(GetBulkinform操作);支持更多的数据类型(Counter32等);提供了更丰富的错误代码,能够更细致地区分错误。

 

三、SNMP工作原理

SNMP采用特殊的客户机/服务器模式,即代理/管理站模型。对网络的管理与维护是通过管理工作站与SNMP代理间的交互工作完成的。每个SNMP从代理负责回答SNMP管理工作站(主代理)关于MIB定义信息的各种查询。
SNMP的应用场景如图1所示:

管理站和代理端使用MIB进行接口统一,MIB定义了设备中的被管理对象。管理站和代理都实现相应的MIB对象,使得双方可以识别对方的数据,实现通信。管理站向代理请求MIB中定义的数据,代理端识别后,将管理设备提供的相关状态或参数等数据转换成MIB定义的格式,最后将该信息返回给管理站,完成一次管理操作。

 

 

四、利用路由器进行SNMP测试

1SNMP测试工具

常用的网络管理协议有:snmp、ssh、telnet、soap等
Snmp:远程管理工具,用于管理路由器设备使用的管理软件有很多种,可以用以下软件进行管理。

 

 

2、路由器配置SNMP测试功能点说明:

 

2.1 SNMP设置

 

这边端口保持和我们的软件上面填写的短号号一致就好  并不一定是161

 

 

对不同的SNMP版本如SNMPv1SNMPv2进行选择测试

ps:本地信息和联系信息类似于一个联系方式,在这里我们测试只要能够在mib browserget到就可以

 

 

2.2 设置视图  & VACM

这边端口保持和我们的软件上面填写的短号号一致就好  并不一定是161

 

VACM

 

 

2.3 设置trap

trap的作用是,当设备(路由器)的出现问题的时候,可以向服务器传报消息

设置端口应该与前面SNMP的端口和我们的MIBbrowser软件的端口保持一致,才能正常让MIBbrowser软件连接

 

 

 

2.4 MIB

用于下载mib文件,mib文件的作用是查看设备的节点信息,公司设备的mib文件中只有最后一个是我们路由器信息的mib文件,其他都是行业规定的mib文件。

Mib文件的作用:mib主要用于查看设备的各个节点所对应的名称信息等,或者说就是查看设备的iod(节点信息)

 

 

 

2.5 mib browser软件

将下载的mib文件,导入到mib browser中,按下图设置,连接设备

 

 

2.6 在左边展开mib文件,呈现的为当前要管理的设备如路由器的一个操作节点树

 

 

右边则为配置要操作的设备ip,要操作的共同体权限

 

 

打红色的× 只能进行get(获取信息操作)

不带红色的×的才可以进行set操作

操作1get操作

get文件夹节点信息

 

 

get某一个叶子节点信息,直接右击现在想要查看的信息,get获取

 

 

操作2set操作

 

设置完之后可以用Xshell工具或者其他工具验证是否修改set成功

操作3trap功能

工具开启trap接收服务
View->Trap View
设置好端口以及用户名

 

 

路由器端开启trap功能,在软件上点击start

 

 

连接成功trap会收到一条连接成功的信息

 

 

 

可以在show details查看对应的消息

 

 

可以自定义 trap 消息接口

例子(eg.):

路由器可以在串口中使用ubus 来发送trap消息

 root@ROUTER:~# ubus call yruo_snmp eventtrap \'{“head”:”hello”, “body”:”world”}

Head  body 定义类似于发送邮件的主题和正文

 

可以在我们的管理工具上查看到设备发送过来的对应的信息。

版权声明:本文为chenxiaomeng原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/chenxiaomeng/p/8668131.html