SNMP:简单网络管理协议

下载
第38章SNMP:简单网络管理协议
作者:Tim Parker
本章内容包括:
• 什么是S N M P
• 管理信息基( M I B )
• 使用S N M P
• UNIX与S N M P
• Wi n d o w s与S N M P
本章讲述简单网络管理协议( S N M P )。S N M P通常用来管理网络设备并获取设备信息。
S N M P使网络管理变得简单,因此通常用在T C P / I P网络,尤其是大规模网络,。S N M P同样可
用来将自身的状态发送给特殊的S N M P服务器软件,显示错误隐患及其他可能出现的问题。网
络管理员使用S N M P可以在一个地方获取所有支持S N M P的网络节点的信息,并且可对其进行
远程配置。
38.1 什么是SNMP
简单网络管理协议最初是为处理网络上路由器而设计的。虽然S N M P是T C P / I P协议族中
的一员,但它并不依赖于I P。目前大部分S N M P都使用I P协议,但S N M P是独立的协议(因此,
它也用于N o v e l l公司S P X / I P X的I P X协议之上)。
S N M P并不是单个协议,它由三个协议组成,这三个协议用于网络管理。组成S N M P协议
的三个协议及功能如下所示:
• 管理信息基( M I B ) 包含状态信息的数据库。
• 管理信息的结构与标识( S M I ) 定义M I B的入口。
• 简单网络管理协议( S N M P ) 受管理的对象与服务器间的通信方法。
拥有S N M P能力的管理代理软件包要么在系统启动时加载,要么嵌入到设备的硬件中。拥
有S N M P代理的设备由于不同的厂商而有各种不同的名称,但总的可分为S N M P管理设备和受
S N M P管理的设备两种。S N M P相容设备也拥有将S N M P集成到其软件或硬件上的代码。当设
备中包含S N M P时,我们称之为可管理的设备。
受S N M P管理的设备可与位于网络某处的S N M P服务器通信。设备与服务器有两种通信方
式:投票及中断。接受投票的设备由服务器询问当前的状态或统计信息。投票通常在一定时
间间隔执行,由网络服务器与受管理的设备进行通信。投票的问题是:信息不总是实时的,
同时由于受管理的设备数量增多及投票频率过高的影响容易造成网络拥塞。
在基于中断的S N M P系统中,当受管理的设备出现异常时,向服务器发送消息,在这种方
式下,服务器可以及时知道问题—除非设备崩溃,此时,只有其他设备与已崩溃的设备进
行连接时,系统才可能发现问题。基于中断的设备也存在自己的问题,最主要的是设备需要
组织发送给服务器的消息,这将消耗掉系统时钟周期,从而降低系统的工作效率。同时也可
能导致性能“瓶颈”从而引发其他问题。如果消息数据量较大,包含很多统计数据,组织和
传输消息将导致网络性能下降。
如果网络上出现较严重的问题,如电源掉电或电压过高,每个受管理的S N M P设备都设法
向服务器发送中断消息以报告问题。这将导致网络拥塞从而使服务器接收到错误的消息。
通常,将投票与中断结合使用以弥补各自的缺陷,我们称这种组合方式为直接自陷投票
(trap-directed polling),服务器定时统计或在管理员指导下统计设备信息。同时,每个受管理
的设备在某种条件发生时产生中断消息,中断发生的条件比纯粹的中断驱动系统要严格。例
如,如果用户使用中断S N M P,路由器负载每增长1 0 %都向服务器报告。如果使用直接自陷投
票S N M P,用户可从投票中获得路由器的负载,并且当路由器负载增加很快时,将向服务器发
送中断消息。当服务器接收到此中断消息后,如果需要的话,可进一步查询设备的详细信息。
S N M P服务器软件包可与S N M P代理通信、传输或请求一系列不同类型的信息。通常由服
务器向代理请求统计信息,包括处理的包数量、设备的状态与设备类型相关的特殊信息等(如
m o d e m失效连接的次数)及处理器的负载。
服务器也可向代理发送指令以修改数据库( M I B )中的项。服务器也可设置代理方的阈值或
条件,当代理超过阈值或满足条件时向服务器发送中断消息,如C P U负载达到9 0 %。
虽然服务器与代理间的通信内容趋向于抽象,但通信本身以非常直接简单的方式完成。如:
服务器发送“当前负载”,代理返回7 5 %。代理从不向服务器发送数据,除非产生中断消息或
收到服务器请求,这意味着在没有进行投票或产生中断消息时,系统可能存在潜伏的问题。
38.2 管理信息基(MIB)
每个受管理的S N M P设备均维护包含统计信息及其他数据的数据库。我们称之为管理信息
基或M I B。M I B的每一项包含一种信息:对象类型、语法、访问字段及状态字段等。M I B的项
通常由协议规定,并且严格遵守抽象语法规则1 ( A S N . 1 )的格式。
对象类型为项的名称,通常为简单的名字。语法是一个值字段,通常为字符串或整型,并不
是所有的M I B的项均包含值字段。访问字段用于定义项的访问权限,通常有以下四类:只读、可
读/写、只可写或不可访问。状态字段包含指示值,标明M I B项是否为命令、可选或作废。命令表
示受管理的设备必须执行该项。可选表示受管理的设备可以选择执行该项,作废表示不执行。
目前执行的M I B有两种, M I B - 1和M I B - 2。两者结构不同, M I B - 1创建于1 9 8 8年,其表中
包含11 4项,分为两组,支持M I B - 1的受管理的设备必须支持所有的适用于该设备的组。例如:
受管理的打印机不能执行处理外部网关协议的项,与外部网关协议( E G P )相关的项用于路由器
或类似的设备。打印机需要指明它可处理的项。
M I B - 2是M I B - 1的扩展,于1 9 9 0年提出。它包含1 7 1项共分为1 0组。除了扩展了原有的组
外,又新增加了组。与M I B - 1类似,支持M I B - 2的设备必须执行所有适用于该类型的组。用户
将会发现许多设备仅支持M I B - 1而不支持M I B - 2。
除了M I B - 1和M I B - 2外,还有许多正在测试的M I B,它们包含许多不同的组和项。但它们
并未被广泛使用。某些公司开发M I B以供自己使用,某些厂商也提供对这些M I B的支持,如
H P (惠普)公司自己开发的M I B得到了许多可管理设备及服务器软件包的支持。
38.3 使用SNMP
简单网络管理协议有许多不同的版本,其中最通用的为SNMP v1。一般情况下,S N M P被
第3 8章S N M P:简单网络管理协议使用421
下载
用于非同步客户/服务器应用,受管理的设备或S N M P服务器软件都可产生消息,根据需要等
待响应。这些消息或响应由具体的网络软件(如I P )打包并处理。S N M P在T C P / I P中使用U D P协
议作为其消息传输协议。U D P端口1 6 1可接受除自陷外的所有消息,自陷消息由1 6 2号端口接
收。代理通过U D P 1 6 1号端口接收来自服务器的消息。
S N M P的第一个主要版本SNMP v1仅包含较为简单的操作,它很容易被设备制造商实现并
得到操作系统的支持。SNMP v1支持以下五种服务器与代理间的操作:
• get—用于获取M I B项的值。
• get-next—用于遍历M I B项。
• get-response—g e t的响应。
• set—用于修改M I B的项。
• trap—用于设置中断条件。
当发送请求时S N M P项的某些字段为空,以便客户填充并返回给服务器。这是一种在一个
块内传送问题或答案的有效方法。避免了通过复杂的查询算法寻找与请求对应的结果。
例如:在g e t命令中,类型和值字段为空,客户方填充这两个字段后(除非请求失败,否则
返回错误消息)将消息返回给服务器。
SNMP v2在SNMP v1的基础上增加了一些新的功能。对于服务器来说,最方便的命令为
g e t - b u l k操作,它使客户方在一条消息中发送大量M I B项的信息(SNMP v1需要多条g e t - n e x t操
作才可完成相同功能)。此外,SNMP v2比SNMP v1有更强的安全性,可防止入侵者监视受管
理的设备的状态。SNMP v2既支持加密也支持认证。因此, SNMP v2远比SNMP v1复杂,也
没有SNMP v1应用广泛。
S N M P支持代理管理,即包含S N M P代理和M I B的设备可与有不完全的S N M P代理软件的设
备进行通信。基于代理的管理可以将设备的M I B放在客户方的内存中,通过连接远程机器对设备
进行管理。例如:可以通过代理管理打印机,将打印机的客户方S N M P软件及M I B放在代理工作
站中,通过代理工作站对打印机进行管理。基于代理的管理可以减轻负载过重的设备的工作量。
尽管S N M P已得到了广泛的应用,但它仍有一些不足之处。最主要的是U D P的可靠性。因
为U D P是无连接协议,服务器与代理间的消息传送没有可靠的保障。另外, S N M P仅提供简
单的消息传送机制。因此,不能对消息进行过滤,这有可能导致接收消息的软件负载过重。
最后一点不足是,S N M P从某种程度上说仍然使用投票方式,这将消耗大量带宽。
网络管理的将来属于O S I网络管理标准:通用管理信息服务( C M I S )及通用管理信息协议
( C M I P ),它们建立在T C P / I P之上。I A B发布了基于T C P / I P的通用管理信息服务与协议C M O T
作为T C P / I P及O S I管理的标准。
S N M P及C M O T都使用网络管理者与网络设备(如工作站、网桥、路由器等)交换信息。主
管理工作站与不同的管理进程通信获取网络的状态信息。S N M P及C M O T的体系结构都将收集
的信息以某种方式存储以便供其他协议读取。
S N M P管理者处理所有使用S N M P的设备间的通信和软件。支持软件提供用户接口,使网
络管理员可观察整个系统的状态及单个设备的状态,并可监视特定的网络设备。
38.4 UNIX与SNMP
当大多数网络和系统管理员考虑使用S N M P时,都会想到U N I X,因为基于U N I X的S N M P
422使用第九部分使用与管理T C P / I P网络
下载
已得到了广泛的使用。当网络规模较大时, S N M P几乎是管理员的惟一选择,因为它可使管理
员获得整个网络中设备的信息并及时得到问题警报。S N M P几乎已与任何版本的U N I X捆绑,
且安装过程简便。经过短暂的学习,管理员可使用它有效地管理含有上千个设备的网络。对
于L i n u x也是如此。
本节讲述如何在U N I X系统中配置安装S N M P,正如用户想到的,基于G U I的S N M P管理
软件包远比基于字符的系统友好,因而许多U N I X厂商都提供特殊的S N M P管理应用的软件。
38.4.1 在UNIX和Linux上安装SNMP
大多数U N I X系统本身包含客户和服务器软件。客户软件通过s n m p d守护进程执行,当在
网络上使用S N M P时,客户方软件就始终执行。通常s n m p d守护进程在程序启动时运行。这主
要决定于r c系列启动文件。当S N M P启动时,守护进程读取配置文件。对于大多数S N M P代理,
s n m p d读取文件如下:
文件所处的目录根据U N I X版本的不同而不同,用户需要检查文件系统以得到正确的位
置。
s n m p d . c o n f文件中包含四个系统M I B对象。在大部分情况下,这些对象在安装时设置,但
用户也可修改对象的内容。s n m p d . c o n f文件的示例如下:
在许多s n m p d . c o n f文件中,用户需要填入用户及位置字段(它说明系统的用户及位置),但
d e s c r及o b j i d字段不需作修改。s n m p d . c o n f文件定义的变量及相应的M I B变量如下:
s n m p d . c o m m ( c o m m u n i t y )文件提供认证信息及可访问本地数据库的主机列表。远程主机
访问本地S N M P数据的权限由s n m p d . c o m m文件指定。s n m p d . c o m m文件示例如下:
第3 8章S N M P:简单网络管理协议使用423
下载
©
s n m p d . c o m m文件的每一行包含三个字段:组织名称、远程主机的I P地址及组织的访问权
限,权限可以是R E A D (只读)、W R I T E (可读写)及N O N E (禁止访问)三种形式,可读写表示可
修改M I B数据而不是文件系统。
s n m p d . t r a p文件为当发生自陷时,需向那些主机发送消息。s n m p d . t r a p文件的示例如下:
s n m p d . t r a p文件的每一行包含三个字段:组织名称、I P地址及发送自陷消息的U D P端口。
38.4.2 SNMP命令
U N I X提供一组基于S N M P的命令,使网络管理员可获得M I B的信息或S N M P设备的信息。
确切命令依赖于具体的实现,但大多数S N M P系统都支持表3 8 - 1所示的命令。
表38-1 SNMP命令
命令描述
g e t o n e 使用SNMP get命令获取变量的值
g e t n e x t 使用SNMP getnext命令获取下一个变量的值
g e t i d 获取s y s D e s c r, sysObjectID及s y s U p Ti m e的值
g e t m a n y 获取一组M I B变量的值
s n m p s t a t 获取S N M P数据结构
g e t r o u t e 获取路由信息
s e t a n y 使用SNMP set命令设置变量的值
大多数S N M P命令都需要参数指明设置或读取变量。下面列出了表3 8 - 1所示命令的输出:
没有S N M P命令被认为对用户友好,因为其响应过于简洁以致于难以理解。因此,许多
基于G U I的S N M P网络管理工具渐渐流行。它提供更有效的管理手段并提供易于理解的输出
方式。
基于图形界面的S N M P工具充分利用彩色显示器显示网络实时统计数据。这些工具通常比
较复杂且昂贵。但是,一旦建立,它们将在网络监视及设备管理中发挥重要作用。
S N M P的重要特性之一是它及时报告网络设备故障。使用G U I管理工作站可以在网络拓扑
图中显示各设备的状态。
38.5 Windows与SNMP
Windows NT、Windows 95及Windows 98都在不同程度上支持S N M P。每个操作系统都有
424使用第九部分使用与管理T C P / I P网络
下载
可用的驱动程序可使它成为S N M P代理,某些操作系统如Windows NT和Windows 95/98还支持
管理方代理。下面将介绍每个操作系统如何设置S N M P应用。
38.5.1 Windows NT
Windows NT提供一组S N M P监视服务,它们可像标准服务一样安装。首先双击C o n t r o l
P a n e l (控制面板)当中的N e t w o r k (网络)项,选择S e r v i c e s (服务)页。如果列表中没有S N M P
S e r v i c e s,点击A d d (添加)按钮,从服务列表中选中SNMP Services添加到系统中。从系统文件
中读取一组驱动程序后,弹出含有三个标签页的窗体,用户可在窗体中添加配置信息。
窗体的第一页为SNMP Agent页,如图3 8 - 1所示,用来填入S N M P管理员的联系信息。在页
上部的两个字段填入管理员的位置及姓名。用户也可以不填,但为了网络用户方便与管理员联
系最好填写。页的下半部分显示需使用的S N M P服务。缺省设置对大多数网络均是最优设置。
Tr a p s页如图3 8 - 2所示,用来填入监视的组织名。任何列出的
组织均可作为错误自陷组织。通常,所有的机器均在P u b l i c组织下。
如果用户敲入新的组织名,需要指出S N M P监视设备的I P地址。例
如,用户可将S N M P自陷从“ r e s e a r c h”组织路由到“ r e s e a r c h”
S N M P管理者。
S N M P服务窗体的最后一个标签页为S e c u r i t y页(见图3 8 - 3 )。该
页可对S N M P服务基于组织进行严格的访问控制。页的下半部分的
两个按钮可使用户仅从指定的设备接收消息。
设置完成后,Windows NT重启并激活S N M P服务。
38.5.2 Windows 95、Windows 98和Windows 3.x
大多数Windows 3.x 、Windows 95及Windows 98 SNMP代理基于p u b l i c域或共享域,并可
通过We b搜索引擎找到。Windows SNMP代理都可使用户监视网络,一部分可报告网络故障,
少数允许用户基于Wi n d o w s平台对网络进行管理。
N e t G u a r d i a n是基于Windows 95的流行工具,由l i s b o n大学开发。N e t G u a r d i a n需要T C P / I P
栈Trumpet Wi n S o c k,通常以. Z I P文件发布。解压缩后,不需要与Wi n d o w s内核连接或加载特
第3 8章S N M P:简单网络管理协议使用425
下载
图38-1 SNMP Agent页图38-2 SNMP Traps页
图38-3 SNMP Security页
定的驱动程序,这使它非常容易安装使用。N e t G u a r d i a n的最显著特点是其界面,它可能是用
户看到的最简洁的工具。
N e t G u a r d i a n的主窗体如图3 8 - 4所示,图中显示N e t G u a r d i a n存储的某个网络的拓扑图。机
器上的“X”表示N e t G u a r d i a n无法与该机器建立连接(因为缺省的图为欧洲某网络图。因此,
第一次启动时,机器上都是“ X”)。为使N e t G u a r d i a n查询用户自己的网络,需从N e t菜单上
选择D i s c o v e r选项。它将弹出询问需查找的地址范围的窗口,如图3 8 - 5所示。
图38-4 NetGuardian窗体显示网络拓扑图
当搜索完成后,N e t G u a r d i a n在新的网络图中显示结果。
图3 8 - 6显示仅有三台机器的简单网络。N e t G u a r d i a n通过
P i n g网络中的用户指定范围内的每个I P地址搜索机器。
使用N e t G u a r d i a n简洁的界面,管理员可以检查网络中
所有活跃的机器,可从添加或删除网络图中主机,重新组
织网络图的结构。N e t G u a r d i a n非常容易学习和使用,并且
拥有许多S N M P包缺少的特殊功能(如图形方式显示网络性
能,如图3 8 - 7所示)。
注意用户可从网络的许多站点下载N e t G u a r d i a n,如匿名服务器f t p . f c . u l . p t,路径为
/pub/networking/snmp/netgXXXzip,其中“XXX”表示版本号。
图38-6 包含三台机器的NetGuardian网络图报告网络的活跃状况
426使用第九部分使用与管理T C P / I P网络
下载
图38-5 当搜索网络时,NetGuardian
询问IP地址的范围
图38-7 NetGuardian以图形方式显示网络性能
38.6 小结
S N M P是管理网络设备简单有效的方法。自从1 9 8 8年提出后,不断地复杂化,并且将会被
C M O T所取代。但目前, S N M P仍然是管理系统的选择。S N M P的简单性是它最大的优点,厂
商可花费很小的力气使其产品支持S N M P。对于网络管理员, S N M P几乎是一个完美的工具。
第3 8章S N M P:简单网络管理协议使用427
下载 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值