当前位置:文档之家› 要了解MIB及OID得从SNMP协议说起

要了解MIB及OID得从SNMP协议说起

要了解MIB及OID得从SNMP协议说起

SNMP协议详解

简单网络管理协议(SNMP:Simple Network Management Protocol)是由互联网工程任务组(IETF:Internet Engineering Task Force )定义的一套网络管理协议。该协议基于简单网关监视协议(SGMP:Simple Gateway Monitor Protocol)。利用SNMP,一个管理工作站可以远程管理所有支持这种协议的网络设备,包括监视网络状态、修改网络设备配置、接收网络事件警告等。虽然SNMP开始是面向基于IP的网络管理,但作为一个工业标准也被

成功用于电话网络管理。

1. SNMP基本原理

SNMP采用了Client/Server模型的特殊形式:代理/管理站模型。对网络的管理与维护是通过管理工作站与SNMP代理间的交互工作完成的。每个SNMP从代理负责回答SNMP管理工作站(主代理)关于MIB定义信息的各种查询。下图10是NMS公司网络产品中SNMP协议的实

现模型。

SNMP代理和管理站通过SNMP协议中的标准消息进行通信,每个消息都是一个单独的数据报。SNMP使用UDP(用户数据报协议)作为第四层协议(传输协议),进行无连接操作。SNMP 消息报文包含两个部分:SNMP报头和协议数据单元PDU。数据报结构如下图

版本识别符(version identifier):确保SNMP代理使用相同的协议,每个SNMP代理都直

接抛弃与自己协议版本不同的数据报。

团体名(Community Name):用于SNMP从代理对SNMP管理站进行认证;如果网络配置成要求验证时,SNMP从代理将对团体名和管理站的IP地址进行认证,如果失败,SNMP从代理将

向管理站发送一个认证失败的Trap消息

协议数据单元(PDU):其中PDU指明了SNMP的消息类型及其相关参数。

2. 管理信息库MIB

IETF规定的管理信息库MIB(由中定义了可访问的网络设备及其属性,由对象识别符(OID:Object Identifier)唯一指定。MIB是一个树形结构,SNMP协议消息通过遍历MIB树形目

录中的节点来访问网络中的设备。

下图给出了NMS系统中SNMP可访问网络设备的对象识别树(OID:Object Identifier)结

构。

下图给出了对一个DS1线路状态进行查询的OID设置例子。

3. SNMP的五种消息类型

SNMP中定义了五种消息类型:Get-Request、Get-Response、Get-Next-Request、

Set-Request、Trap

(1)Get-Request 、Get-Next-Request与Get-Response

SNMP管理站用Get-Request消息从拥有SNMP代理的网络设备中检索信息,而SNMP代理则用Get-Response消息响应。Get-Next-Request用于和Get-Request组合起来查询特定的表对象中的列元素。如:首先通过下面的原语获得所要查询的设备的接口数:{iso org(3) dod(6) internet(1) mgmt(2) mib(1) interfaces(2) ifNumber(2)}

后再通过下面的原语,进行查询(其中第一次用Get-Request,其后用Get-Next-Request):{iso org(3) dod(6) internet(1) mgmt(2) mib(1) interfaces(2) ifTable(2)}

(2)Set-Request

SNMP管理站用Set-Request 可以对网络设备进行远程配置(包括设备名、设备属性、删除

设备或使某一个设备属性有效/无效等)。

(3)Trap

SNMP代理使用Trap向SNMP管理站发送非请求消息,一般用于描述某一事件的发生。

SNMP管理信息库MIB

管理信息库MIB指明了网络元素所维持的变量(即能够被管理进程查询和设置的信息)。MIB 给出了一个网络中所有可能的被管理对象的集合的数据结构。SNMP的管理信息库采用和域名系统DNS相似的树型结构,它的根在最上面,根没有名字。下图画的是管理信息库的一部分,它又称为对象命名(objectnamingtree)。

管理信息库的对象命名举例

对象命名树的顶级对象有三个,即ISO、ITU-T和这两个组织的联合体。在ISO的下面有4个结点,其中的饿一个(标号3)是被标识的组织。在其下面有一个美国国防部(Department of Defense)的子树(标号是6),再下面就是Internet(标号是1)。在只讨论Internet

中的对象时,可只画出Internet以下的子树(图中带阴影的虚线方框),并在Internet 结点旁边标注上{1.3.6.1}即可。在Internet结点下面的第二个结点是mgmt(管理),标号是2。再下面是管理信息库,原先的结点名是mib。1991年定义了新的版本MIB-II,故结点名现改为mib-2,其标识为{1.3.6.1.2.1},或{Internet(1) .2.1}。这种标识为对象标

识符。

最初的结点mib将其所管理的信息分为8个类别,见表1。现在de mib-2所包含的信息类

别已超过40个。

表1 最初的结点mib管理的信息类别

应当指出,MIB的定义与具体的网络管理协议无关,这对于厂商和用户都有利。厂商可以在产品(如路由器)中包含SNMP代理软件,并保证在定义新的MIB项目后该软件仍遵守标准。用户可以使用同一网络管理客户软件来管理具有不同版本的MIB的多个路由器。当然,一个没有新的MIB项目的路由器不能提供这些项目的信息。

这里要提一下MIB中的对象{1.3.6.1.4.1},即enterprises(企业),其所属结点数已超过3000。例如IBM为11.3.6.1.4.1.2},Cisco为{1.3.6.1.4.1.9},Novell为

{1.3.6.1.4.1.23}等。世界上任何一个公司、学校只要用电子邮件发往iana-mib@https://www.doczj.com/doc/645593615.html,

进行申请即可获得一个结点名。这样各厂家就可以定义自己的产品的被管理对象名,使它能

用SNMP进行管理。

SNMP(简单网络管理协议)

SNMP(Simple Network Management Protocol,简单网络管理协议) 通信线路进行管理。SNMP的目标是管理互联网Internet上众多厂家生产的软硬件平台,现在SNMP已经出到第三个版本的协议,其功能较以前已经大大地加强和改进了。说白了就是一网管系统。网络管理功能一般分为性能管理,配置管理,安全管理,计费管理和故障管理等五大管理功能。 Windows NT是纯32位操作系统,采用先进的NT核心技术。Windows NT Workstation的设计目标是工作站操作系统,适用于交互式桌面环境;Windows NT Server的设计目标是企业级的网络操作系统,提供容易管理、反应迅速的网络环境。两者在系统结构上完全一样,只是为适应不同应用环境在运行效率上做相应调整。 另一个可以采用的保护措施是在网络边界上过滤SNMP通信和请求,即在防火墙或边界路由器上,阻塞SNMP请求使用的端口。标准的SNMP服务使用161和162端口,厂商私有的实现一般使用199、391、705和1993端口。禁用这些端口通信后,外部网络访问内部网络的能力就受到了限制;另外,在内部网络的路由器上,应该编写一个ACL,只允许某个特定的可信任的SNMP管理系统操作SNMP 1.按应用层次划分为入门级服务器、工作组级服务器、部门级服务器和企业级服务器四类。 (1)入门级服务器 (2)工作组级服务器 (3)部门级服务器 (4)企业级服务器 2.按服务器的处理器架构(也就是服务器CPU所采用的指令系统)划分把服务器分为CISC(复杂指令集)架构服务器、RISC架(精简指令集)构服务器和VLIW架构服务器三种。 (1)CISC架构服务器 (2)RISC架构服务器 (3)VLIW架构服务器 3.按服务器按用途划分为通用型服务器和专用型服务器两类。 (1)通用型服务器 (2)专用型服务器 4.按服务器的机箱结构来划分,可以把服务器划分为“台式服务器”、“机架式服务器”、“机柜式服务器”和“刀片式服务器”四类。 (1)台式服务器 (2)机架式服务器 (3)机柜式服务器 (4)刀片式服务器 入门级服务器通常只使用一到两颗CPU,主要是针对基于Windows NT,NetWare等网络操作系统的用户,可以满足办公室型的中小型网络用户的文件共享、打印服务、数据处理、Internet接入及简单数据库应用的需求,也可以在小范围内完成诸如E-mail、Proxy 、DNS等服务。

实验二:使用snmp命令查看mib树信息

实验二:使用snmp命令查看mib树信息 一、实验目的 熟悉SNMP协议的操作的特点和功能 二、实验内容 熟悉SNMP的getrequest、getnextRequest 、SetRequestdeng 操作,通过配置文件熟悉SNMP 协议视图的概念 三、实验准备、环境 采用开源软件net_snmp(https://www.doczj.com/doc/645593615.html,/) Windows操作系统 四、实验步骤 1 安装net snmnp, 单击安装程序net-snmp-5.4.0-1.win32.exe,安装均按缺省,,一般会安装到c:\usr目录下 2、熟悉和配置代理段配置文件,从而掌握视图的概念 1) 把配置文件snmpd.conf 拷贝到C:\usr\etc\snmp 下,了解其如何间 公共体和视图关联起来 2) 利用netsnmp的自动配置命令生成snmpd.conf,生成方法建相关 ppt 在命令窗口中运行命令snmpd -f -Le –d(打开一个窗口,不要关闭)3熟悉snmpde相关操作 命令的使用详见文档“简单网络管理协议工具使用” 1)GetRequest操作(打开另外一个窗口,执行命令)

Netsnmp软件实现命令snmpget.exe 命令格式 Snmpget –v1(或-v2c) –c 公共体代理主机IP地址(本机为localhost)对象实例标识 如 Snmpget –v1 –c public localhost sysName.0 利用该操作至少检索一个标量对象和标对象实例(对象选择见教材、PPT或monitor.exe软件) 2)GetNextRequest操作 Netsnmp软件实现命令snmpgetnext.exe 命令格式 Snmpget –v1(或-v2c) –c 公共体代理主机IP地址(本机为localhost)对象实例标识 Snmpgetnext –v1 –c public localhost sysName.0 3)SetRequest操作 Netsnmp软件实现命令snmpset.exe 命令格式 snmpset [common arguments] MIB-objectID type value [MIB –objectID type value] MIB-objectID是一个要指定新值的MIB数据对象。参数type表示要修改的数据对象的类型;value表示该数据对象应该设置的新值。type 是一个字符,它表示数据对象的类型,这些类型是ASN.1定义的。

网络管理与维护实验1-Windows环境下简单网络管理协议的安装与配置

一. 实验目的 1. 掌握Windows系统中SNMP服务的安装以及SNMP服务属性配置。 2. 掌握如何使用Snmputil命令查看代理的MIB对象,熟悉MIB结构,掌握SNMP操作; 3. 理解GetRequest、GetNextRequest、trap消息,以及团体名的作用。 二. 实验所需设备及材料 安装Windows操作系统的计算机1台。 三. 实验内容及要求 1. 参考实验指导书P251页5. 2.2节实验,完成Windows操作系统中SNMP服务的安装和SNMP服务属性的配置,其中只读团体名设置为自己的八位学号,联系人设置为自己的姓名拼音全称。 2. 参考实验指导书P256页5.2.4节实验,练习使用Snmputil工具查看代理的MIB对象(实例),熟悉Get、GetNext、Walk命令操作。 完成以下内容: ⑴管理站发送Get、GetNext请求访问“系统组”,当代理正常返回的对象实例和值时,截图,并逐条给予解释。例如先解释sysObjectID对象的语义,然后根据返回的值说明是哪一厂商。 ⑵访问“IP组”的ipAddTable,截图,并根据返回的信息,绘制出本机的ipAddTable表,并填写所有列对象实例的值。用箭头标示该表的索引列。 ⑶访问“IP组”的ipNetToMediaTable,在返回的多个接口信息中,选取某一个接口,写出其ARP表,并用arp 命令验证,截取arp命令回显内容。 ⑷使用netstat命令查看TCP连接,找到有本机IP地址的n条TCP连接(n>=4),截图,注意这n条TCP连接必须是连续出现的。针对你选择的n条TCP连接,思考如何使用Snmputil的get和getnext命令,查询“TCP 组”的TCP连接表的tcpConnState、tcpConnLocalPort两个列对象实例的值,截图。并参照理论教材P50图3.19的形式画出TCP连接表的对象及其实例的子树(每个列对象只画出你选择的n个实例)。 ⑸查询本机接口的个数,并利用某个命令查询所有接口的速率,截图。 ⑹本机是否可以作为IP网关?为什么?请结合访问相关对象的截图来说明。 ⑺访问系统当前的系统安装列表,截图(若内容太多,后半部分可以适当省略)。 ⑻产生一个trap,截图,并说明显示的trap信息中generic当前取值的含义。 四.实验过程

snmp协议的分析

竭诚为您提供优质文档/双击可除 snmp协议的分析 篇一:实验三snmp协议分析 实验三snmp协议分析 一、实验目的 (1)掌握嗅探工具ethereal协议分析软件的使用方法(2)利用ethereal软件工具截snmp数据包并完成报文分析 二、实验环境 局域网,windowsserver20xx,snmputil,ethereal,superscan 三、实验步骤(0、snmp的安装配置) 1、理解应用层snmp协议工作原理; 2、使用windows平台上的snmputil.exe程序实现snmp 交互; 3、利用协议分析和抓包工具ethereal抓取分析snmp 协议报文。 四、实验内容 内容一:

1.打开ethereal软件开始抓包, 输入命令: snmputilget[目标主机ip地址]团体 名.1.3.6.1.2.1.1.2.0停止抓包。对snmp包进行过滤。(给出抓包结果截图) 2.找出一对snmp协议请求包和相对应的应答包。给出抓包结果截图。 3.对上面这对请求和应答包进行分析,根据snmp协议数据包格式填值。 请求包报文分析 应答包报文分析 内容二: 1.通过snmptuil.exe与snmp交互: 输入snmputilwalk[目标主机ip地址]团体 名.1.3.6.1.2.1.1命令列出目标主机的系统信息。 2.打开ethereal软件开始抓包,再次输入上面命令后,停止抓包。对snmp包进行过滤。给出抓包结果截图。 3.找出一对snmp协议请求包和相对应的应答包。给出抓包结果截图。 4.对上面这对请求和应答包进行分析,根据snmp协议数据包格式填值。 请求包报文分析

简单网络管理协议工具

第六章简单网络管理协议工具 本章重点仍是一些网络工具,它们可用于管理系统及其它的网络设备,例如交换器、路由器、集线器和其它支持SNMP的设备等。这部分介绍的网络工具很有用,对于你已经掌握的软件来说,是一个很好的补充。 本章中介绍的工具有: ·UCD的SNMP命令 ·Snmpconf命令 总的来看,这些工具提供了监控和管理的功能,它们可用于以下方面: ·确定SNMP 的系统节奏(system heartbeat) ·确定系统开/关消息 ·获得协议统计信息 ·获得接口性能数据 ·监控系统进程活动性 ·监控路由 ·配置网络设备 6.1 监控/管理功能 1. 系统节奏 系统节奏(system heartbeat)是一条SNMP的get-request请求,管理员使用该请求来确定管理代理和系统的一般可连接性。举例说明,网络管理员可以查询管理代理的系统时钟MIB变量,可以确定每次连续的查询都比前一次查询晚一些。各次连续查询应该表明时间在向前移动。可用于这方面的MIB变量是数据对象unitTime ,它是Sun系统管理代理的sunSystem组的一部分。此外,MIB-II的system组中的数据对象sysUpTime也可用于这个方面,所有的SNMP管理代理应该都可以使用这个数据对象。 2. 系统开/关消息 如果一个系统因某种原因被关闭或重启,此时系统应该以trap形式向指定的网络管理系统发送一条报文。我们说过,trap是一种由管理代理主动发送的报文,它表明某些特定条件或事件。例如,接收这些报文后,管理员得知发生系统中断,于是采取适当的操作。UCD 管理代理的配置文件和其它工具可用于向一个或多个网络管理系统续传trap报文。 3. 协议统计信息 因为许多SNMP管理代理支持MIB-II标准,所以有可能实现协议性能监控和系统监控。这包括IP、ICMP、TCP、SNMP协议,网络接口计数器,及一些Sun系统性能数据对象。 4. 系统进程活动性 Sun MIB扩展和UCD管理代理的应用,使得实现系统进程的监控成为可能。通过监控 143

snmp报文分析

SNMP报文格式分析 报文格式 snmp简介 snmp工作原理 SNMP采用特殊的客户机/服务器模式,即代理/管理站模型。对网络的管理与维护是通过管理工作站与SNMP代理间的交互工作完成的。每个SNMP从代理负责回答SNMP管理工作站(主代理)关于MIB定义信息的各种查询。 管理站和代理端使用MIB进行接口统一,MIB定义了设备中的被管理对象。管理站和代理都实现相应的MIB对象,使得双方可以识别对方的数据,实现通信。 管理站向代理请求MIB中定义的数据,代理端识别后,将管理设备提供的相关状态或参数等数据转换成MIB定义的格式,最后将该信息返回给管理站,完成一次管理操作。 snmp报文类型 SNMP中定义了五种消息类型:Get-Request、Get-Response、 Get-Next-Request、Set-Request和Trap 。 1.Get-Request 、Get-Next-Request与Get-Response SNMP 管理站用Get-Request消息从拥有SNMP代理的网络设备中检索信息,而SNMP代理则用Get-Response消息响应。Get-Next- Request用于和 Get-Request组合起来查询特定的表对象中的列元素。 2.Set-Request SNMP管理站用Set-Request 可以对网络设备进行远程配置(包括设备名、设备属性、删除设备或使某一个设备属性有效/无效等)。 3.Trap SNMP代理使用Trap向SNMP管理站发送非请求消息,一般用于描述某一事件的发生,如接口UP/DOWN,IP地址更改等。

上面五种消息中Get-Request、Get-Next-Request和Set-Request是由管理站发送到代理侧的161端口的;后面两种Get-Response和Trap 是由代理进程发给管理进程的,其中Trap消息被发送到管理进程的162端口,所有数据都是走UDP封装。 snmp报文格式图 SNMP报文的形式大致如下图所示。 snmp报文编码格式 SNMP(简单网络管理协议)是目前在计算机网络中用得最广泛的网络管理协议,它使用(Abstract Syntax Notation One抽象语法表示法.1)来定义SNMP报文格式和MIB(Management Information Base管理信息库)变量的名称。 是一种描述数据和数据特征的正式语言,它和数据的存储及编码无关。根据标准定义,数据类型分为: a.简单数据类型: boolean布尔值

SNMP学习

最近在研究SNMP,因为想在一台交换机上设置一个SNMP的代理,来监控交换机的一些参数,这里我就假设我要监控交换机的某个端口的数据量。 现在说说本人对SNMP的一些看法,当然还有一些问题想和关注过SNMP的朋友一起讨论一下,毕竟自己也是个菜鸟。 先谈一下对SNMP的看法: SNMP是个很古老的协议,其协议本身并不是很复杂顾名思义,简单网络管理协议。但它也有不简单的地方,那就是MIB库这个东西。这个东西我认为是对被管理对象的一个描述,描述的内容包括类型,名称(也就是OID)等等。转用一个看到过的网站上对MIB比较好的定义。MIB是对设备中各个被管理的对象(Managed Objects)做了一个名字(OID)、数据类型、总体逻辑结构的定义,设备会根据它里面的MIB(或是标准的MIBII,或是企业自己的私有的MIB库),构建一个被管理对象的逻辑数据库,这个数据库里有这些OID及其对应的具体的值(如网友所说的cpu利用率、端口速度等指标的具体值),网管依靠SNMP协议,通过代理的配合工作查询此数据库,找到需要的值,从而达到对设备的监控和管理工作。接下来想问的就是关于SNMP上的一些问题: 1.如果我想在一台交换机上开发一个SNMP代理,那肯定要创建一个私有的MIB库。那是不是就意味着我必须申请一个私有节点?然后在这个节点下来定义我的简单变量和表,那如何去申请这个节点? 2.第二个问题就是关于MIB库和交换机上参数值的问题,交换机上的代理接受到管理站上的get请求后通过MIB库找到那个参数的节点,比如是.1. 3.6.1. 4.1.5000.3。问题来了,那个节点上的值是怎么样传递给MIB的?有些网友说是数据库,那MIB,数据库和交换机上的值是怎么联系到一起的呢? 大部分教科书上关于MIB的入门概念纯粹是扯淡的,事实上单看SNMP协议本身是很简单的,你向他发送“get 1.3.1.1.2.1”,他就根据这个OID给你返回对应的值,其实OID和Web的URL、注册表里键的路径“HKLM\LocalMachine\...\...”是一回事,无非就是数据的分层表达方式而已。SNMP协议本身跟MIB毫不相关,你要是有兴趣用最底层的Socket编程也可以写出一个简单的代理,无非就是根据收到的OID返回对应的数据罢了 至于MIB,只是委员会规范的一些常用OID的标准而已,比如规定这一堆OID描述的是系统的基本信息,那就取名叫RFC1213吧,OID不是以点号分层的吗,这一大堆OID合起来看就是一个树结构了,就和很多工具里看到的一样了。至于MIB的格式,是便于用工具查看或者生成程序框架用的。 那OID对应的数据是放在哪里的呢?如果自己定义一个MIB,肯定是一个键值,一个value值,这样一对一的放置。比如说1.3.1.1.4.0是对应于计算机名(PC100003231)的,我一个GET“1.3.1.1.4.0”过去,那么我就可以在返回值中得到“PC100003231”这么个字符串,但是我不知道MIB存放的方法是怎么样的,我在MIB文件里面只能看出计算机名对应的OID 的树状结构啊。 mib文件只是一个定义这个库是怎样的这样的一个东西啊 就像数据库的脚本 mib文件是用来建库的,怎么存那更简单了,自己实现一个库不就存下去了 至于第一个问题,mib树中的结点是需要申请的,一般公司申请后是放在private结点下,后面的子树就可以自己想怎么搞就怎么搞了怎么申请其实在网上一查就知道了,我那时候

简单网络管理协议(SNMP)学习理解

简单网络管理协议学习理解 1.SNMP网络管理协议综述 SNMP(Simple Network Management Protocol)是被广泛接受并投入使用的工业标准,它是由SGMP即简单网关监控协议发展以来的。它的目标是保证管理信息在任意两点中传送,便于网络管理员在网络上的任何节点检索信息,进行修改,寻找故障;完成故障诊断,容量规划和报告生成。它采用轮询机制,提供最基本的功能集。最适合小型、快速、低价格的环境使用。它只要求无证实的传输层协议UDP,受到许多产品的广泛支持。 2.1 管理信息 经由SNMP协议传输的所有管理倍息都表现为非聚集的对象类型。这些对象类型被收集到一个或多个管理信息库[MIB]中并且对象类型按照管理信息结构和标识(SMI)定义。简单网络管理协议策l版的sM[于1990年5月定义在一篇题为《基于因特网的了TCP/IP管理信息结构和标识》的RFC中。这一RFC要求所有的管理信息库数据和信息必须根据ISO 8824标准《抽象句法表示法1规范》(ASN.1)编码。按照ASN.1表示所有信息和对象的目的在于方便向OSI的网络管理协议迁移而无需重新定义现已存在的所有对象和MIB。 SMI为每一对象类型定义以下成分: ①名字; ②句法; ②编码说明。 注意:一个对象类型的名字明确地代表一个对象,称为对象标识符。不得分配标识符0给对象类型作为其名字的一部分。为便于阅读,在标准文档中对象标识符旁边包含对这一对象的描述。对象标识符是按照在OSI MIB树中建立的严格分层空间构造的,对象标识符总是一个唯一的从树根开始描述MIB树的整数序列。对象标识符和它的文字描述的组合称为标号。 2.1.1 管理树 SMI明确要求所有被管理的信息和数据都要由管理树来标识。这棵管理树来源于

简单网络管理协议(SNMP)入门

简单网络管理协议(SNMP)入门 简单网络管理协议(SNMP)在体系结构分为被管理的设备(Managed Device)、SNMP管理器(SNMP Manager)和SNMP代理(SNMP Agent)三个部分。被管理的设备是网络中的一个节点,有时被称为网络单元(Network Elements),被管理的设备可以是路由器、网管服务器、交换机、网桥、集线器等。每一个支持SNMP的网络设备中都运行着一个SNMP代理,它负责随时收集和存储管理信息,记录网络设备的各种情况,网络管理软件再通过SNMP通信协议查询或修改代理所记录的信息。 SNMP代理是驻留在被管理设备上的网络管理软件模块,它收集本地计算机的管理信息并将这些信息翻译成兼容SNMP协议的形式。 SNMP管理器通过网络管理软件来进行管理工作。网络管理软件的主要功能之一,就是协助网络管理员完成管理整个网络的工作。网络管理软件要求SNMP 代理定期收集重要的设备信息,收集到的信息将用于确定独立的网络设备、部分网络或整个网络运行的状态是否正常。SNMP管理器定期查询SNMP代理收集到的有关设备运转状态、配置及性能等的信息。 SNMP使用面向自陷的轮询方法(Trap-directed polling)进行网络设备管理。一般情况下,网络管理工作站通过轮询被管理设备中的代理进行信息收集,在控制台上用数字或图形的表示方式显示这些信息,提供对网络设备工作状态和网络通信量的分析和管理功能。当被管理设备出现异常状态时,管理代理通过SNMP自陷立即向网络管理工作站发送出错通知。当一个网络设备产生了一个自陷时,网络管理员可以使用网络管理工作站来查询该设备状态,以获得更多的信息。 管理信息数据库(MIB)是由 SNMP代理维护的一个信息存储库,是一个具有分层特性的信息的集合,它可以被网络管理系统控制。MIB定义了各种数据对象,网络管理员可以通过直接控制这些数据对象去控制、配置或监控网络设备。SNMP

snmp报文分析

SNMP报文格式分析 1.SNMP报文格式 1.1 snmp简介 1.1.1 snmp工作原理 SNMP采用特殊的客户机/服务器模式,即代理/管理站模型。对网络的管理与维护是通过管理工作站与SNMP代理间的交互工作完成的。每个SNMP从代理负责回答SNMP管理工作站(主代理)关于MIB定义信息的各种查询。 管理站和代理端使用MIB进行接口统一,MIB定义了设备中的被管理对象。管理站和代理都实现相应的MIB对象,使得双方可以识别对方的数据,实现通信。 管理站向代理请求MIB中定义的数据,代理端识别后,将管理设备提供的相关状态或参数等数据转换成MIB定义的格式,最后将该信息返回给管理站,完成一次管理操作。 1.1.2 snmp报文类型 SNMP中定义了五种消息类型:Get-Request、Get-Response、 Get-Next-Request、Set-Request和Trap 。 1.Get-Request 、Get-Next-Request与Get-Response

SNMP 管理站用Get-Request消息从拥有SNMP代理的网络设备中检索信息,而SNMP代理则用Get-Response消息响应。Get-Next- Request用于和Get-Request组合起来查询特定的表对象中的列元素。 2.Set-Request SNMP管理站用Set-Request 可以对网络设备进行远程配置(包括设备名、设备属性、删除设备或使某一个设备属性有效/无效等)。 3.Trap SNMP代理使用Trap向SNMP管理站发送非请求消息,一般用于描述某一事件的发生,如接口UP/DOWN,IP地址更改等。 上面五种消息中Get-Request、Get-Next-Request和Set-Request是由管理站发送到代理侧的161端口的;后面两种Get-Response和Trap 是由代理进程发给管理进程的,其中Trap消息被发送到管理进程的162端口,所有数据都是走UDP封装。 1.1.3 snmp报文格式图 SNMP报文的形式大致如下图所示。

SNMP_MIB功能开发步骤_liujun

SNMP MIB 功能开发详细步骤 一、定义MIB库文件: 可使用adventnet 工具包下的mibedit工具来定义私有MIB库文件。 二、在linux环境下安装net-snmp 。安装过程如下: 1、解压源码包: tar –zxvf net-snmp-5.6.1.1.tar.gz 2、进入解压后的文件目录: cd net-snmp-5.6.1.1 3、执行文件目录下的configure可执行文件,如果想指定程序包的安装路径,那 么您首先建立相应的文件夹来存放安装信息,您可以写成./configure – prefix=/您指定的路径名。参数—prefix用来告诉系统安装信息存放的路径, 如果您没有指定路径,直接执行./configure,那么程序包都会安装在系统默 认的目录下,通常为:/usr/local下。例如: ./configure --prefix=/usr/local/snmp //配置指定安装目录,安装过程会 询问您以下的信息: 注意:以下问题似乎不怎么重要,那好像仅仅是官方想了解使用本软件方的信 息,可以直接回车而不用回答,系统会采用默认信息,其中日志文件默认安装 在/var/log/snmpd.log.数据存贮目录默认存放在/var/net-snmp下。 default version of-snmp-version(3): 3(在这里版本通常有三种形式: 1,2c,3) Systemcontact information(配置该设备的联系信息): heaven(也可以是 邮箱地址) System location (该系统设备的地理位置):BEIJING P.R China Location to write logfile (日志文件位置): /var/log/snmpd.log Location to Write persistent(数据存储目录): /var/net-snmp 4、#make 编译源码包文件,通常只需要执行make命令,系统会根据Makefile层层进行 编译,第一次编译需要的时间比较长. 如果make 成功的话,那么紧接着安装 程序了,这一步一般不会出现错误. #make install 5、完成以上步骤后net-snmp的开发环境就搭建好了。如果不在PC上使用SNMP 服务的话是不需要再进一步配置的。 三、生成MIB 源文件(C格式): 1、首先需要介绍一下MIB库和C源文件的转换工具命令: Net-snmp安装包提供了mib2c工具,用户可使用该工具将MIB库文件转换 成C源码格式。命令:MIBS=”+param1” mib2c param2 其中param1 代表需要被转换的MIB库文件,param2代表希望转换该MIB库文件下的哪 一个节点相关数据。下面以AERODEV-MIB.txt中的portTrunk功能节点为 例来介绍整个转换过程。

简单网络管理协议SNMP

SNMP 1概述 (1) 2SNMP的工作原理 (1) 2.1网络管理模型 (1) 2.2网络管理协议结构 (2) 2.3网络管理服务 (3) 2.4委托代理 (4) 3管理信息结构SMI (4) 3.1ASN.1 (4) 3.2文本约定 (5) 3.3对象定义 (6) 3.4T RAP定义 (6) 3.5对象标志符 (7) 3.6表对象的定义 (8) 3.7对象和对象实例的区别 (10) 3.8OID的字典序 (10) 4协议数据单元(PDU--PROTOCOL DATA UNIT) (10) 4.1SNMP报文格式 (10) 4.2SNMP报文类型 (11) 4.3SNMP V2基本的PDU格式 (12) 4.4SNMP消息的生成 (13) 4.5SNMP消息的接受和处理 (13) 5SNMP协议操作 (15) 5.1G ET R EQUES T (15) 5.1.1GetRequest—PDU报文格式 (15) 5.1.2SNMPv2对GetRequest-PDU的处理(参考RFC1905) (15) 5.1.3SNMPv1对GetRequest-PDU的处理(参考RFC1157) (16) 5.2G ET N EXT R EQUEST—PDU (16) 5.2.1GetNextRequest报文格式 (17) 5.2.2SNMPv2对GeNextRequest-PDU的处理(参考RFC1905) (17)

5.2.3SNMPv1对GeNextRequest-PDU的处理(参考RFC1157) (18) 5.3R ESPONSE-PDU (18) 5.3.1Response报文格式 (18) 5.3.2SNMPv2对Response-PDU的处理(参考RFC1905) (20) 5.3.3SNMPv1对响应报文GetResponse的处理(参考RFC1157) (20) 5.4S ET R EQUES T-PDU (20) 5.4.1SetRequest报文格式 (20) 5.4.2SNMPv2实体对SetRequest报文的处理(参考RFC1905) (21) 5.4.3SNMPv1对SetRequest报文的处理(参考RFC1157) (22) 5.5G ET B ULK R EQUES T-PDU (23) 5.5.1GetBulkRequest-PDU报文格式 (23) 5.5.2SNMPv2对GetBulkRequest-PDU报文的处理(参考RFC1905) (24) 5.6I NFORM R EQUES T-PDU (25) 5.6.1InformRequest-PDU的格式 (25) 5.6.2SNMPv2对InformRequest-PDU的处理(参考RFC1905) (26) 5.7T RAP-PDU (26) 5.7.1SNMPv1的Trap (26) 5.7.2SNMPv2的SNMPv2-Trap-PDU (28) 6SNMP的安全控制 (29) 6.1SNMP V2-基于共同体的管理框架 (29) 6.2SNMP V3的安全策略 (30)

ObjectSNMP 常用MIB数据对象描述文档

ObjectSNMP SNMP MIB数据服务描述文档 本文档由智和信通网管软件研发中心提供 https://www.doczj.com/doc/645593615.html,

目录 一、前言 (3) 二、系统类MIB描述 (3) 1. SNMP Agent系统信息(MibSystem) (3) 2. 系统IP地址信息(MibIPAddrEntry) (4) 3. SNMP Agent统计信息(MibSNMP) (4) 三、IP网络类MIB描述 (5) 1. 网络接口/端口信息(MibIfEntry) (5) 2. 网络接口流量和数据包信息(MibIfEntry) (5) 3. IP层流量和输入输出统计信息(MibIP) (5) 4. 路由表信息(MibIPRouterEntry) (6) 5. TCP连接资源和统计信息(MibTCPConnEntry) (6) 6. UDP监听信息(MibUDPEntry) (6) 7. IP-MAC关联表(IpAdEntAddr) (6) 四、硬件设施类MIB描述 (7) 1. 硬件设施和工作状态(MibDeviceEntry) (7) 2. 存储系统状态(MibDiskAndMemoEntry) (7) 3. CPU负载信息(MibProcessorEntry) (7) 五、软件类MIB描述 (8) 1. 软件进程状态信息(MibSoftwareRunEntry) (8) 2. 已安装的软件信息(MibSoftwareInstallEntry) (8) 六、Java类MIB描述 (8) 1. Java服务器基本信息(MibJvmOS) (8) 2. JVM基本信息(MibJvmRuntime) (9) 3. Java内存和堆栈状态(MibJvmMemory) (9) 4. Java线程和资源消耗情况(MibJvmThreading) (9) 七、交换机MIB描述 (10) 1. 交换机端口基本信息(Dot1dBasePortEntry) (10) 2. 交换机转发MAC地址和状态(Dot1dTpFdbEntry) (10)

网络管理实验SNMP报文解析实验报告

网络管理实验————SNMP报文解析 2010-6-1 4.trap操作: Sniffer软件截获到的trap报文如下图所示:

30 2e SNMP报文是ASN.1的SEQUENCE 类型,报文长度是46个八位组。 02 01 00:版本号为integer类型,取值为0,表示snmpv1。 04 06 70 75 62 6c 69 63:团体名为octet string类型,值为“public” a4 21: 表示pdu类型为trap,长度为33个八位组。 06 0c 2b 06 01 04 01 82 37 01 01 03 01 02:制造商标识,类型为object identifier。 值为1.3.6.1.4.1.311.1.1.3.1.2。 40 04 c0 a8 01 3b:代理的IP地址,类型OCTECT STRING,值为192.168.1.59; 02 01 04:一般陷阱,类型为INTEGER,值为4,代表这是由“authentication Failure (身份验证失败)”引发的TRAP; 02 01 00:特殊陷阱,类型为INTEGER,值为0(当一般陷阱取值不是6时); 43 03 06 63 29:时间戳,类型为TIME TICKS,值为418601 (百分之一秒),即系 统在运行到大约第70分钟时,代理发出了此TRAP; 30 00变量绑定表为空。 5.SNMPv2 GetBulk操作: Sniffer软件截获到的getbulkrequest报文如下图所示:

对该报文的分析如下 : 30 27 SNMP 报文是ASN.1的SEQUENCE 类型,报文长度为46个八位组;

SNMP协议全称为简单网络管理协议

SNMP协议全称为简单网络管理协议(Simple Network Management Protocol),该协议能够被广泛使用,不受协议的限制,如IP、IPX 、AppleTalk、OSI及其它传输协议均能使用。互联网络开始规模很小,网络结构简单,因此谈不上网络监控和管理问题。仅使用ICMP 的Ping 程序就能解决问题。但随着互联网络规模不断扩大,使用Ping 已无法掌握网络运行情况。此时,SNMP协议就产生了,它可通过提供有限的信息类型、简单的请求/响应机制来实现对被管理对象的操作。同时可将管理信息模型和被管理对象分成两个模块,两个模块间通过信令交互协同工作。目前SNMP协议已在TCP/IP 网络中广泛使用,并已成为网络管理领域事实标准。下面简单介绍下SNMP协议的基本概念、管理模型及版本号: 一SNMP协议基本概念 1 NMS NMS(Network Management System),是运行在网管端工作站上的网络管理软件。网络管理员通过操作NMS,向被管理设备发出请求,从而监控和配置网络设备。 2 Agent 运行在被管理设备上的代理进程。被管理设备在接收到网管设备侧NMS 发出的请求后,由Agent 作出响应操作。主要功能包括:收集设备状态信息、实现NMS 对设备的远程操作、向网管端发出告警消息。 3 MIB MIB 是一个虚拟的数据库,是在被管理设备端维护的设备状态信息集。Agent 通过查找MIB 来收集设备状态信息。MIB 按照层次式树形结构组织被管理对象,使用ASN.1格式进行描述。 4 ASN.1 抽象语法表示,使用独立于物理传输的方法定义协议标准中的数据类型。ASN.1 描述传输过程的中的语法,但不涉及具体数据含义的表示。 5 BER 基本编码规则,按照ASN.1 的语法结构,描述了在传送过程中数据内容是如何表示的。 6 SMI SMI(Structor of Management Information)为命名和定义管理对象指定了一套规则。所有管理对象都是按一种层次式树形结构排列。一个对象在这个树形结构中的位置,标识了如何访问这个对象。 7 Trap 告警信息。设备中的模块在达到告警的条件后触发告警,之后将告警消息通过SNMP发往网管端。 8 实体 可以被管理的软件或硬件。

SNMP+MIB完整手册

SNMP MIB完整手册 https://www.doczj.com/doc/645593615.html,/art/201007/209214.htm SNMP MIB是SNMP协议软件中主要的一个模块?那么MIB的主要功能就是管理信息库?那么一些常用的代码编辑,我们在前面的文章也有一些涉及?但是不少朋友还是对于SNMP MIB不理解?为此,我们整理了下面的文章帮助大家来学习这部分内容? 最近要做一些服务器和设备的监控, 自带的cacti模板已不能满足需求, 经过一天调试, 目前已实现了bind9 mysql bind等数据流量的分析(其实也就是用脚本取数据,最后用rrdtool 画图出来), 但学习的过程中, 发现不大了解SNMP MIB概念, google了一下,下面的文章应该能解答一部分与我有同样问题的朋友们(我简单进行了排版整理) SNMP协议详解 简单网络管理协议(SNMP:Simple Network Management Protocol)是由互联网工程任务组(IETF:Internet Engineering Task Force )定义的一套网络管理协议?该协议基于简单网关监视协议(SGMP:Simple Gateway Monitor Protocol)?利用SNMP,一个管理工作站可以远程管理所有支持这种协议的网络设备,包括监视网络状态?修改网络设备配置?接收网络事件警告等?虽然SNMP开始是面向基于IP的网络管理,但作为一个工业标准也被成功用于电话网络管理? 1. SNMP基本原理 SNMP采用了Client/Server模型的特殊形式:代理/管理站模型?对网络的管理与维护是通过管理工作站与SNMP代理间的交互工作完成的?每个SNMP从代理负责回答SNMP管理工作站(主代理)关于SNMP MIB定义信息的各种查询?下图是NMS公司网络产品中SNMP 协议的实现模型?

SNMP协议详解

SNMP协议详解 简单网络管理协议(SNMP:Simple Network Management Protocol)是由互联网工程任务组(IETF:Internet Engineering T ask Force )定义的一套网络管理协议。该协议基于简单网关监视协议(SGMP:Simple Gateway Monitor Protocol)。利用SNMP,一个管理工作站可以远程管理所有支持这种协议的网络设备,包括监视网络状态、修改网络设备配置、接收网络事件警告等。虽然SNMP开始是面向基于IP的网络管理,但作为一个工业标准也被成功用于电话网络管理。 1. SNMP基本原理 SNMP采用了Client/Server模型的特殊形式:代理/管理站模型。对网络的管理与维护是通过管理工作站与SNMP 代理间的交互工作完成的。每个SNMP从代理负责回答SNMP管理工作站(主代理)关于MIB定义信息的各种查询。下图10是NMS公司网络产品中SNMP协议的实现模型。 SNMP代理和管理站通过SNMP协议中的标准消息进行通信,每个消息都是一个单独的数据报。SNMP使用UDP (用户数据报协议)作为第四层协议(传输协议),进行无连接操作。SNMP消息报文包含两个部分:SNMP报头和协议数据单元PDU。数据报结构如下图 版本识别符(version identifier):确保SNMP代理使用相同的协议,每个SNMP代理都直接抛弃与自己协议版本不同的数据报。 团体名(Community Name):用于SNMP从代理对SNMP管理站进行认证;如果网络配置成要求验证时,SNMP 从代理将对团体名和管理站的IP地址进行认证,如果失败,SNMP从代理将向管理站发送一个认证失败的Trap消息协议数据单元(PDU):其中PDU指明了SNMP的消息类型及其相关参数。 2. 管理信息库MIB IETF规定的管理信息库MIB(由中定义了可访问的网络设备及其属性,由对象识别符(OID:Object Identifier)唯一指定。MIB是一个树形结构,SNMP协议消息通过遍历MIB树形目录中的节点来访问网络中的设备。 下图给出了NMS系统中SNMP可访问网络设备的对象识别树(OID:Object Identifier)结构。

第三章 简单网络管理协议-SNMP

第三章简单网络管理协议-SNMP SNMP(Simple Network Management Protocol,简单网络管理协议)是由Internet活动委员会(IAB)制订的,被采纳为基于TCP/IP协议的各种互联网络的管理标准。由于它满足了人们长久以来对通用网络管理标准的需求,而且它本身简单明了,实现起来比较容易,占用的系统资源少,所以得到了众多网络产品厂家的支持,成为实际上的工业标准,基于它的网络管理产品在市场上占有统治地位。1993年它的更新版本SNMP V ersion 2(SNMPv2)又被推出,改进了SNMP的不少缺陷。 本章及下一章在介绍SNMP协议的基础上,着重讨论SNMPv2协议的特点,并就作者自己开发的基于SNMPv2协议的网络计费管理软件作了介绍。 3.1 SNMP 3.1.1SNMP协议的工作原理 SNMP的管理结构如图3.1所示。它的核心思想是在每个网络节点上存放一个管理信息库( MIB),由节点上的代理(agent)负责维护,管理站(manager)通过应用层协议对这些信息库进行管理。SNMP最大的特点就是其简单性。它的设计原则是尽量减少网络管理所带来的对系统资源的需求,尽量减少agent的复杂性。它的整个管理策略和体系结构的设计都体现了这一原则。 管理工作站 图3.1:SNMP管理模型

3.1.2SNMP通信报文的操作处理 SNMP标准主要由三部分组成:简单网络管理协议(SNMP);管理信息结构(Structure ofa nagement Information,简称SMI)和管理信息库(Management Information Base,简称MIB) 。SNMP主要涉及通信报文的操作处理,协议规定manager如何与agent通信,定义了它们之间交换报文的格式和含义,以及每种报文该怎样处理等等。 SNMP中规定的网络管理操作有五种,分别是: (1)Get-Request; (2)Get-Next-Request; (3)Set-Request; (4)Get-Response; (5)Trap。 Get-Request被manager用来从agent取回某些变量的值;Get-Next-Request被manager 用来从agent取回某变量的下一个变量的值;Set-Request被manager用来设置(或改变)agent上某变量的取值;Get-Response是agent向manager发送的应答;Trap被agent用来向manage r报告某一异常事件的发生。 Get-Request、Get-Next-Request和Set-Request这三种操作都具有原子(atomic)特性,即如果一个SNMP报文中包括了对多个变量的操作,agent不是执行所有操作,就是都不执行(例如,一旦对其中某个变量的操作失败,其它的操作都不再执行,已执行过了的也要恢复)。 SNMP的报文格式为: version community data version域表示SNMP协议的版本,在SNMP中它是version-1(0); data域存放实际传送的报文,报文有五种,分别对应上述五种操作。 community域是为增加系统的安全性而引入的,它的作用相当于口令(password)。3.1.3 SNMP的安全机制 SNMP网络管理由几个特征,它包含一个管理站和一组代理之间的一对多的关系:管理站能够取得和设置代理中的对象,并从代理接收陷阱。因此,从操作或控制的观点来看,管理站“管理”多个代理。也可能有多个管理站,其中的每一个管理站管理全部代理或这些代理的一个子集,这些子集可能重叠。 我们也可以把SNMP网络管理看作是一个在一个代理和多个管理站之间的一对多的关系。每个代理控制它自己的本地MIB,而且必须能够控制多个管理站对该MIB 的使用。该控制有3个方面:

相关主题
文本预览
相关文档 最新文档