什么是 SNMP?
SNMP 是简单的网络管理协议,它不是一个软件,而是用于网络管理的一套规则。利用 SNMP,一个管理工作站可以远程管理所有支持这种协议的网络设备,包括监视网络状态、修改网络设备配置、接收网络事件警告等。
但话又说回来,为什么要使用SNMP协议?
因为网络设备可能来自不同的厂商,如果每个厂商提供一套独立的管理接口,将使网络管理变得越来越复杂,若想对网络中来自不同厂商的设备监控,用基于 SNMP 开发的软件进行管理最方便的,因为大部分的设备都支持 SNMP 协议。
那么 SNMP 有哪些技术有点?
-
基于 TCP/IP 互联网的标准协议,传输层协议一般用 UDP。
-
自动化网络管理。网络管理员可以利用 SNMP 平台在网络上的节点检索信息、修改信息、发现故障、完成故障诊断、进行容量规划和生成报告。
-
屏蔽不同设备的物理差异,实现对不同厂商产品的自动化管理。SNMP 只提供最基本得功能集,使得管理任务与被管理设备的物理特征和实际网络类型相对独立,从而实现对不同厂商设备的管理。
-
简单的请求-应答方式和主动通告方式相结合,并有超时和重传机制。
-
报文种类少,报文格式简单,方便解析,易于实现。
-
SNMPv3 版本提供了认证和加密安全机制,以及基于用户和视图的访问控制功能,增强了安全性。
SNMP 的网络架构
SNMP 网络架构由三部分组成:NMS(网络管理站)、Agent(代理)、MIB(管理信息库)。
NMS(网络管理站)
NMS 是网络中的管理者,是一个利用 SNMP 协议对网络设备进行管理和监视的系统。可以是一台专门用来进行网络管理的服务器,也可以指某个设备中之中管理功能的一个应用程序。
NMS 可以向 Agent 发出请求,查询或修改一个或多个具体的参数值。同时,NMS 可以接收 Agent 主动发送的 Trap 信息,以获知被管理设备当前的状态。
Agent(代理)
Agent 是网络设备中的一个应用模块,用于维护被管理设备的信息数据,并响应 NMS 的请求,把管理数据汇报给发送请求的 NMS。
Aent 接收到 NMS 的请求信息后,完成查询或修改操作,并把操作结果发送给 NMS,完成响应。同时,当设备发生故障或者其他事件的时候,Agent 会主动发送 Trap 信息给 NMS,通知设备当前的状态变化。
MIB(管理信息库)
任何一个被管理的资源都表示成一个对象,称为被管理的对象。MIB 就是被管理对象的集合。它定义了被管理对象的一系列的属性:对象的名称、对象的访问权限和对象的数据
类型等。每个 Agent 都有自己的 MIB。MIB 也可以看做是 NMS 和 Agent 之间的一个接口,通过这个接口,NMS 可以对 Agent 中的每一个被管理对象进行读/写操作,从而达到管理和监控设备的目的。
SNMP 的操作
参考
https://blog.csdn.net/shmily_cml0603/article/details/12968157