舜和海鲜 文化西路:SNMPc 全攻略

来源:百度文库 编辑:偶看新闻 时间:2024/04/20 00:17:32
                                                 SNMP基础简介

近来,公司产品开发涉及到SNMP方面的知识, 在此作一些总结,或许对您现在或者将来有用。

在目前越来越复杂的网络环境中,整个环境有各种各样的网络设备,为了能更好的对这些设备进行管理,及早的发现网络中已经存在或未来可能存在的问题,SNMP提供了一种对这些网络设备进行有效管理的技术基础。

一 SNMP简介

SNMP,Simple Network Management Protocol,即简单网络管理协议,,是有IETF(Internet Engineeriing Task Force,互联网工程任务组)定义的一套基于SGMP(Simple Gateway Monitor Protocol,简单网关监视协议)的网络管理协议。以SNMP为技术的网络管理系统(NMS)中,管理工作站利用SNMP进行远程监控管理网络上的所有支持这种协议的设备(如计算机工作站、终端、路由器、Hub、网络打印机等),主要负责监视设备状态、修改设备配置、接受事件警告等。

三 SNMP环境安装配置

SNMP服务安装:

1) 打开"控制面板";
2) 进入"添加与删除程序";
3) 点击"添加与删除Windows组件";
4) 选择"管理和监控工具箱";
5) 点击"详细";
6) 选择"简单网络管理协议(SNMP)",并点击击确定;
7) 点击下一步继续直到完成。

SNMP服务配置:

1) 打开"管理工具";
2) 进入"服务";
3) 选择SNMP Service ;
4) 编辑属性,选择代理标签;
5) 确认Contact和location均被选中;
6) 选择陷井标签;
7) 输入Community Name,默认为public,加入到列表;
8) 在陷井目的地,单击Add,并填入Agent端的IP地址,单击确定;
9) 选择安全标签
10) 单击public编辑,将Community Rightes改为Read Create,单击确定;
11) 设置SNMP Trap Service的启动方式为"自动"
12) 重新启动SNMP Service和SNMP Trap Service。

三 SNMP消息

在OSI模型中,传输层的数据单元也称为数据包(packets)。SNMP采用的是UDP(用户数据报协议)作为其传输层协议,并为SNMP提供网络服务,UDP协议的数据单元称为数据报(datagrams)。因为UDP是一种不可靠的数据报服务,所以并不能保证UDP数据报一定能达到目的,但是掉包问题并不对网络管理产生大的影响。SNMP消息包含两个部分:SNMP报头和协议数据单元PDU(Protocol Data Unit),其中SNMP报头包括SNMP版本号和团体名。SNMP版本号目前有三种:Version1、Version2、Version3。团体标识可以作为SNMP消息的口令,缺省值为"public"。如图1。

图1:SNMP消息格式

SNMP消息有五种类型:

1) Get_Request:Manager端向Agent端发送读取信息的请求;
2) Get_Next_Request:Manager端向Agent端发送读取信息的请求;
3) Get_Response:Agent端对Manager端请求的响应;
4) Set_Request:Manager端向Agent端发送设备设置信息,Agent端可根据设置信息来改变设备状态;
5) Trap:当Agent端发生某些事件时,Agent端主动向Manager端发送陷阱信息,如关机事件。

SNMP消息采用ASN.1定义为:
SNMP-Message∶∶=
 SEQUENCE {
  version INTERER{
      version 1
         },
  community
      public,
 pud
      data
        }

PDU则定义为:
  PDU∶∶=
   CHOICE{
    get_request
      Getrequest_PDU
    get_next_request
      GetNextRequest_PDU
    get_response
      Getresponse_PDU
    set_request
      Setrequest_PDU
    trap
      Trap_PDU
      }
例如Getrequest_PDU定义为:
  GetRequest_PDU∶∶=[0]
   IMPLICIT SEQUENCE{
      Request_ID
        requestid,
      Error_Status,
        errorstatus,
      Error_Index,
        errorindex,
      Varialle_Bindings
        varbildlist
        }

PDU有五种类型:Getrequest_PDU、GetNextRequest_PDU、Getresponse_PDU、Setrequest_PDU和Trap_PDU,分别对应SNMP消息的五种类型。PDU提供两种格式:


第一种格式PDU用于描述Getrequest_PDU、GetNextRequest_PDU、Getresponse_PDU、Setrequest_PDU等四种消息类型,这种格式的PUD分为五个部分:
1) PDU类型值:用于表示PDU类型,0表示Get_Request,1表示Get_Next_Request,2表示Get_Response,3表示Set_Request;
2) 请求ID:由四个字节整数组成,用于请求的唯一编号,以便使响应消息和请求消息匹配;
3) 错误状态:用于表示发生错误,0表示NoError,1表示oobig,2表示NoSuchName,3表示BadValue,4表示ReadOnly,5表示Generr;
4) 错误索引:由一个字节整数组成,用于指出变量表中哪一个变量引起了错误;
5) 变量表:一系列变量名和相应值组成的序偶的序列。

注意,当PDU类型为Getrequest_PDU、etNextRequest_PDU、Getresponse_PDU时,错误状态和错误索引均为0,变量表中的值部分为null。

第二类格式PDU用于Trap_PDU消息类型,这种格式分为七部分:
PDU类型值:用于表示PDU类型,4表示Trap_PDU;
陷阱对象的类型:产生陷阱的被管理对象的类型
陷阱对象的地址:提供产生陷阱的被管理对象的地址
陷阱类型:
陷阱性质:
变量表:同上。

四 网络管理系统工作原理

一个SNMP管理的网络包含三个主要部分:被管理设备、代理和网络管理系统(NMS)。被管理设备就是处于被管理的网络中的多个设备,负责收集和存储管理信息;代理是安装在被管理设备中的软件程序;网络管理系统就是用于监控被管理设备执行状态的软件系统。SNMP进行网络管理时,一般采用Client/Server结构或Manager/Agent结构集中式管理信息的方式,管理工作站为Server端或Manager端,网络中的各个设备为Cient端或Agent端,如下图1。

图2:SNMP网络管理结构

从图2中,我们可以看出Manager端通过162端口进行通讯,而Agent端通过161端口进行通讯。具体的通讯过程是:Manager端向Agent端发送请求(Getrequest消息、GetNextRequest消息和Setrequest消息,这些消息符合SNMP格式要求),Agent端接受到请求之后对Manager端的IP地址进行认证;如果认证失败,Agent端向Manager端的发送Trap异常信息;如果认证通过,Agent端向Manager端的发送Response信息。

五 MIB 管理信息库

在复杂的网络环境中,网络设备的类型各式各样,所以设备的信息也因设备类型不同而不同,为了将这些信息能通过网络管理系统进行管理,必须采用一套标准来描述这些设备的信息,所以SNMP定义了MIB(Management Information Base)。MIB分为标准MIB和私有MIB,标准MIB适用于所有网络设备,而私有的MIB则由设备厂家向有关机构申请后自行定义。MIB采用树状结构,每个节点每个结点分配了一个字符串和一个小整数作为标号,即OID(Object Identifier)。如图3。

图3:MIB结构图

MIB结构树中任一对象的名字就是从根到对象结点的路径上各个节点的标号序列,标号之间用点分隔。如被管理设备中每个网络接口的IP地址信息表示为:iso.org.dod.internet.mgmt.mid.ip,它的数字表示为:1.3.6.1.2.1.4。

标准MIB的基本OID以为1.3.6.1.2.1前缀,而私有的MIB的基本OID以为1.3.6.1.4.1前缀。如果在某一节点下有多个信息,则以列表方式存在,比如IP地址信息中包括子网掩码、网关地址等。

0

 

用SNMPC轻松管理内网:安装扫描篇

作为网管员的我们不可能徒手管理网络,即使是经验丰富的网管也需要有好的网管工具作为辅助手段。而在实际工作中网络的结构和设备的图形化管理是我们最需要的,例如企业网络究竟是怎么构成的,拓扑结构如何等,那么有没有一种工具可以实现网络拓扑的自动扫描和自动绘制功能吗?答案是肯定的,今天就由笔者为各位IT168的读者介绍SNMPC这个工具,通过他可以轻松的实现自动绘制网络结构的功能,下面笔者介绍如何安装SNMPC工具和扫描绘制企业内部网络结构。

    相关链接:用SNMPC轻松管理内网:安装扫描篇
              用SNMPC轻松管理内网:扩展功能篇

    SNMPC功能简介:
    SNMPC内网管理工具是由安奈特中国网络有限公司开发和研制的,目前最新版本是SNMPC 7.0。他是一个安全的分布式的通用网络管理系统平台,直观显示、监控和前瞻性地管理网络。能有效地监控整个网络的基础架构。支持SNMP V3,无比的易用性,对小型或大型网络提供相应的版本。笔者使用的是中小企业版本。(如图1)

图1 点击放大

    SNMPC小档案:
    软件版本:7.0
    软件类型:共享软件
    软件语言:中文版
    适用平台:windows 2000/xp/2003
    软件大小:26.7MB
    软件名称:AT-SNMPc7-CN eval.exe
    下载地址:http://www.alliedtelesyn.com.cn/products/nm/downloads/AT-SNMPc7-CN eval.exe

    我们通过SNMPC工具可以实现以下主要功能——全中文界面,支持多厂商设备,提供主/备冗余服务器支持,支持安全的SNMP v3,多管理器的域管理体系结构,自动网络查找,拓扑生成,支持设备特殊应用,监控设备,服务器、应用服务(TCP)、性能,可伸缩的分布式体系结构,重叠私有IP地址的远程轮询,高级智能事件管理,丰富的事件/告警转发、通知及处理机制,定制MIB表和创建MIB表达式(例如 监控LAN/WAN 利用率),提供详尽的长期网络趋势统计报告,自动学习生成基准线和阈值报警,支持基于Web/打印等方式报表输出,性能的实时表格/图形显示,支持完整的RMON应用集,多种网络工具(Web、Telnet、MIB浏览器、RMON视图、Trap发送器等),多级操作管理权限,用户操作(登录/编辑)事件审计,远程分布式轮循代理选项,WEB方式远程JAVA控制台选项,远程多控制台登录选项,提供可编程接口(API),可作为Windows服务后台运行。扫描网络并绘制拓扑结构:
    SNMPC程序的功能非常强大,我们先介绍他的基本功能:自动扫描网络结构并自动绘制拓扑结构。

    第一步:首先我们启动SNMPC程序,通过“开始->所有程序->SNMPC网络管理系统->启动系统”。

    第二步:启动SNMPC程序后将在桌面任务栏上出现了一个SNMPC程序小图标,我们在其上点鼠标右键选择“登录服务器”。(如图6)

图6

    第三步:出现SNMPC管理控制台登录窗口,默认情况下我们输入服务器IP地址为localhost,因为上面安装服务器端在本机,用户名称为administrator,密码保持默认即可,点“确定”进行登录。(如图7)

图7

    第四步:登录后我们的SNMPC程序将自动根据之前输入的“种子”地址扫描企业内部网络,如果这个开启了SNMP协议的设备是企业的核心设备,那么我们就可以轻松获得企业网络的全部拓扑结构绘制图。(如图8)

图8 点击放大

    第五步:笔者是直接在自己公司的核心设备CISCO 6509上开启SNMP并通过SNMPC程序扫描绘制的,同样绘制出来的拓扑图可以通过放大缩小来查看。(如图9)

图9 点击放大

    第六步:所有图标都是以IP地址信息为名称的,当然我们也可以对其进行修改,改名以便更好的管理,同时左边也将显示出所有网段信息。(如图10)

图10 点击放大

    通过SNMPC程序的自动扫描网络拓扑和自动绘制网络结构功能,我们可以轻松的绘制出网络的结构图,当然各位读者使用SNMPC程序绘制出来的图肯定和笔者的图不同,毕竟各个企业内部网络结构不同,我们把SNMPC程序绘制出来的图可以保存成图片格式的文件,方便我们打印并放大展示。

    总结:
    SNMPC程序的功能还很多,本文介绍的拓扑绘制功能仅仅是冰山一角,在下篇文章中笔者将就SNMPC程序的其他高级功能进行介绍。上期笔者为各位IT168的读者介绍了用SNMPC这个强大的网络管理工具实现对企业内部网络拓扑结构的自动扫描和绘制功能,通过此功能可以清清楚楚的将我们企业内部网络的所有设备体现在一张图中,有了这张图我们就可以利用SNMPC工具的其他功能来管理每个设备了。今天笔者就继续上次的内容为各位介绍SNMPC轻松管理内网的扩展功能。

相关链接:用SNMPC轻松管理内网:安装扫描篇
          用SNMPC轻松管理内网:扩展功能篇

    轻松管理网络设备:

    以前我们都是通过网络设备的地址进行管理的,例如一台路由器的管理IP地址为192.168.1.254,那么我们通过在命令行模式输入telnet 192.168.1.254实现登录和管理该设备的目的,操作界面也都是字符模式,不太好上手。

    现在我们利用SNMPC工具则轻松不少,有了前面扫描绘制出来的网络拓扑结构图后,就可以通过双击任何一个SNMP路由器图标实现自依条件报警功能:

    中小企业至少都有好几台服务器和多个路由交换设备,在实际使用中很可能会遇到例如CPU负载过高,内存占用过大或者磁盘使用空间不足等情况,遇到这些情况时就需要我们这些网管员采取相应的措施进行解决,不过网络设备数量越多,我们网管员越不可能在第一时间发现问题并解决问题,这时让设备能够依据条件进行报警就很有必要了。我们的SNMPC工具恰恰可以实现此功能。

    报警功能可以在产生影响用户问题之前能够接收报警通知的能力是将救火性管理变为真正的网络管理的关键所在。SNMPC是一个具有前瞻性的网络管理系统,能够接收并处理任何厂商设备的SNMP报警。SNMPC也可以通过轮询任何 SNMP变量并将轮询所得到的结果与网管预先定义的阈值相比较,根据比较结果产生相应的阈值报警。内置的自动基准线系统监视轮询统计数据,当出现异常数据模型时产生报警。

    第一步:所有网络事件和报警都在事件日志工具中显示。您可以配置自定义选项卡以只显示特殊子网或设备类型的相关事件。

    第二步:SNMPC还有“正语言”功能的报警系统,如可以用英语或中文表示,且可以将复杂的SNMP故障报警信息转换成网管自己容易理解的告警语句,如“路由器宕机了”等。

    第三步:我们设置完毕报警条件后,当 SNMPC接收到事件后,可以提供不同的通知方式,包括 Email/短信、颜色、鸣叫、报警框、WAV声音或向其它的管理系统转发报警等。(如图2)报警功能可以帮助我们网管员在第一时间发现问题,从而在第一时间解决问题。

图2 点击放大

自定义添加设备:

    之前介绍的SNMPC工具自动扫描拓扑结构是建立在开启了SNMP协议基础上而生成的,不过在实际使用过程中可能有的设备,特别是服务器不可能都开启SNMP协议,因此我们的SNMPC工具是无法自动发现这些设备的,这时就需要我们进行手工添加操作了。我们通过自定义添加设备可以为已经生成的网络拓扑图添加一个新设备,让该拓扑图更加接近实际结构图。我们以添加一个路由器为例进行介绍。

    第一步:在控制台右边的编辑工具栏中选择工具按钮 ,就会打开一个映射对象属性备对话框。

    第二步:输入设备的标志并选择您想用的设备图标。

    第三步:在地址栏输入路由器或服务器的IP地址。如果路由器是用SNMP v1,community是public(许多路由器默认的),就在访问选项卡中输入这些信息。(如图1)

    第四步:在属性选项卡中,选择执行程序项,然后从下拉列表中选择 telnet.exe代替auto.exe。选择确定将设备添加到映射图。

    第五步:设置完毕后图标会被添加在映射图的左上角。接着我们就可以通过按住 CTRL键选择两个设备或网络图标,当两个图标都被选中,用插入链接按钮创建连接。 "设备管理"功能:

    也许在实际使用过程中我们企业的网络设备不一定在SNMPC支持的设备列表中,这时我们通过“设备管理”功能实现对其的管理。
 
    在设备图标上右击,即可访问上面显示的设备菜单。系统菜单是按照设备类型组织的,以易于选择使用。SNMPc是能用的网管平台,设计用于管理任何设备而不管是哪家厂商的。唯一的前提条件是设备必须启用了SNMP。例如要管理一个Windows 2000服务器,就必须先安装Microsoft的SNMP代理。 (如图3)

图3 点击放大 数据统计功能:

    最后我们来介绍下SNMPC软件的最强大功能——数据统计,通过他的数据统计我们可以发现企业网络中存在的问题,从而优化我们的网络,让企业网络更加高效的运行。数据统计功能包括内容很多,下面笔者挑选几个最主要的介绍给大家。

    链路利用率(Link Utilization) :
    通过菜单选择“交换机或路由器->端口利用率(%)”来查看我们线路的利用率,看看运行效率,是否正常工作。(如图4)

图4

    网络往返时延,设备可用性
    通过菜单选择“系统->服务状态(可选择多个设备)”来查看设备的工作情况,看看设备当前的负载状况如何,是否正常工作。(如图5)

图5

    服务器磁盘容量:
    服务器磁盘容量也是我们关心的话题,通过菜单选择“服务器->磁盘驱动器”可以查看服务器当前磁盘使用情况,是否还有剩余空间以及剩余空间是多少。(如图6)

  图6 点击放大

    Cisco CPU利用率:
    CISCO设备是中小企业使用最多的品牌之一,所以SNMPC特别针对CISCO设备的CPU利用率进行了统计。我们选择菜单中的“路由器->Cisco->CPU利用率图表”可以查看CISCO设备的CPU占用情况,了解网络中流量状况,以及判断是否感染蠕虫病毒。(如图7)

  图7

    长期报告:
    以上数据统计都是针对某一时间段或某一时刻的,如果我们希望对网络长期监测得到一个稳定准确的统计报告的话,可以使用SNMPC工具的长期报告功能。(如图8)

图8

    要建立一个趋势报告,要先选中你需要从中记录统计数据的设备。然后选择选择工具(主窗口左边的窗格)下方的趋势选项卡,在SNMPc趋势报告文件上右键单击,选择插入报告,这里可以选择插入报告组,在此报告组上右击选择插入报告即可。最后为要建立的报告命名。(如图9)

图9

    设置完报告后等待一段时间,再通过工具菜单中选择Web报告来查看生成的报告信息,结果信息会以WEB图表的形式体现出来。(如图10)

图10

    长期报告的种类有很多种,包括端口使用率,端口传输速率,服务器磁盘状态,服务器CPU状态,SNMP状况等,这里由于篇幅关系就不详细介绍了,感兴趣的读者可以自行研究。

    总结:

    SNMPC的功能不光局限于本文介绍的这些,他还有很多更强大更实用的功能,本人相信各位网络管理员熟练使用他后,必定可以使自己的工作达到事半功倍的效果。另外SNMPC还有很多功能界面,例如JAVA控制台,事件过滤器,MIB浏览器,用户定制表格等,我们可以自由组合这些界面和控制台实现更多更实用更适合自己企业的功能。

    相关链接:用SNMPC轻松管理内网:安装扫描篇
              用SNMPC轻松管理内网:扩展功能篇