SNMP培训教材

合集下载

SNMP协议入门教程

SNMP协议入门教程

简单网络管理协议目录章节目标章节目标简单网络管理协议背景SNMP基本组成SNMP基本命令SNMP管理信息基础SNMP和数据表示SNMP v1SNMPv1和管理信息结构SNMPv1和ASN.1数据类型SNMP MIB表SNMPv1协议实施SNMP v2SNMPv2和数据信息结构系统管理中断信息模块SNMPv2协议实施SNMP管理SNMP安全SNMP协作代理服务器代理能说两种语言的网络管理系统SNMP参考: SNMPv1消息格式SNMPv1消息头SNMPv1协议数据单元陷阱协议数据单元格式SNMP参考: SNMPv2消息格式SNMPv2消息头SNMPv2协议数据单元取得散装协议数据单元格式复习问题章节目标管理信息基础·论述SNMP管理信息基础·描述SNMP v1·描述SNMP v2简单网络管理协议背景简单网络管理协议(SNMP)是一种应用层协议, 便于在网络设备间交换管理信息. 它是TCP/IP 协议簇的一部分. 网络管理员使用SNMP管理网络性能, 发现和解决网络故障, 并计划网络增长.有两种SNMP版本: SNMP v1和SNMP v2. 它们有一些共同的特征, 但SNMPv2提供增强功能, 例如附加的协议操作.另一种版本SNMPv3的标准化还没有完成. 这一章提供对SNMPv1和SNMPv2协议操作的描述. 图56-1描述SNMP管理的基本网络.图56-1: SNMP便于设备间的网络信息的交换.SNMP基本组成一个SNMP管理的网络包含三个主要部分: 被管理设备、代理和网络管理系统(NMSs).一个被管理设备是一个包含一个SNMP代理并处于被管理的网络中的一个网络结点。

被管理设备收集和存储管理信息,并使用SNMP使这些信息对网络管理系统有用。

被管理设备有时被称为网络元素,可能是路由器和访问服务器,交换机和网桥,集线器,计算机主机或打印机。

代理是处于被管理设备中的一个网络管理软件模块。

SNMP快速学习文档

SNMP快速学习文档

SNMP 快速学习文档软件部学习文档2007-11-09Research&Development目录1.1S NMP简介 (4)1.1.1名词解释 (4)1.1.2版本号 (4)1.1.3基本功能 (4)1.1.4典型配置 (4)1.1.5委托代理配置 (5)2网络管理(核心) (6)2.1管理信息库MIB (6)2.2协议数据单元PDU (8)2.2.1公共SNMP首部 (10)2.2.2get/set首部 (11)2.2.3trap首部 (12)2.2.4变量绑定(variable-bindings) (12)2.3管理信息结构SMI (13)3ADVENTNET SNMP API学习 (13)3.1概述 (13)3.2特征 (13)3.3使用心得 (14)4SNMP编程流程 (14)4.1发送请求消息 (14)4.1.1AdventNet SNMP的初始化 (14)4.1.2创建协议数据单元(PDUs) (14)4.1.3发送信息 (15)4.1.4资源的释放 (15)4.2A DVENT N ET SNMP接受响应消息 (15)5参考 (17)5.1SNMP中的数据类型详解: (17)5.2参考文献..................................................................................................错误!未定义书签。

1.1Snmp简介1.1.1名词解释简单网络管理协议(SNMP)是目前TCP/IP网络中应用最为广泛的网络管理协议。

1.1.2版本号共三个版本1990 SNMPv1,1993 SNMPv2,1998 SNMPv3。

1.1.3基本功能SNMP的基本功能包括监视网络性能、检测分析网络差错和配置网络设备等。

●在网络正常工作时,SNMP可实现统计、配置和测试等功能。

●当网络出故障时,可实现各种差错检测和恢复功能。

SNMP网络管理培训

SNMP网络管理培训



1
SNMP基本部件组成

被管理的设备:被管理的设备是一个存在于被管理的网络中的节点 。

代理:运行于被管理设备之上的网络管理软件模块,它的作用就是响 应网络管理系统端的请求对被管理设备进行相应的操作,也可在网络 管理系统端无请求的情况下向管理系统端发送消息。
网络管理系统:运行于PC机上的管理软件,可以用来监视和控制被管 理的设备。 三者关系形象描述:

13
SNMP开发工具


管理端开发工具:Power TCP/IP 、SNMP++
代理端开发工具:UCD-snmp、net-snmp. 管理端参考软件:SNMPC,管理局域网的大型网络管理软 件,HP的OpenV iew.
14
结束
谢谢!
15


Set命令:管理系统通过发送Set-Request消息请求代理对被管理设备 进行特定的操作,一般指更改设备的参数。
Trap命令:代理端通过发送Trap消息通知管理端被管理设备出现异常 。

3
SNMP消息传送示意图
Get
Get Request
Manager
Get Response GetNext Request
experimental
MIB-II
private
system
if
at
ip
icmp
tcp
udp
snmp
9
Management Information Base(MIB)
详细解释

Managed Resources
每一个可以被管理的资源就是一 个对象,被称为managed object(MO) MIB是所有MO的集合 本质上,MO就是一个数据变量 在网络(NE)中,每一个网络节点都 有自己的私有MIB 监视设备状态: 通过读取MIB中的 MO的值 控制设备: 通过更改MIB中的MO 的值

snmp测试及培训资料

snmp测试及培训资料

SNMPSNMP是基于TCP/IP协议族的网络管理标准,是一种在IP网络中管理网络节点(如服务器、工作站、路由器、交换机等)的标准协议。

SNMP能够使网络管理员提高网络管理效能,及时发现并解决网络问题以及规划网络的增长。

网络管理员还可以通过SNMP接收网络节点的通知消息以及告警事件报告等来获知网络出现的问题。

SNMP管理的网络主要由三部分组成:(1)被管理的设备(2)SNMP代理(3)网络管理系统(NMS)它们之间的关系如图所示。

(1)网络中被管理的每一个设备都存在一个管理信息库(MIB)用于收集并储存管理信息。

通过SNMP协议,NMS能获取这些信息。

被管理设备,又称为网络单元或网络节点,可以是支持SNMP协议的路由器、交换机、服务器或者主机等等。

(2)SNMP代理是被管理设备上的一个网络管理软件模块,拥有本地设备的相关管理信息,并用于将它们转换成与SNMP兼容的格式,传递给NMS。

(3)NMS运行应用程序来实现监控被管理设备的功能。

另外,NMS还为网络管理提供大量的处理程序及必须的储存资源。

注释:MIB:管理信息库(MIB,Management Information Base)是TCP/IP网络管理协议标准框架的内容之一,MIB定义了受管设备必须保存的数据项、允许对每个数据项进行的操作及其含义,即管理系统可访问的受管设备的控制和状态信息等数据变量都保存在MIB 中。

(个人理解:MIB就是一个库,里面有IP设备的各项信息,可以对它们进行读的操作,部分信息可以进行写操作——即修改信息)。

MIB采用的是树形结构(有点像书目录),如下图所示上图中,每个信息项都有一个对应的OID ,1 iso1.3 org1.3.6 dod1.3.6.1 internet1.3.6.1.1directory1.3.6.1.2mgmt1.3.6.1.2.1MIB-2...........SNMP v1SNMPV1 是一种简单的请求 / 响应协议。

03 SNMP协议基础

03 SNMP协议基础

VACM用于控制用户访问MIB对象的权限
SNMPv3安全机制
基于用户的安全模型 认证 加密
基于视图的访问控制模型

38
基于用户的安全模型(认证)

SNMPv3基于共享密钥使用单向散列算法为报文添 加签名
SNMPv3报文 认证共享密钥
MD5/SHA HASH
Message Authentication Code
安全子系统
基于用户的 安全模型 基于团体字的 安全模型
访问控制子系统
基于视图的访问 控制模型
其他安全模型
其他访问 控制模型

36
SNMPv3报文格式

SNMPv3定义了全新的报文格式,但仍然沿用 SNMPv2c的PDU
msgVersion msgID msgMaxSize msgFlags msgSecurityModel msgAuthoritativeEnginelD msgAuthoritativeEngineBoots msgAuthoritativeEngineTime msgUserName msgAuthenticationParameters msgPrivacyParameters contextEngineID contextName PDU

29
公共SNMP首部

SNMPv1和v2的报文首部包含版本、团 体字和PDU类型三个部分
版本 共同体 PDU类型
IP首部 UDP首部 公共SNMP首部
SNMP PDU
PDU名称
Get Request
Get Next Request 1
Set Request
Get Response

网络管理之SNMP网管协议培训教材

网络管理之SNMP网管协议培训教材

SNMP的通讯方式---SNMP SET
被管资源 管理应用
管理应用对象
SNMP被管对象 SetRequest SNMP Agent
SNMP Manager
SNMP消息
SetRequest UDP IP 依赖于网络的协议 SNMP 管理工作站
网络或互联网络
UDP IP 依赖于网络的协议 SNMP 代理
system interface 2 1
ICMP TCP 5 6
UDP 7
对象标识符--OID
• 对象标识符 (OID): – 对象标识符是能够唯一标识某个对象类型的符号。 – 一个OID包含了一个整数序列, 用于表示在对象标识符树上的具体位置。 0 ccitt 0 std 1 reg authority root 1 iso 2 joint-iso-ccitt
2 member body
1.3.6.1.2.1.2
1 directory mgmt 1 MIB II at 3 IP 4
3 org 6 dod 1 internet 3 2 experimental
1.3.6.1.2.1 1.3.6.1.4.1
4 private 1 enterprises EGP 8 Trans. 10 SNMP 11
Get
Manager
Get Response
Agent
Set
Set Request
Manager
Get Response
Agent
Trap
Manager
Trap Request
Agent
SNMP缺省的UDP端口
Management Station Network Elements (NEs)

SNMP基础知识PPT课件

SNMP基础知识PPT课件

SMI(RFC1155)描述如何用的子集定义MIB(Management Infomation Base)。例如,MIB中的资源如何命名和表示,包括一 个MIB对象的数据类型,索引方式,访问权限,缺省值,MIB含义,
IN宏TE定GE义R, 以 及 父3子2位 节值点,关-23系1~等231。-1通常用来表示枚举值,例如,
• 管理信息库是被管对象的总和,它描述SNMP可 管理实体的一组对象。
• MIB按树形结构组织(MIB树),每个被管对象 对应树形结构的一个叶子节点(object)。
• MIB树是静态,设备AGENT启动时完成初始化, 以后NMS只是检索或修改每个被管对象的内容。
• MIB是NMS与AGENT之间信息交互的基础。
IpAddress

OBJECT

IDENTIFIER
第19页/共36页
SMIv2
√ √ √ √ √ √ √
√ √
SNMP MIB简介
使用SMIv2定义mib(续)
Units—用来表示相关对象的单位的原语。
MAX-ACCESS
替换以前的ACCESS 取n值ot-a范cce围ss:ible
ifOperStatus定义为INTERGER,1表示UP,2表示DOWN
OCTECTSTRING 零或多个8位位组,每个8位位组0~255,通常用于代表一 个文本串,例如,sysDescr
OBJECT IDENTIFIER
一个整数序列,遍历一个层次MIB树形结构。每个管理对象 由一个OBJECT IDENTIFIER定义。
说明数据类型是什么:字符串类型
可以访问吗?只读的
SYNTAX DisplayString (SIZE (0..255))

SNMP快速学习文档

SNMP快速学习文档

SNMP快速学习文档Research&DevelopmentSNMP快速学习文档软件部学习文档2007-11-09目录1.1 ............................................................ S NMP简介51.1.1名词解释 (5)1.1.2版本号 (5)1.1.3基本功能 (5)1.1.4典型配置 (5)1.1.5委托代理配置 (6)2网络管理(核心) (7)2.1管理信息库MIB (7)2.2协议数据单元PDU (9)2.2.1公共SNMP首部 (11)2.2.2get/set首部 (12)2.2.3trap首部 (13)2.2.4变量绑定(variable-bindings) (13)2.3管理信息结构SMI (14)3ADVENTNET SNMP API学习 (14)3.1概述 (14)3.2特征 (14)3.3使用心得 (15)4SNMP编程流程 (15)4.1发送请求消息 (16)4.1.1AdventNet SNMP的初始化 (16)4.1.2创建协议数据单元(PDUs) (16)4.1.3发送信息 (17)4.1.4资源的释放 (17)4.2A DVENT N ET SNMP接受响应消息 (17)5参考 (20)5.1SNMP中的数据类型详解: (20)5.2参考文献.......................................................................................... 错误!未定义书签。

1.1Snmp简介1.1.1名词解释简单网络管理协议(SNMP)是目前TCP/IP网络中应用最为广泛的网络管理协议。

1.1.2版本号共三个版本1990 SNMPv1,1993 SNMPv2,1998 SNMPv3。

1.1.3基本功能SNMP的基本功能包括监视网络性能、检测分析网络差错和配置网络设备等。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

SNMP培训教材1 SNMP管理模型 (1)什么是SNMP (1)SNMP的基本操作: (2)网管站和代理 (2)ASN.1和SMI (3)SNMP报文 (4)2 管理变量的表示 (4)3 SNMP的运行过程 (5)GetRequest PDU: (5)GetNextRequest PDU (6)GetResponse PDU (7)SetRequest PDU (7)Trap PDU (8)4 SNMP MIB编译器的功能 (8)SNMP培训教材1 SNMP管理模型什么是SNMPSNMP(Simple Network Management Protocol)是被广泛接受并投入使用的工业标准,它的目标是保证管理信息在任意两点中传送,便于网络管理员在网络上的任何节点检索信息,进行修改,寻找故障;完成故障诊断,容量规划和报告生成。

它采用轮询机制,提供最基本的功能集。

最适合小型、快速、低价格的环境使用。

它只要求无证实的传输层协议UDP,受到许多产品的广泛支持。

SNMP在TCP/IP协议族中的地位如下图:SNMP (用到ASN.1 抽象语法记法)UDPIP链路层协议硬件SNMP 的基本操作: 操作 操作含义Get-request Get-next-request Get-response Set-request trap从某变量中取值在表格中取下一项值响应取操作把一数值存入具体变量报告事件信息SNMP 以GET-SET 方式替代了复杂的命令集,利用基本操作演绎出全部操作。

用户可以采用管理信息库标准或按标准的方式来定义自己的管理信息库(MIB )。

这样做的好处是:通过降低占网管系统中大多数的代理部件的成本来降低整个网管系统的成本。

网管站和代理网管站(NMS )对网络设备发送各种查询报文,并接收来自被管设备的响应及陷阱(trap )报文,将结果显示出来。

代理(agent )是驻留在被管设备上的一个进程,负责接受、处理来自网管站的请求报文,然后从设备上其他协议模块中取得管理变量的数值,形成响应报文,反送给NMS 。

在一些紧急情况下,如接口状态发生改变,呼叫成功等时候,主动通知NMS (发送陷阱TRAP 报文)。

他们的关系如下图:SNMP 就是用来规定NMS 和Agent 之间是如何传递管理信息的应用层协议。

N M SU D P p o r t 162U D P p o r t 161A G E N TR e q u e s t R e s p o n s e T r a pASN.1和SMISNMP是应用层协议,它要求两端的协议实体交换各种报文,而低层要求用户数据都是BYTE序列,这就产生了一个问题:SNMP协议实体如何从接受到的一个BYTE序列中识别出报文又如何把一个用内部数据结构表示的报文转换成一个可供发送的BYTE序列,也就是编解码问题。

解决这个问题,就需要一个定义从实际的软件数据结构中抽象出来的数据类型的表示方法,称为抽象句法。

ASN.1就是用来描述抽象记法的语言,事实上可应用于任何协议层,在它的基础上,通过规定编码规则,就可以确定数据在传送中的八比特组的值。

SMI(Struct of Management Imformation),通过定义一个宏OBJECT-TYPE,规定了管理对象的表示方法,从这个意义上说,它是ASN.1的一个子集。

另外它还定义了几个SNMP常用的基本类型和值。

MIB (Management Imformation Base), 是所监控网络设备的标准变量定义的集合。

SNMP用层次结构命名方案来识别管理对象,就象一棵树,树的节点表示管理对象,它可以用从根开始的一条路径来无二义的识别。

见下图:A2 6152112 1B管理对象B可以用一串数字唯一确定{1.2.1.1} 这串数字是管理对象的object identifier(客体标识符)。

通过object identifier可确定从根到B的一条路径。

管理对象 A 的object identifier 是{1.2.1.1.5},或{B 5},后一种表示方法表明A是B 的第5棵孩子。

在agent中这棵树是用较复杂的数据结构来实现的,幸运的是,建树这个工作可由MIB编译器完成。

在树的叶节点中,存放有访问函数的指针,Agent就是通过调用这些函数来从相关模块取得管理变量的值的。

SNMP报文SNMP报文结构如下:(编码之前)版本号团体名协议数据单元PDUSNMP共有5种报文,所以其PDU也有5种,仅以GetRequest-PDU为例Request请求用以匹配响应和请求的一个数字错误状态用以给出错误类型错误索引标示产生错误的变量对偶变量对偶表存放管理变量的名及值2 管理变量的表示管理变量表示管理对象类型在某一时刻的值(或称该类型的实例),SNMP以管理变量作为操作对象。

管理变量的表示方法是这样规定的:形如x.y,其中x是管理对象的object identifer。

y是能唯一确定对象类型值的一组数字,在非表型变量中为0,在表型变量中是这个表的索引,比如接口表中的接口号,或路由表中的目的网络地址等等。

如:在MIB文件里定义了ipAdEntNetMask这一管理对象,其object identifier为1.3.6.1.1.5.6.1.3它是个路由表中的一项,它的一个实例就是路由表中某一行的子网掩码,如果这行的索引、目的网络地址为129.102.1.0。

则这个变量名是:1.3.6.1.1.5.6.1.3.129.102.1.0。

在以后的说明中,为了方便,把唯一确定管理变量的一组数字,也就是x.y中的y称作实例。

3 SNMP的运行过程驻留在被管设备上的AGENT从UDP端口161接受来自网管站的串行化报文,经解码、团体名验证、分析得到管理变量在MIB树中对应的节点,从相应的模块中得到管理变量的值,再形成响应报文,编码发送回网管站。

网管站得到响应报文后,再经同样的处理,最终显示结果。

下面根据RFC1157详细介绍Agent接受到报文后采取的动作:首先解码生成用内部数据结构表示的报文,解码依据ASN.1的基本编码规则,如果在此过程中出现错误导致解码失败则丢弃该报文,不做进一步处理。

第二步:将报文中的版本号取出,如果与本Agent支持的SNMP版本不一致,则丢弃该报文,不做进一步处理。

当前北研的数据通信产品只支持SNMP 版本1。

第三步:将报文中的团体名取出,此团体名由发出请求的网管站填写。

如与本设备认可的团体名不符,则丢弃该报文,不做进一步处理,同时产生一个陷阱报文。

SNMPv1只提供了较弱的安全措施,在版本3中这一功能将大大加强。

第四步:从通过验证的ASN.1对象中提出协议数据单元PDU,如果失败,丢弃报文,不做进一不处理。

否则处理PDU,结果将产生一个报文,该报文的发送目的地址应同收到报文的源地址一致。

根据不同的PDU,SNMP协议实体将做不同的处理:GetRequest PDU:第一种情况:如果PDU中的变量名在本地维护的MIB树中不存在,则接受到这个PDU的协议实体将向发出者发送一个GetResponse报文,其中的PDU与源PDU只有一点不同:将ERROR-STATUS置为noSuchName,并在ERROR-INDEX 中指出产生该变量在变量LIST中的位置。

第二种情况:如果本地协议实体将产生的响应报文的长度大于本地长度限制,将向该PDU的发出者发送一个GetResponse报文,该PDU除了ERROR-STATUS置为tooBig,ERROR-INDEX置为0以外,与源PDU相同。

第三种情况:如果本地协议实体因为其他原因不能产生正确的响应报文,将向该PDU的发出者发送一个GetResponse报文,该PDU除了ERROR-STATUS 置为genErr,ERROR-INDEX置为出错变量在变量LIST中的位置,其余与源PDU相同。

第四中情况:如果上面的情况都没有发生,则本地协议实体向该PDU的发出者发送一个GetResponse报文,该PDU中将包含变量名和相应值的对偶表,ERROR-STATUS为noError,ERROR-INDEX为0,request-id域的值应与收到PDU 的request-id相同。

GetNextRequest PDUGetNextRequest PDU的最重要的功能是表的遍历,这种操作受到了前面所说的管理变量的表示方法的支持,从而可以访问一组相关的变量,就好象他们在一个表内。

下面通过一个例子解释表遍历的过程:被管设备维护如下路由表:Destination NextHop Metric10.0.0.99 89.1.1.42 59.1.2.3 99.0.0.3 310.0.0.51 89.1.1.42 5假设网管站欲取得这张路由表的信息,该表的索引是目的网络地址。

网管站向被管设备发送一个GetNextRequest PDU,其中的受管对象的标识如下GetNextRequest ( ipRouteDest, ipRouteNextHop, ipRouteMetric1 )SNMP agent响应如下GetResponse PDU:GetResponse (( ipRouteDest.9.1.2.3 = "9.1.2.3" ),( ipRouteNextHop.9.1.2.3 = "99.0.0.3" ),( ipRouteMetric1.9.1.2.3 = 3 ))网管站继续:GetNextRequest ( ipRouteDest.9.1.2.3,ipRouteNextHop.9.1.2.3,ipRouteMetric1.9.1.2.3 )agent响应:GetResponse (( ipRouteDest.10.0.0.51 = "10.0.0.51" ),( ipRouteNextHop.10.0.0.51 = "89.1.1.42" ), ( ipRouteMetric1.10.0.0.51 = 5 ))值得注意的是agent必须能够确定下一个管理变量名,以保证所有变量能被取到且只被取到一次。

网管站继续:GetNextRequest ( ipRouteDest.10.0.0.51,ipRouteNextHop.10.0.0.51,ipRouteMetric1.10.0.0.51 )agent 响应:GetResponse (( ipRouteDest.10.0.0.99 = "10.0.0.99" ),( ipRouteNextHop.10.0.0.99 = "89.1.1.42" ),( ipRouteMetric1.10.0.0.99 = 5 ))网管站继续GetNextRequest ( ipRouteDest.10.0.0.99,ipRouteNextHop.10.0.0.99,ipRouteMetric1.10.0.0.99 )这时因为路由表中所有的行都被取遍,agent因返回路由表对象的下一字典后继即该管理对象在MIB树中的后序遍历的直接后继。

相关文档
最新文档