SNMP技术背景
随着设备数量的增加,网络管理的复杂性也相应提高,这就意味着需要更多的维护支撑人员,增加了设备维护成本,所以就需要一个支持大规模、便捷管理的网管平台。
每引入一家厂商的网络设备,就需要引入配套的厂商网管,而目前的厂商网管仅能管理自己厂商的设备,且每个厂商网管的操作界面、管理内容等均不相同,所以要实现对全网进行高效地统一管理,就需要使用一种标准、通用的网络管理协议(SNMP协议)
SNMP技术原理
SNMP的结构包括网管站NMS(Network Management Station)和Agent两部分。SNMP协议就是规定NMS和Agent之间如何传递管理信息的应用层协议(UDP 162)
SNMP的版本
SNMPv1:方便实现,安全性弱
SNMPv2c:有一定的安全性,现在应用最为广泛
SNMPv3:定义了一种管理框架,引入了USM( User Security Model 用户的安全模型),为用户提供了安全的访问机制
Agent:运行在被管理设备上的代理进程。被管理设备在接收到网管设备侧NMS发出的请求后,由Agent作出响应操作。主要功能包括:收集设备状态信息、实现NMS对设备的远程操作、向网管端发出告警消息。
MIB:是一个虚拟的数据库,是在被管理设备端维护的设备状态信息集。Agent通过查找MIB来收集设备状态信息。MIB按照层次式树形结构组织被管理对象,并使用ASN.1格式进行描述。网管中被管资源,而网络管理中的资源是以对象来表示,每一个对象表示被管资源某一方面的属性,这些对象的集合形成管理信息库
MIB给出了一个网络中所有可能的被管理对象的集合的数据结构。SNMP的管理信息库采用和域名系统DNS相似的树型结构,它的根在最上面,根没有名字。下图画的是管理信息库的一部分,它又称为对象命名(objectnamingtree)
SNMP报文交互过程
SNMPV1
SNMPv1定义了五种协议操作:
- Get-Request:NMS从代理进程的MIB中提取一个或多个参数值。
- Get-Next-Request:NMS从代理进程的MIB中按照字典式排序提取下一个参数值。
- Set-Request:NMS设置代理进程MIB中的一个或多个参数值。
- Response:代理进程返回一个或多个参数值。它是前三种操作的响应操作。
- Trap:代理进程主动向NMS发送报文,告知设备上发生的紧急或重要事件。
SNMPV2
SNMPv2c新增了2种协议操作:
- GetBulk:相当于连续执行多次GetNext操作。在NMS上可以设置被管理设备在一次GetBulk报文交互时,执行GetNext操作的次数。
- Inform:被管理设备向NMS主动发送告警。与trap告警不同的是,被管理设备发送Inform告警后,需要NMS进行接收确认。如果被管设备没有收到确认信息则会将告警暂时保存在Inform缓存中,并且会重复发送该告警,直到NMS确认收到了该告警或者发送次数已经达到了最大重传次数。
SNMPV3
SNMPv3的实现原理和SNMPv1/SNMPv2c基本一致,主要的区别是SNMPv3增加了身份验证和加密处理。
- NMS向Agent发送不带安全参数的Get请求报文,向Agent获取安全参数等信息。
- Agent响应NMS的请求,向NMS反馈所请求的参数。
- NMS向Agent发送带安全参数的Get请求报文。
- Agent对NMS发送的请求消息进行认证,认证通过后对消息进行解密,解密成功后,向NMS发送加密的响应。
SNMP配置命令
[Router]snmp-agent //启动SNMP Agent服务 缺省情况下,未使能SNMP Agent功能 [Router]snmp-agent sys-info version v2c //配置SNMP的版本信息为SNMPv2c [Router]snmp-agent sys-info contact //如果设备发生故障,设备维护人员可以利用系统维护联系信息,及时与设备生产厂商取得联系 [Router]snmp-agent sys-info location //配置管理节点的物理位置
snmp-agent community //命令用来配置SNMPv1、SNMPv2c的读写团体名
snmp-agent community { read | write } { community-name | cipher community-name } [ mib-view view-name | acl { acl-number | acl-name } | alias alias-name ]
使用read参数 希望网管在指定视图下具有只读权限(比如级别比较低的管理员)
使用write参数 希望网管在指定视图下具有读写权限时(比如级别比较高的管理员)
如果希望使用该团体名的某些网管,都能拥有视图Viewdefault的权限,参数mib-view view-name可以省略
[Router] snmp-agent community read public mib-view iso-view //配置设备的读写团体名,并通过选择是否配置mib-view view-name 或acl acl-number,限制网管对设备的访问权限
[Router] snmp-agent community write private mib-view iso-view
[Router] snmp-agent mib-view iso-view include iso //用来创建MIB视图 表示该MIB视图包括该MIB子树
[Router] snmp-agent target-host trap-paramsname trapnms v2c securityname adminnms //用于配置trap报文的发送参数信息 当需要配置发送trap报文的协议版本 对发送的trap报文是否进行加密参数时
[Router] snmp-agent target-host trap-hostname nms address 172.16.50.253 trap-paramsname Trapnms //用于设置trap报文目的主机的IP地址 那么设备的trap报文将发送到此IP地址对应的主机上
[Router] snmp-agent trap enable //当用户希望一次性打开所有模块的告警开关
[Router] snmp-agent trap source GigabitEthernet0/0/0 //用来指定发送Trap的源接口 最好配置为本地的loopback地址
eSight软件
eSight系统是华为公司研制的新一代面向企业网络园区、企业分支的运维管理系统,实现对企业资源、业务、用户的统一管理等功能。
- 轻量级系统,向导式安装;免客户端,通过浏览器随时随地管理网络
- 面向不同客户提供相应的解决方案
- 多厂商统一管理,采用被广泛使用的标准网络管理协议SNMP
eSight安装
体验eSight软件:https://122.112.233.209:31943/portal/index.html?_=1576564942163
第一步:下载ESIGHT软件
软件获取方法:
华为企业网网站:http://enterprise.huawei.com/cn/
安装软件:选择技术支持 >文档与软件下载 > 企业网络 > 网管与控制器> 产品分类 > eSight > eSight Network > 软件下载第二步:运行SETUP.BAT
第三步:安装参数
- IP地址:当前服务器默认的IP地址。如果服务器存在多个IP地址,请在下拉列表中选择对外可用的IP地址。
- 端口:默认为8080,如果该端口被占用,可修改成其他端口号。
- 安装路径:eSight软件的安装路径,用户可手工修改。
第四步:选择安装组件
第五步:数据库服务器参数
- 当数据库类型为MySQL时,系统会默认输入数据库的用户名为root,密码为Changeme123。root是MySQL数据库默认用户帐户,即数据库系统管理员,具有数据库的最高权限。
- 当数据库类型为SQLServer时,并且第一次安装eSight时,需手工输入用户名为sa,密码为Changme123。sa是SQL Server数据库默认用户帐户,即数据库系统管理员,具有数据库的最高权限。
- 如果是增量安装,密码项为灰化,无需再次输入。
第六步:显示安装过程进度
第七步:安装完成
第八步:启动服务
第九步:IE9首次登录
地址栏中输入:http://服务器IP地址:端口号(8080),按Enter
如果是第一次登录,页面显示网站安全证书有问题,继续浏览此网站(不推荐)eSight实验演示
组网拓扑图
1.交换机和路由器SNMP配置如下
2.创建SNMP模板 自动发现我们网络设备
自动发现功能
成功添加四台网络设备3.我们可以通过ACL来限制被管理的设备
用acl限制一个网络设备被eSight发现4.我们可以通过图形化界面监控网络设备
以图形的方式显示拓扑结构5.在网络设备上面使能LLDP功能 就可以在监控平台上看到设备之间的连线
6.监控软件可以定位我们网络故障 也可以恢复我们网络故障
出现故障信息
定位故障信息
定位故障拓扑信息
定位故障拓扑面板信息
定位故障拓扑面板接口信息
恢复故障后
故障告警信息清除7.查看实时性能监控功能
8.查看大屏功能和敏捷报表功能
来源:51CTO
作者:Oldboy1key
链接:https://blog.51cto.com/13817711/2459555