CS6200之SNMP原理与配置
SNMP(简单网络管理协议)是广泛应用于TCP/IP网络的标准化管理协议,采用管理站/代理模式实现网络设备监控。管理站(NMS)通过Get/Set请求获取或设置代理(Agent)的管理信息,代理则通过Trap消息主动上报异常事件。SNMP协议经历了v1、v2c到v3的演进,v3版本增强了安全性,引入USM和VACM机制。网络管理信息存储在MIB(管理信息库)中,包含标准MIB-II和厂商私有MIB
一、介绍
SNMP(Simple Network Management Protocol,简单网络管理协议)是目前使用最广 泛的网络管理协议,大量应用于以TCP/IP为基础的计算机网络。SNMP协议提供了一个在网络中两点之间交换管理信息的直接的、基本的方法。SNMP 采用轮询的消息查询机制,采用被广泛使用的面向无连接的传输层协议UDP来传输消息。
SNMP协议:
- SNMP v1简单、易实现,被众多厂家支持;
- SNMPv2c对v1的功能进行了部分 修正和丰富,开始支持分层式的网管;
- SNMPv3在安全性上做了极大的扩充,添加了USM (基于用户的安全模型)和VACM(基于视图的访问控制模型)子系统。
二、原理
SNMP协议采用管理站/代理模式,SNMP结构包括两个部分:
- NMS 网络管理站 (Network Management Station),是运行支持 SNMP 协议的网管软件客户端程序的工作 站,在SNMP的网络管理中起核心作用。
- Agent 代理,是运行在被管理网络设备上的服务 器端软件,直接管理被管对象。
NMS 利用通信手段,通过 Agent 代理来管理各被管对象。 (交换机具有Agent代理功能)。
SNMP的NMS和Agent之间通过标准消息进行通信,采取客户/服务器模式,由NMS 发出请求,Agent做出应答。SNMP共有7种消息类型:Get-Request Get-Response Get-Next-Request Get-Bulk-Request Set-Request Trap/Inform-Request
Inform-Request主要用于 NMS之间进行通信,一般应用于分层式的网络管理。
NMS通过Get-Request、Get-Next-Request,Get-Bulk-Request 和 Set-Request 消息 来对Agent发出查询和设置管理变量的请求;
Agent在收到请求后,用Get-Response消息 来对请求进行回复。在某些特殊情况下,如网络设备端口UP/DOWN、网络拓朴变化时候, Agent 会主动的向NMS发送Trap消息来通知NMS发生了异常事件。
NMS 可以访问的网管信息是经过精确的定义的,被完备的组织在一个管理信息数据库 中,即MIB。所谓MIB 管理信息库(Management Information Base),是对于通过网络管 理协议可以访问信息的精确定义。它使用一个层次化、结构化的形式,定义了可以从被监测 网络设备上获得的管理信息。
如果需要浏览Agent的MIB中的变量信息,需要在NMS上运行MIB浏览软件。Agent 上的MIB一般包括公有MIB和私有MIB两部分,公有MIB内定义的是公开的,所有NMS 都可以访问的网络管理信息,私有MIB 内定义的是各设备特有的属性信息,需要设备厂商 的支持才可以浏览和控制。
交换机可以做为SNMP Agent,支持SNMPv1/v2c和SNMPv3。本交换机支持基本 的MIB-II、RMON公有MIB,还支持BRIDGE MIB等相关公有MIB,同时支持自定义的私 有MIB
NMS还可以 通过设置RMON功能,自行对一些情况设置警报,当设定的警报事件触发后,Agent将根 据设置发送Trap或记录Log
RMON是一套MIB定义,其作用 是定义标准的网络监视功能和接口,使基于SNMP的管理终端和远程监视器之间能够通信。 RMON提供了一种有效并且高效的方法来监视子网范围内的行为。
三、SNMP配置示例
管理站(NMS)的IP地址是1.1.1.5;交换机(Agent)的IP地址是1.1.1.9。
例1:管理站的网管软件使用SNMP协议从交换机获取数据。
配置步骤如下:
Switch(config)#snmp-server enable
打开交换机作为SNMP代理服务器功能
Switch(config)#snmp-server community rw private
Switch(config)#snmp-server community ro public
设置交换机的团体字符串;
管理站可以使用private作为团体字符串对交换机进行可读写的访问
也可以使用public 作为团体字符串对交换机进行只读的访问。
Switch(config)#snmp-server securityip enable
打开/关闭NMS管理站的安全IP地址检查功能。
Switch(config)#snmp-server securityip 1.1.1.5
设置允许访问本交换机的NMS管理站的安全IPv4
例2:管理站要接收来自交换机的v1 Trap消息(注:管理站可能设置了对Trap的团体 字符串的验证,那么此例假设管理站的Trap验证团体字符串为usertrap)。
配置步骤如下:
Switch(config)#snmp-server enable
Switch(config)#snmp-server host 1.1.1.5 v1 usertrap
设置接收 SNMP 的 Trap 消息的网络管理站IPv4 ,v1中的Trap团体字符串
Switch(config)#snmp-server enable traps
设置允许设备发送Trap消息,用于v1/v2c/v3。
例3:管理站的网管软件使用SNMP v3协议从交换机获取数据。
配置步骤如下:
Switch(config)#snmp-server enable
Switch(config)#snmp-server user tester UserGroup authPriv auth md5 hellotst
为一个SNMP的组添加一个新用户,完成USM配置,用于v3。
Switch(config)#snmp-server group UserGroup AuthPriv read max write max notify max
设置交换机的组信息,完成VACM配置,用于v3。
Switch(config)#snmp-server view max 1 include
设置交换机的视图信息,用于v3。
例4:管理站要接收来自交换机的v3Trap消息。
配置步骤如下:
Switch(config)#snmp-server enable
Switch(config)#snmp-server host 10.1.1.2 v3 authpriv tester
Switch(config)#snmp-server enable traps
例 5: 管理站(NMS)的 IPv6 地址是 2004:1:2:3::2, 交换机(Agent)的 IPv6 地址是 2004:1:2:3::1。管理站的网管软件使用SNMP协议从交换机获取数据。
交换机端的配置如下:
Switch(config)#snmp-server enable
Switch(config)#snmp-server community rw private
Switch(config)#snmp-server community ro public
Switch(config)#snmp-server securityip 2004:1:2:3::2
管理站就可以使用private 作为团体字符串对交换机进行可读写的访问,也可以使用 public 作为团体字符串对交换机进行只读的访问。
例6: 管理站要接收来自交换机的Trap消息(注:管理站可能设置了对Trap的团体字符 串的验证,那么此例假设管理站的Trap验证团体字符串为usertrap)。
交换机端的配置如下:
Switch(config)#snmp-server host 2004:1:2:3::2 v1 usertrap
Switch(config)#snmp-server enable traps
注意:
- 物理连接正确
- 保证接口和链路协议是UP(使用show interface 命令),保证交换机和主 机能互相ping通(使用ping命令)
- 交换机打开了SNMP Agent服务器功能(使用snmp-server enable 命令)
- 为NMS配置安全IP(使用snmp-server securityip命令)和团体字符 串(使用snmp-server community 命令)正确,只要有一个错误SNMP将不 能正确和NMS通信;
- 使用Trap功能,务必打开Trap功能(使用snmp-server enable traps命 令),为了保证Trap能发送到指定的主机,需要正确配置Trap的目标主机的IP 和团体字符串(使用snmp-server host命令);
- 如果使用RMON功能,必须首先打开RMON(使用rmon enable命令);
- show snmp 查看SNMP 收发包的统计信息
- show snmp status 查看SNMP的配置信息
- debug snmp packet 打开SNMP的调试开关,查看调试信息
- snmp-server engineid设置交换机的本地引擎号,用于v3。
- snmp-server trap-source设置本交换机发送 trap 时所使用源 IPv4 或 IPv6 地址
- switchport updown notification enable开启或者关闭端口 UP/DOWN 事件发送 trap 信息的功能。
- snmp-server host设置接收 SNMP 的 Trap 消息的网络管理站 IPv4 或者IPv6 地址,v1/v2c 中的Trap团体字 符串,v3中的用户名和安全级别
更多推荐


所有评论(0)