首页
博客
研修院
VIP
APP
问答
下载
社区
推荐频道
活动
招聘
专题
打开CSDN APP
Copyright © 1999-2020, CSDN.NET, All Rights Reserved
打开APP
华三SNMP配置详解 转载
2021-07-08 18:42:40
2点赞
Networker要开发
码龄5年
关注
一、SNMP配置
1.1 SNMP简介
SNMP(Simple Network Management Protocol,简单网络管理协议)是网络中管理设备和被管理设备之间的通信规则,它定义了一系列消息、方法和语法,用于实现管理设备对被管理设备的访问和管理。SNMP具有以下优势:
自动化网络管理。网络管理员可以利用SNMP平台在网络上的节点检索信息、修改信息、发现故障、完成故障诊断、进行容量规划和生成报告。
屏蔽不同设备的物理差异,实现对不同厂商产品的自动化管理。SNMP只提供最基本的功能集,使得管理任务分别与被管设备的物理特性和下层的联网技术相对独立,从而实现对不同厂商设备的管理,特别适合在小型、快速和低成本的环境中使用。
1.1.1 SNMP的工作机制
SNMP网络元素分为NMS和Agent两种。
NMS(Network Management Station,网络管理站)是运行SNMP客户端程序的工作站,能够提供非常友好的人机交互界面,方便网络管理员完成绝大多数的网络管理工作。
Agent是驻留在设备上的一个进程,负责接收、处理来自NMS的请求报文。在一些紧急情况下,如接口状态发生改变等,Agent也会主动通知NMS。
NMS是SNMP网络的管理者,Agent是SNMP网络的被管理者。NMS和Agent之间通过SNMP协议来交互管理信息。
SNMP提供四种基本 *** 作:
Get *** 作:NMS使用该 *** 作查询Agent的一个或多个对象的值。
Set *** 作:NMS使用该 *** 作重新设置Agent数据库(MIB,Management Information Base)中的一个或多个对象的值。
Trap *** 作:Agent使用该 *** 作向NMS发送报警信息。
Inform *** 作:NMS使用该 *** 作向其他NMS发送报警信息。
1.1.2 SNMP的协议版本
目前,设备的SNMP Agent支持SNMP v1、SNMP v2c和SNMP v3三种。
SNMP v1采用团体名(Community Name)认证。团体名用来定义SNMP NMS和SNMP Agent的关系。如果SNMP报文携带的团体名没有得到设备的认可,该报文将被丢弃。团体名起到了类似于密码的作用,用来限制SNMP NMS对SNMP Agent的访问。
SNMP v2c也采用团体名认证。它在兼容SNMP v1的同时又扩充了SNMP v1的功能:它提供了更多的 *** 作类型(GetBulk和InformRequest);它支持更多的数据类型(Counter64等);它提供了更丰富的错误代码,能够更细致地区分错误。
SNMP v3提供了基于用户的安全模型(USM,User-Based Security Model)的认证机制。用户可以设置认证和加密功能,认证用于验证报文发送方的合法性,避免非法用户的访问;加密则是对NMS和Agent之间的传输报文进行加密,以免被窃听。通过有无认证和有无加密等功能组合,可以为SNMP NMS和SNMP Agent之间的通信提供更高的安全性。
NMS和Agent的SNMP版本匹配,是它们之间成功互访的前提条件。Agent可以同时配置多个版本,与不同的NMS交互采用不同的版本。
1.1.3 MIB简介
任何一个被管理的资源都表示成一个对象,称为被管理的对象。MIB(Management Information Base,管理信息库)是被管理对象的集合。它定义了对象之间的层次关系以及对象的一系列属性,比如对象的名字、访问权限和数据类型等。每个Agent都有自己的MIB。NMS根据权限可以对MIB中的对象进行读/写 *** 作。
MIB是以树状结构进行存储的。树的节点表示被管理对象,它可以用从根开始的一条路径唯一地识别(OID)。如图1-2所示,被管理对象B可以用一串数字{1.2.1.1}唯一确定,这串数字是被管理对象的OID(Object Identifier,对象标识符)。
1.3 配置SNMP日志
1.3.1 SNMP日志介绍
SNMP日志功能将记录NMS对SNMP Agent的GET和SET *** 作。当进行GET *** 作时,Agent会记录NMS用户的IP地址、GET *** 作的节点名和节点的OID。当进行SET *** 作时,Agent会记录NMS用户的IP地址、SET *** 作的节点名、节点的OID、设置的值以及SET *** 作返回的错误码和错误索引。这些日志将被发送到设备的信息中心,级别为informational,即作为设备的一般提示信息。通过设置信息中心的参数,最终决定SNMP日志的输出规则(即是否允许输出以及输出方向)。
SNMP日志记录GET请求、SET请求和SET响应信息,不记录GET响应信息。
1.3.2 开启SNMP日志功能
[HX-A]snmp-agent log{all | get-operation | set-operation } 打开SNMP日志开关
[HX-A]info-center source ? 配置SNMP日志输出规则,缺省情况下,SNMP日志只会输出到日志主机(loghost)和日志文件(logfile)方向,如果要输出到别的方向(比如控制台、监视终端等)需要使用该命令配置
1.4 配置SNMP Trap
Trap是Agent主动向NMS发送的信息,用于报告一些紧急的重要事件(如被管理设备重新启动等)。Trap报文有两种:通用Trap和企业自定义Trap。设备支持的通用Trap包括authentication、coldstart、linkdown、linkup和warmstart五种,其它均为企业自定义Trap。企业自定义Trap由模块生成。因为Trap信息通常较多,会占用设备内存,从而影响设备性能,所以建议用户根据需要开启指定模块的Trap功能,生成相应的Trap报文。
开启Trap功能后,相应模块生成的Trap报文将被发送到设备的信息中心。信息中心有七个输出方向,缺省情况下,允许所有模块的所有Trap信息发往控制台(console)、监视终端(monitor)、日志主机(loghost)和日志文件(logfile);允许所有模块的高于等于warnings级别的Trap信息发往告警缓冲区(trapbuffer)和SNMP模块(snmpagent);日志缓冲区(logbuffer)方向不能发送Trap信息。可以根据各模块生成的Trap信息的级别设置信息中心参数,最终决定Trap报文的输出规则(即是否允许输出以及输出方向)。有关信息中心的配置请参见“信息中心配置”。
[HX-A]snmp-agent trap enable ?缺省情况下,各模块的Trap功能处于开启状态
[HX-A]int g1/0/20进入接口视图
[HX-A-GigabitEthernet1/0/20]enable snmp trap updown 缺省情况下,端口下端口状态变化的Trap功能处于开启状态
1.4.2 配置Trap报文发送参数
1. 配置准备
如果要将Trap发送给NMS,则需要进行以下配置准备:
完成SNMP基本配置(包括版本设置,如果使用SNMP v1和v2c版本需要设置团体名;如果使用SNMP v3版本需要设置用户名和MIB视图)。
设备与NMS建立连接,能够互相 *** 作。
2. 配置过程
当Trap报文发送到SNMP模块后,SNMP模块将Trap报文存在消息队列里,用户可以设置该队列的长度、Trap报文在队列里的保存时间,也可以将报文发送给指定的目标主机(通常为NMS)等。
如果要将Trap信息发送给NMS,该步骤为必选,并将ip-address指定为NMS的IP地址
[HX-A]snmp-agent target-host trap address udp-domain 10.1.1.254 udp-port 22 params securityname 32
[HX-A]snmp-agent trap source ?设置发送Trap报文中的源地址
[HX-A]snmp-agent trap if-mib link extended 对RFC定义的标准linkUp/linkDown Trap报文进行私有扩展
[HX-A]snmp-agent trap queue-size ? 设置Trap报文发送队列的长度
[HX-A]snmp-agent trap life 60 设置Trap报文的保存时间,缺省情况下,Trap报文的保存时间为120秒
1.5 SNMP显示和维护
在完成上述配置后,在任意视图下执行display命令,均可以显示配置后SNMP的运行情况,通过查看显示信息,来验证配置的效果。
复制代码
[HX-A]display snmp-agent sys-info [ contact | location | version ]* 显示系统维护联络信息、系统位置信息及SNMP版本信息
[HX-A]display snmp-agent statistics 显示SNMP报文统计信息
[HX-A]display snmp-agent local-engineid 显示设备的SNMP实体引擎ID
[HX-A]display snmp-agent group 显示SNMP组信息
[HX-A]display snmp-agent trap queue 显示Trap消息队列的基本信息
[HX-A]display snmp-agent trap-list 显示系统当前可以发送Trap消息的模块及其Trap消息的使能状态
[HX-A]display snmp-agent usm-user ? 显示SNMP v3用户信息
[HX-A]display snmp-agent community ? 显示SNMP v1或SNMP v2c团体信息
[HX-A]display snmp-agent mib-view ? 显示MIB视图的信息
复制代码
1.6 SNMP v1/v2c典型配置举例
1. 组网需求
NMS与Agent通过以太网相连,NMS的IP地址为1.1.1.2/24,Agent的IP地址为1.1.1.1/24。
NMS通过SNMP v1或者SNMP v2c对Agent进行监控管理,Agent在故障或者出错的时候能够主动向NMS报告情况。
2. 组网图
图1-3 配置SNMP v1/v2c组网图
复制代码
[H3C]int GE1/0/1
[H3C-GigabitEthernet1/0/1]port link-mode route二层接口改成三层接口
[H3C-GigabitEthernet1/0/1]ip address 1.1.1.1 24 配置IP地址和掩码
设置SNMP基本信息,包括版本、团体名。
[H3C]snmp-agent sys-info version v1 v2c
[H3C]snmp-agent community read public
[H3C]snmp-agent community write private
设置交换机的联系人和位置信息,以方便维护。
[H3C]snmp-agent sys-info contact Mr.zeng-tel:0813
[H3C]snmp-agent sys-info location telephone-closet,3rd-floor
允许向网管工作站(NMS)1.1.1.2/24发送Trap报文,使用的团体名为public。
[H3C]snmp-agent trap enable
[H3C]snmp-agent target-host trap address udp-domain 1.1.1.2 params securityname public v1
snmp-agent target-host命令中的指定的版本必须和NMS上运行的SNMP版本一致,如果NMS上运行的是SNMP v2c版本,则需要将snmp-agent target-host命令中的版本参数设置为v2c。否则,网管站将收不到Trap信息。
复制代码
(2) 配置NMS
在使用SNMP v1/v2c版本的NMS上需要设置“只读团体名”和“读写团体名”。另外,还要设置“超时”时间和“重试次数”。用户可利用网管系统完成对设备的查询和配置 *** 作,查看上面配置命令。
1.7 SNMP v3典型配置举例
具体配置可以参考华三官网配置信息:
http://www.h3c.com/cn/d_201108/723419_30005_0.htm
原文链接:https://www.cnblogs.com/aqicheng/p/12745295.html
打开CSDN,阅读体验更佳
SNMP针对思科、华为、华三常用OID整理_WhiteLie777的博客_snmp...
Asn1Mib网页库:http://mibs.snmplabs.com/asn1/ OID便捷查询(树结构):http://oid-info.com/ 文字/OID查询:http://cric.grenoble.cnrs.fr/Administrateurs/Outils/MIBS/ 通用OID 下面截图均以思科Catalyst 3750series为例子 物理...
H3C交换机SNMP配置详解_人间岁月戏白头的博客
Undo snmp-agent usm-user v3 user-name group-name [engineid engine-id/local] 6. 配置管理员的标识及联系方法(syscontact) Syscontact是是mib ii中system组的一个管理变量,内容为被管理设备的标识及联系方法,可以配置此参数,将重要...
华为交换机配置SNMP
sysContact是描述系统维护联系信息的字符串,设备维护人员可以利用维护信息了解该设备的生产厂商等信息
继续访问
SNMP的配置开启及H3C设备如何配置SNMP协议
SNMP的配置开启及H3C设备如何配置SNMP协议
h3c交换机snmp配置、h3c交换机开启snmp、h3c snmp配置实例
主要介绍了h3c交换机snmp配置、h3c交换机开启snmp、h3c snmp配置实例,需要的朋友可以参考下
H3C交换机如何配置SNMP协议?
使用telnet 登陆设备system-viewsnmp-agentsnmp-agent community read publicsnmp-agent sys-info...
继续访问
华三snmp3配置
snmp-agent /开启SNMP协议/ snmp-agent local-engineid 0000000000 /系统自动生成,无需配置/ snmp-agent community read h3c acl 2001 /只读属性为h3c 匹配adc 2001/ snmp-agent community write h3c acl 2001 /可写属性为h3c 匹配adc 2001/ snmp-agent sys-info version v3 /配...
继续访问
热门推荐 SNMP基本配置实例
转载自http://bbs.51cto.com/thread-878314-1.html SNMP的基本配置实例 SNMP v1/v2典型配置 组网需求 NMS与Agent通过以太网相连,NMS的IP地址为1.1.1.2/24,Agent的IP地址为1.1.1.1/24。 NMS通过SNMP v1或者SNMP v2c对Agent进行监控管理,Agent在故障或者出错的时候能够主动向N...
继续访问
华三交换机snmp配置
snmp-agent snmp-agent local-engineid 800063A280305F776424A300000001 snmp-agent community write private snmp-agent community read public snmp-agent sys-info version all
继续访问
h3c服务器snmp协议开启,华三核心交换机如何开启snmp。
H3C S9500交换机SNMP功能的配置一、组网需求:如下组网中,用户通过PC上的网管软件Quidview对交换机S9500-A进行管理。二、组网图三、配置步骤:软件版本:S9500交换机全系列软件版本硬件版本:S9500交换机全系列硬件版本分别对SNMP V1/V2C/V3版本的配置进行分析SNMP V1配置1)全局使能snmp-agent[S9500-A]snmp-agent2)配置snmp...
继续访问
h3c交换机划分vlan配置_【干货】H3C交换机各种配置,你都会吗?
H3C 交换机常用配置命令1、配置主机名[H3C]systemname H3C2、配置console口密码#进入系统视图。 system-view#进入AUX用户界面视图。[H3C] user-interface aux 0#设置通过Console口登录交换机的用户进行Password认证。[H3C-ui-aux0] authentication-mode password#设置用户的认...
继续访问
snmp配置(华为,华三,juniper,爱立信)
snmp配置(华为,华三,juniper,爱立信)
继续访问
H3C交换机SNMP配置详解
H3C交换机SNMP配置 1.启动/关闭SNMP Agent服务 在系统视图模式下: 启用:snmp-agent 关闭:undo snmp-agent 注:缺省情况下snmp agent是关闭的 2. 使能或禁止SNMP相应版本 ...
继续访问
SNMP配置文件详解及配置
snmp配置
继续访问
最新发布 snmp协议详解
snmp协议是广泛应用于TCP/IP网络的网络管理标准协议,该协议能够支持网络管理系统,用以监测连接到网络上的设备是否有任何引起管理上关注的情况。snmp协议采用轮询机制,提供最基本的功能集,适合小型、快速、低价格的环境使用,而且snmp协议以用户数据报协议(UDP)报文为承载,因而受到绝大多数设备的支持,同时保证管理信息再任意两点传送,便于管理员在网络上的任何节点检索信息,进行故障排查。snmp协议有三个版本:SNMPv1、SNMPv2c和SNMPv3,我们可以根据情况选择配置一个或多个版本。
继续访问
H3C交换机SNMP配置
配置 Agent .# 配置 Agent 的 IP 地址为 1.1.1.1/24(自己电脑的IP或者需要获取SNMP信息的服务器IP),并确保 Agent 与 NMS 之间路由可达。(配置步骤略) # 设置 SNMP 基本信息,包括版本、团体名。 system-view [Sysname] snmp-agent sys-info version v1 v2c [Sysname] sn...
继续访问
h3csnmp管理命令_华为H3C交换机SNMP配置命令
(1) snmp-agentsys-info contact设置管理员的标识及联系邮箱方法,请把替换为你要设置成的值,下同。这个值初始是HuaWeiBeiJing China,用指令display current-configuration可以在当前执行的配置的靠末尾看到该项。(2) snmp-agent sys-info location设置交换机的位置信息,这项初始没有设置。(3) snmp-...
继续访问
H3C配置SNMP
SNMP网络管理 [Quidway]snmp-agent 启动代理功能 [Quidway]snmp-agent community read public 配置读团体名 [Quidway]snmp-agent community write private 配置写团体名 [Quidway]snmp-agent sys-info version all 配置SNMP版本 [Quidway]snmp-agent trap enable 开启告警功能 [Quidway]snmp-agent target
继续访问
H3C SNMPv3 配置
1)H3C SNMPv3 配置 snmp-agent mib-view included MIB-2 mib-2 snmp-agent group v3 mygroup read-view MIB-2 noAuthNoPriv : snmp-agent usm-user v3 myuser mygroup authNoPriv: snmp-agent usm-user v3 m
继续访问
snmp的团体名配置_华三SNMP配置详解
一、SNMP配置1.1 SNMP简介SNMP(Simple Network Management Protocol,简单网络管理协议)是网络中管理设备和被管理设备之间的通信规则,它定义了一系列消息、方法和语法,用于实现管理设备对被管理设备的访问和管理。SNMP具有以下优势:自动化网络管理。网络管理员可以利用SNMP平台在网络上的节点检索信息、修改信息、发现故障、完成故障诊断、进行容量规划和生成报...
继续访问
h3c snmp配置实例_03-H3C_SNMP典型配置举例
本文档介绍了SNMP功能典型配置举例。本文档不严格与具体软、硬件版本对应,如果使用过程中与产品实际情况有差异,请参考相关产品手册,或以设备实际情况为准。本文档中的配置均是在实验室环境下进行的配置和验证,配置前设备的所有参数均采用出厂时的缺省配置。如果您已经对设备进行了配置,为了保证配置效果,请确认现有配置和以下举例中的配置不冲突。本文档假设您已了解SNMP特性。如本举例是在S10500-CMW71...
继续访问
华三snmp配置
snmp
h3c
写评论
评论
36
2
踩
分享
在SNMP中,SNMP管理模型包含四个组成部分:1)SNMP NMS:SNMP管理站,利用SNMP协议对网络设备进行管理和监控的系统;
2)SNMP Agent:SNMP代理,是运行在被管设备上的软件模块,用于维护被管设备的信息数据(即MIB),还负责接收、处理、响应来自NMS的请求报文,也可以主动发送一些通知报文给NMS;
3)SNMP协议:规定NMS和Agent之间是如何交换管理信息的应用层协议,以GET、SET方式替代了复杂的命令集,事先网管需求;
4)MIB:管理信息库,每个Agent都有自己的MIB库。MIB是一种对象数据库,由设备所维护的被管理对象组成。
LZ装了Net-SNMP把你可以关闭Net-SNMP服务或者直接卸载Net-SNMP
不过留着也无妨
这是个snmp服务的持久化对象,就是net-snmp服务状态在关机后得以保存,差不多可以想象成是个备份,没有什么危害的
针对目前IP网络管理系统中管理信息的收集所存在的不足之处,文中设计了一种基于RMON的网络探测器并给出了具体的实现方案;该探测器充分利用一些现有的免费开发工具包,并可以有效地解决这些问题。
关键词 网络探测器 网络管理 远程监视
1 引言
在一个网络管理系统中,网管信息的收集是一项最基本的任务,它是实现各种复杂的网络管理功能的基础。在本网管系统的基本实现中,是依赖于管理站来采集网络中的各种信息,并对采集到的信息进行分析和处理,这种方式基本上能够满足多数网络的管理需求,然而,它也存在一些不足之处。
(1)所有网管信息的采集全部依赖于中心的管理站,对管理站的处理能力有较高的要求,同时,由于各种原始的网管信息都需要汇集到管理站,就会带来管理站四周较大的网络流量,容易造成网络的阻塞;
(2)对于一些带有防火墙的虚拟网,位于其外部的管理站无法访问到其内部的网络,因而也就无法对其进行监视与管理;
(3)管理站在信息采集的时候,主要是利用SNMP(简单网络管理协议)和各个网络设备进行通信,获得各设备的网管信息。然而,这些信息主要是关于设备自身的,而关于整个网络的总体信息则比较缺乏。
“网络探测器”正是为了有效解决上述问题而提出的。
在本网管系统中,网络探测器是放置在一个局域网内部的硬件装置,它可以按照预定的配置信息,对该局域网内部的网络信息进行收集和统计,并对局域网的工作状况进行监视;同时,提供一定的接口,供管理站与之进行通信,获得它的网管信息,并对它进行配置与管理。 2 网络探测器原理
2.1 网络数据包的侦听
在以太网上,任何一个主机发出的数据包都是在共享的以太网传输介质上进行传输的,每个数据包的包头部分都包含了源地址和目的地址。一般情况下,局域网上各台主机的网卡负责检查每一个数据包,如果发现其目的地址是本机,则接收该数据包并向上层传递,以进行下一步的处理;如果目的地址不是本机,则忽略它。
在一些特殊的情况下,需要让一台主机能够接收所有的数据包,即进行网络数据包的“侦听”,这时,通过对网卡进行设置,可以让该主机的网卡工作在“混杂模式”下,则不论数据包的目的地址是否是本机,都能够截获并传递给上层进行处理。
对于截获的数据包,进行进一步的分析处理,就能够得到数据包的一些基本属性,如包类型、包大小、目的地址、源地址等,这样,就可以在此基础上进行分析和统计。
2.2 SNMP——简单网络管理协议
SNMP是TCP/IP网络上的一个重要的网络管理协议,能够用于监控和管理网络设备,SNMP规范定义了管理站与网络设备之间交换管理信息的协议、管理信息的结构框架、通用的管理信息库MIB等。
SNMP是网络管理系统的基础,本网管系统主要基于SNMP来从各个网络设备获得各种网络管理信息,并在对它们进行进一步分析处理后,提供各种网络管理功能。
在网络探测器的实现中,我们将使用SNMP规范来实现它和管理站的通信,即在网络探测器上实现一个具有完整功能的SNMP Agent,通过SNMP来向管理站提供各种网管信息。网络探测器支持RMON MIB,主要提供整个局域网有关的统计信息。
2.3 RMON——远程监视
RMON(Remote Network Monitoring)规范是SNMP的一个重要增强,它定义了一种远程监视MIB来作为MIB-II的补充,为网络管理站提供了至关重要的网络信息。RMON可以把子网当作一个整体来监视,提供关于整个子网的一些统计信息。
RMON本质上是定义了一套MIB规范,其作用是定义标准的网络监视功能和接口,使基于SNMP的管理站和RMON探测器之间能够通信。一般说来,RMON提供了一种有效且高效的方法来监视子网行为。
RMON规范主要包括在两个重要RFC文档中:RFC 1757定义了RMON1, RFC 2021定义了RMO- N2。
RMON1主要工作在MAC层,能够监视和它相连的LAN内的所有流量,捕获所有MAC层的帧,从这些帧中读取MAC层的源地址和目的地址,并进行有关的各种分析和统计。
RMON2是RMON1的扩充,RMON2工作在MAC层之上,能够从OSI模型的第3层到第7层对数据包进行解析,监视协议流量,例如,探测器能够基于网络层协议和地址(包括IP)来监视流量。
RMON规范定义的MIB库结合在MIB-II中,其子树标识为16。RMON1定义了10个组,RMON2在RMON1的基础上进行了简单扩充,添加了9个新的组。
3 系统总体设计
3.1 基本设计思想
从本质上讲,网络探测器是一个支持RMON规范的SNMP Agent,其主要任务包括:
(1)采集、分析和统计局域网的各种有用信息,按照RMON规范对这些信息进行组织;
(2)实现SNMP Agent,提供标准的SNMP接口,供管理站从它获得网络管理信息。
网络探测器底层的平台是嵌入式Linux系统,该系统具有网络模块,可以接入以太局域网。具体的平台要求是:
硬件系统平台:性能较高,处理速度相对较快,内存容量较大,带有网络模块;
*** 作系统平台:支持网络功能,能够接入以太网,提供C++编译开发工具。
在本网络探测器的实现时,考虑到运行效率、硬件成本、使用方便性等各方面的因素,做了以下限定:
(1)针对目前最常见的以太网环境;
(2)有一个接口使其仅能连接到一个子网,这样可使得系统简单有效、易于安装配置;
(3)全部MIB对象存放在内存中,提高运行效率;
(4)有选择地实现一些重要的MIB组;RMON是一个功能非常强大的MIB库,能够为管理站提供详细的网络管理信息,然而,在一般应用中都不大可能对所有的SNMP MIB组加以实现。
3.2 系统基本体系结构
图2给出了本网络探测器的基本体系结构。网络探测器包括以下一些基本组成模块:网络侦听、数据包分析、分类统计计数、RMON MIB库、SNMP处理以及Trap发送等。
探测器系统中,各个功能模块的主要功能如下:
网络侦听模块负责从网络上截获所有的数据包;网络探测器连接在特定局域网上,它能够对该局域网上传输的所有数据包进行截获,然后提交给上层模块进行分析处理。
数据包分析模块对截获的数据包根据数据包的类型、源地址、目的地址、包大小等基本信息逐个进行分析。
数据包分析模块在对数据包进行分析后,根据数据包的特性,调用特定的分类统计计数模块对该包进行统计计数,分类统计计数模块按照MIB库的规范要求,将统计结果更新到有关的一些MIB对象中。
RMON MIB库用来保存各种RMON MIB对象(实际上还包括MIB-II的System组和Interface组),这些对象按照RMON MIB规范进行组织,这里的MIB库是一个概念上的数据库,实际上各种信息都组织在内存中,以提高访问效率。
SNMP处理模块负责实现SNMP访问接口,接收SNMP请求(包括Get、GetRequest、Set等 *** 作),对它进行分析处理,并按照要求访问RMON MIB库,从中取得需要的MIB对象值并返回给请求者(对Get、GetRequest而言),或者设置有关的MIB对象值(对Set *** 作而言)。
Trap发送模块负责在发生特定事件时,主动发送Trap信息给预定的管理站;在分类统计计数模块对MIB对象的值进行计数时,如果发现特定值超过了预定的范围,则启动Trap发送模块,按照预定策略发送Trap信息给管理站。
4 实现技术
4.1 SNMP Agent的实现
目前,已经有一些可用的SNMP Agent开发工具包,它们提供一些基本的框架平台,实现了Agent的通用功能,在其基础上,开发者可以集中精力进行具体逻辑功能的实现,如MIB对象的数据采集等。这样有利于简化开发工作,加快开发进程。常见的SNMP Agent开发工具包有:Agent++、net-snmp、WinSnmp API(适用于Windows平台)等。
为了方便探测器Agent的实现,我们选择了Agent++平台,它是免费的且源代码公开。
Agent++是一套用于开发SNMP Agent的C++库,它建立在SNMP++的基础之上。Agent++提供了完整的协议处理框架,提供了标量对象和表对象等MIB对象的基类,通过继承用户可以方便地定义MIB对象。Agent++具有以下一些特点:
(1)功能强大,能够实现各种复杂的MIB对象;
(2)简单易用,开发人员无需深入了解底层的SNMP处理,仅使用一些简单的类和接口,即可快速实现带有各种MIB对象的Agent;
(3)扩展性强,方便定义和实现新的功能;
(4)可移植性好,代码可以方便地移植到Windows、UNIX、Linux等平台上;
(5)支持SNMPv1和SNMPv2c;
(6)支持多线程处理,在线程中处理SNMP请求,可以进行并发的处理;
(7)支持MIB对象的持久保存,可将MIB对象保存到硬盘上,并可以从硬盘装载;
(8)具有详细的日志功能。
4.2 网络数据包侦听的实现
网络数据包的侦听也可以使用一些现成的开发包来实现,winpcap和libpcap是比较著名的开发包,提供了较强的网络数据包截获功能,其中,winpcap运行在Windows平台上,libpcap运行在UNIX和Linux平台上。
本项目使用libpcap作为数据包侦听部分的开发包。
libpcap(Packet Capture Library),即数据包捕获函数库。在网络包抓取中libpcap是非常常用的一个库,著名的tcpdump就是用它来实现的。libpcap是一个与实现无关的访问 *** 作系统所提供的分组捕获函数库,用于访问数据链路层。这个库为不同的平台提供了一致的C函数编程接口,在安装了 libpcap 的平台上,以 libpcap 为接口写的程序、应用,能够自由地跨平台使用。它支持多种 *** 作系统。
libpcap 结构简单,使用方便;它提供了20多个API封装函数,我们利用这些API函数即可完成本网络探测器所需的网络数据包监听功能。
5 结束语
针对网络管理系统的管理信息收集所存在的一些特殊问题,本文设计并实现一种网络探测器。在一个网络管理应用系统中,要根据具体情况决定是否为一些局域网设置网络探测器。所以网络探测器是对本网络管理系统基本实现的补充,它可以使得本网管系统功能更加完善。实践证明本实现方案简单实用,达到了预期的目的。
参 考 文 献
[1] Stallings W,胡成松, 汪凯译 . SNMP网络管理,北京:中国电力出版社,2001
[2] RFC 1213-1991, Management Information Base for Network Management of TCP/IP-based internets: MIB-II
[3] RFC 1757-1995, Remote Network Monitoring Management Information Base
[4] RFC 2021-1997, Remote Network Monitoring Management Information Base II
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)