一、简介
SNMP(Simple Network Management Protocol,简单网络管理协议)的前身是简单网关
监控协议(SGMP),用来对通信线路进行管理。随后,人们对SGMP进行了很大的修
改,特别是加入了符合Internet定义的SMI和MIB:体系结构,改进后的协议就是著名
的SNMP。SNMP的目标是管理互联网Internet上众多厂家生产的软硬件平台,因此
SNMP受Internet标准网络管理框架的影响也很大。现在SNMP已经出到第三个版本
的协议,其功能较以前已经大大地加强和改进了。
SNMP工作过程
在典型的SNMP用法中,有许多系统被管理,而且是有一或多个系统在管理它
们。每一个被管理的系统上又运行一个叫做代理者(agent)的软件元件,且透过
SNMP对管理系统报告资讯。
基本上,SNMP代理者以变量呈现管理资料。管理系统透过GET,GETNEXT和
GETBULK协定指令取回资讯,或是代理者在没有被询问的情况下,使用TRAP或
INFORM传送资料。管理系统也可以传送配置更新或控制的请求,透过SET协定指令
达到主动管理系统的目的。配置和控制指令只有当网络基本结构需要改变的时候使
用,而监控指令则通常是常态性的工作。
可透过SNMP存取的变量以阶层的方式结合。这些分层和其他元数据(例如变量
的类型和描述)以管理信息库(MIBs)的方式描述。
SNMP信息
MIB,Management Information Base:管理信息库,由网络管理协议访问的管理对
象数据库,它包括SNMP可以通过网络设备的SNMP管理代理进行设置的变量。
SMI,Structure of Management Information:管理信息结构,用于定义通过
网络管理协议可访问的对象的规则。SMI定义在MIB中使用的数据类型及网络资源在
MIB中的名称或表示。
使用SNMP进行网络管理需要下面几个重要部分:管理基站,管理代理,管理信
息库和网络管理工具。管理基站通常是一个独立的设备,它用作网络管理者进行网
络管理的用户接口。基站上必须装备有管理软件,管理员可以使用的用户接口和从
MIB取得信息的数据库,同时为了进行网络管理它应该具备将管理命令发出基站的
能力。
管理代理是一种网络设备,如主机,网桥,路由器和集线器等,这些设备都必
须能够接收管理基站发来的信息,它们的状态也必须可以由管理基站监视。管理代
理响应基站的请求进行相应的操作,也可以在没有请求的情况下向基站发送信息。
MIB是对象的集合,它代表网络中可以管理的资源和设备。每个对象基本上是
一个数据变量,它代表被管理的对象的一方面的信息。
最后一个方面是管理协议,也就是SNMP,SNMP的基本功能是:取得,设置和
接收代理发送的意外信息。取得指的是基站发送请求,代理根据这个请求回送相应
的数据,设置是基站设置管理对象(也就是代理)的值,接收代理发送的意外信息是指
代理可以在基站未请求的状态下向基站报告发生的意外情况。
SNMP为应用层协议,是TCP/IP协议族的一部分。它通过用户数据报协议(UDP)
来操作。在分立的管理站中,管理者进程对位于管理站中心的MIB的访问进行控
制,并提供网络管理员接口。管理者进程通过SNMP完成网络管理。SNMP在UDP、
IP及有关的特殊网络协议(如,Ethernet, FDDI, X.25)之上实现。
协议种类
目前, SNMP 有 3 种: SNMPV1 、 SNMPV2 、 SNMPV3。第 1 版和第 2
版没有太大差距,但 SNMPV2 是增强版本,包含了其它协议操作。与前两种相比,
SNMPV3 则包含更多安全和远程配置。为了解决不同 SNMP 版本间的不兼容问题,
RFC3584 种定义了三者共存策略。
SNMP 还包括一组由 RMON 、 RMON2 、 MTB 、 MTB2 、 OCDS 及
OCDS 定义的扩展协议。
架构方式
主代理
主代理是一个在可运行SNMP的网络组件上运作的软件,可回应从管理站发出的
SNMP要求。它的角色类似客户端/服务器结构(Client/Server)术语中的服务器。主
代理依赖子代理提供有关特定功能的管理信息。
如果系统当前拥有多个可管理的子系统,主代理就会传递它从一个或多个子代
理处收到的请求。这些子代理在一个子系统以及对那个子系统进行监测和管理操作
的接口内为关心的对象建模。主代理和子代理的角色可以合并,在这种情况下我们
可以简单的称之为代理(agent)。
子代理
子代理是一个在可运行SNMP的网络组件上运作的软件,运行在特定子系统的
特定管理信息库(MIB,Management Information Base)中定义的信息和管理功能。子
代理的一些能力有:
搜集主代理的信息
配置主代理的参数
回应管理者的要求
产生警告或陷阱
对协议和管理信息结构的良好分离使得使用SNMP来监测和管理同一网络内上
百的不同子系统非常简单。MIB模型运行管理OSI参考模型的所有层,并可以扩展至
诸如数据库,电子邮件以及J2EE参考模型之类的应用。
管理站
管理者或者管理站提供第三个组件。它和一个客户端/服务器结构下的客户端一
样工作。它根据一个管理员或应用程序的行为发出管理操作的请求,也接收从代理
处获得的TRAP。
二、案例
拓扑图:
配置过程:
SW:
<Quidway>system-view
[Quidway]sysname sw
[sw]interface Vlan-interface 1
[sw-Vlan-interface1]ip address 192.168.1.1 255.255.255.0
[sw]snmp-agent
[sw]snmp-agent community read public
[sw]snmp-agent community write private
[sw]snmp-agent sys-info contact zhangsan
[sw]snmp-agent sys-info location bj
[sw]snmp-agent trap enable
[sw]snmp-agent target-host trap address udp-domain 192.168.1.100
params securityname public
R9:
[R9]interface eth1
[R9-Ethernet1]ip address 192.168.1.2 24
[R9]inter s0
[R9-Serial0]ip address 192.168.2.1 24
[R9]ip route-static 0.0.0.0 0 192.168.2.2
[R9]snmp-agent
[R9]snmp-agent community read public
[R9]snmp-agent community write private
[R9]snmp-agent sys-info contact lisi
[R9]snmp-agent sys-info location bj2
[R9]snmp-agent sys-info version all
[R9]snmp-agent trap enable
[R9]snmp-agent target-host trap address 192.168.1.100 securityname
pubic
R4:
[R4]inter s0
[R4-Serial0]ip address 192.168.2.2 24
[R4-Ethernet0]interface eth1
[R4-Ethernet1]ip address 192.168.3.1 24
[R4]ip route-static 0.0.0.0 0 192.168.2.1
[R4]snmp-agent
[R4]snmp-agent community read public
[R4]snmp-agent community write private
[R4]snmp-agent sys-info contact sh
[R4]snmp-agent sys-info location sss
[R4]snmp-agent sys-info version all
[R4]snmp-agent trap enable
[R4]snmp-agent target-host trap address 192.168.1.100 securityname
public
服务器192.168.1.100端:
安装what‘s up软件并运行,运行过程如下: