SNMP网络管理架构

Download Report

Transcript SNMP网络管理架构

计算机网络管理技术
第1章 网络管理技术概述
第2章 SNMP网络管理架构
第3章 网络流量监控技术与方法
第4章 磁盘管理
第5章 用户管理
第6章 组策略管理
第7章 补丁管理
第8章 IP地址管理
第9章 VLAN管理
第10章 网络存储管理
1 /79
计算机网络管理技术
第2章
SNMP网络管理架构
 目前计算机网络中几乎所有的通用设备和网络操作
系统都支持SNMP,掌握SNMP的基础知识是从事网络
管理工作的必备条件。
 SNMP中涉及的知识点比较多,每个知识点都有大量
的细节描述。
 本章将从网络管理员的角度介绍SNMP,着重介绍
SNMP的基本架构和功能,以适应现代计算机网络管
理的要求。
2 /79
计算机网络管理技术
第2章
2.1
2.2
2.3
2.4
2.5
2.6
SNMP网络管理架构
网络管理协议及功能
SNMP的功能及典型应用
SNMP的实现方法、结构和组成
SNMP系统
SNMP协议
SNMP的发展和现状
3 /79
计算机网络管理技术
2.1 网络管理协议及功能
2.1.1 网络管理协议的发展
2.1.2 从管理设备获取数据的方式
4 /79
计算机网络管理技术
2.1.1 网络管理协议的发展
 在通用的网络管理协议制定之前,在一个网络中
虽然有多个不同厂商的相同功能的设备,提供数
据收集的方式各不相同。
 不同厂商提供的通信方式各不相同,无法实现在
同一管理平台下对不同厂商设备的统一管理。
 网络管理协议的功能就是制定一个管理进程与管
理代理之间的通信标准,即通用的网络管理协议。
5 /79
计算机网络管理技术
 标准网络管理协议提供了一种可访问任何网络设备并
获得一系列标准值的一致性方式(设备名称、软件版本、接口
参数、CPU利用率、内存利用率等) .
 目前,已制定的几种标准的网络管理协议有:
· SNMP:简单网络管理协议(Simple Network Management
Protocol),该协议也是应用最为广泛的网络管理协议
(IETF ) 。
· CMIP/CMIS:公共管理信息协议/公共管理信息服务(Common
Management Information Protocol /Common Management
Information Services),主要针对OSI结构制定的网络管
理协议(ISO) 。
6 /79
计算机网络管理技术
 CMOT(CMIP Over TCP):在TCP/IP网络中实现CMIS服
务的公共管理信息协议(IETF ) 。
 LMMP:局域网个人管理协议(LAN Man Management
Protoco1)
• 该协议最早由3COM和IBM公司开发,试图为LAN环境提供一个
网络管理方案。
• IEEE802逻辑链路控制层上的公共管理信息协议(CMIP Over
LLC,CMOL)。
• 不依赖于任何特定的网络层协议进行网络传输。
• 易于实现。但是,不能跨越路由器。
7 /79
计算机网络管理技术
2.1 网络管理协议及功能
2.1.1 网络管理协议的发展
2.1.2 从管理设备获取数据的方式
8 /79
计算机网络管理技术
2.1.2 从管理设备获取数据的3种方式
本地终端方式、远程telnet命令方式、基于网络管理协议的
方式。
1. 本地终端方式
• RS-232端口或Console端口。
• 一般适用于管理单台重要的网络设备(如企业网出口处的路
由器或防火墙等)。
• 网络发生阻塞以及被管理设备无法通过远程方法进行登录。
9 /79
计算机网络管理技术
2. 远程telnet命令方式
 必须具备两个条件:
• 一是管理机与被管理设备之间通过网络进行连接;
• 二是在被管理设备上设置了管理地址和登录帐号。
 该方式的好处是可以对设备进行远程管理,
 每次只能对一台设备进行管理。
10 /79
计算机网络管理技术
3. 基于网络管理协议的方式
目前各类网络管理系统普遍采用如后图所示的标准模型。
11 /79
计算机网络管理技术
一个网络管理系统从逻辑上可以认为是由以下四个
部分组成:
管理进程(Manager)
· 管理协议(Management Protocol)
· 管理代理(Agent)
· 管理信息库(Management Information Base,MIB)
·
12 /79
计算机网络管理技术
网络管理的实际操作模式
13 /79
计算机网络管理技术
第2章
2.1
2.2
2.3
2.4
2.5
2.6
SNMP网络管理架构
网络管理协议及功能
SNMP的功能及典型应用
SNMP的实现方法、结构和组成
SNMP系统
SNMP协议
SNMP的发展和现状
14 /79
计算机网络管理技术
2.2 SNMP的功能及典型应用
是目前应用最为广泛的网络管理协议,
主要用于对路由器、交换机、防火墙、服务
器等主要设备(网元)的管理。
15 /79
计算机网络管理技术
2.2 SNMP的功能及典型应用
2.2.1 SNMP的功能
2.2.2 SNMP的典型应用
16 /79
SNMP的功能
计算机网络管理技术
17 /79
计算机网络管理技术
SNMP的工作方式
 读操作:从设备中获取数据,一是管理员向设备发出读
数据的指令;二是被管理设备定期向管理员(其实是管
理机)发回需要的数据。
 写操作:管理员在对设备进行配置时,需要由SNMP提供
写操作,这样才能够完成对设备的远程管理。
 Trap操作:设备在某一时刻发生状态的改变时,需要由
SNMP提供trap操作。
18 /79
计算机网络管理技术
2.2 SNMP的功能及典型应用
2.2.1 SNMP的功能
2.2.2 SNMP的典型应用
19 /79
计算机网络管理技术
2.2.2 SNMP的典型应用
对网络中支持SNMP的设备进行管理(可以运行在TCP/IP协议
栈上)。
20 /79
计算机网络管理技术
第2章
2.1
2.2
2.3
2.4
2.5
2.6
SNMP网络管理架构
网络管理协议及功能
SNMP的功能及典型应用
SNMP的实现方法、结构和组成
SNMP系统
SNMP协议
SNMP的发展和现状
21 /79
计算机网络管理技术
2.3 SNMP的实现方法、结构和组成
2.3.1 SNMP的实现方法和结构
2.3.2 SNMP的组成
22 /79
计算机网络管理技术
2.3.1 SNMP的实现方法和结构
23 /79
计算机网络管理技术
3种角色:
· 管理网络系统(NMS)
· 代理(Agent)
· 代理服务器(Proxy)
24 /79
计算机网络管理技术
2.3 SNMP的实现方法、结构和组成
2.3.1 SNMP的实现方法和结构
2.3.2 SNMP的组成
25 /79
计算机网络管理技术
2.3.2 SNMP的组成
SNMP v1 (1989)、SNMP v2(1992)到SNMP v3(1999),
功能在不断加强和完善,但是SNMP的组成一直没有变化。
•使用UDP进行数据的传输
•由SMI、MIB和协议(SNMP)组成
•SNMP和MIB 由 ASN.1(Abstract
Syntax Notation )描述
26 /79
计算机网络管理技术
· SMI(Structure of Managerment Information,管
理信息结构):规定SNMP使用哪些ASN.1符号与元
素,以及如何使用这些ASN.1子集的符号和元素来描
述SNMP。SMI由ASN.1的一个子集和一部分自定义的
类型、宏等组成。
· MIB(Management Information Base,管理信息
库):MIB使用SMI来定义设备和网络协议的数据。
管理站和代理都使用相同格式的MIB以实现有效通信。
其中代理将设备的数据转换为MIB对象,使设备支持
SNMP。
· 协议(SNMP):SNMP协议定义了SNMP数据包的格式、
封装方式以及数据的传输细节。
27 /79
计算机网络管理技术
第2章
2.1
2.2
2.3
2.4
2.5
2.6
SNMP网络管理架构
网络管理协议及功能
SNMP的功能及典型应用
SNMP的实现方法、结构和组成
SNMP系统
SNMP协议
SNMP的发展和现状
28 /79
计算机网络管理技术
2.4 SNMP系统
2.4.1 管理信息库(MIB)
2.4.2 管理信息结构(SMI)
2.4.3 简单网络管理协议(SNMP)
29 /79
计算机网络管理技术
2.4.1 管理信息库(MIB)
 MIB是网络管理协议访问的管理对象数据库,它包括SNMP可
以通过网络设备上的代理进行设置的变量。
 给出了一个网络中所有可能的被管理对象的集合的数据结构。
 SNMP的管理信息库采用和域名系统(DNS)相似的树型结构,
它的根在最上面,根没有名字。
30 /79
计算机网络管理技术
31 /79
计算机网络管理技术
 SNMP协议消息通过遍历MIB树形目录中的节点来访问网络中的
设备。
 MIB树的每个节点被指定为一个数字(非负数),同一层的节
点用不同的数字区分。
 这些节点数字由标准组织指定。MIB树中的任何一个节点由其
所处的位置来命名,同一层的节点数字都不相同。
 这个数字串称为对应于MIB对象的对象标识符(OID,Object
Identifier)。
 例如,ODI,1.3.6.1.2.1.1代表的对象是从命名为“1”的顶
级节点开始,后续的下级节点“3”,再下一级是“6”,依此
类推。
32 /79
计算机网络管理技术
 在Internet节点下面的第二个节点是mgmt(管理),标
号是2。
 再下面是管理信息库,原先的节点名是mib。1991年定
义了新的版本MIB-II。其标识为{1.3.6.1.2.1}或
{Internet(1) .2.1}
 最初的节点mib将其所管理的信息分为8个类别,如表21所示。现在的mib-2所包含的信息类别已超过40个。
 MIB的定义与具体的网络管理协议无关,这对于设备制
造商和用户来说都是有利的。
33 /79
计算机网络管理技术
表2-1 最初的节点mib管理的信息类别
类别
标号
所包含的信息
system
(1)
主机或路由器的操作系统
interfaces
(2)
各种网络接口及它们的测定通信量
address translation
(3)
地址转换(例如 ARP 映射)
ip
(4)
Internet 软件(IP 分组统计)
icmp
(5)
ICMP 软件(已收到 ICMP 消息的统计)
tcp
(6)
TCP 软件(算法、参数和统计)
udp
(7)
UDP 软件(UDP 通信量统计)
egp
(8)
EGP 软件(外部网关协议通信量统计)
34 /79
计算机网络管理技术
2.4 SNMP系统
2.4.1 管理信息库(MIB)
2.4.2 管理信息结构(SMI)
2.4.3 简单网络管理协议(SNMP)
35 /79
计算机网络管理技术
2.4.2 管理信息结构(SMI)
• 管理信息结构(Structure of Management Information,SMI)
用于定义存储在MIB中的管理信息的语法和语义,对MIB进行定义
和构造。
• SMI确定了可用于MIB中的数据类型并说明对象在MIB内部的表示
和命名。
• SMI的宗旨是保持MIB的简单性和可扩展性,从而简化管理,加强
互操作性,满足协同操作的要求。
36 /79
计算机网络管理技术
• SNMP网络管理的基础是含有被管理信息的数据库,如交换机、路
由器、防火墙、服务器等,他们各自维护着一个含有自身运行状
态的树型结构(如图2-9所示)
• 其中每一个叶子节点代表一个信息、变量或配置,设备对这棵树
中的标量(叶子节点)进行赋值,以反映自己的状态。
• 管理站读取相应的变量以获取网络节点设备的状态信息,
• 管理站也可以通过修改某些值从而实现简单的控制功能。
37 /79
计算机网络管理技术
38 /79
计算机网络管理技术
2.4 SNMP系统
2.4.1 管理信息库(MIB)
2.4.2 管理信息结构(SMI)
2.4.3 简单网络管理协议(SNMP)
39 /79
计算机网络管理技术
2.4.3 简单网络管理协议(SNMP)
• SNMP为应用层协议,是TCP/IP协议族的一部分。
• 它通过用户数据报协议(UDP)来操作。
• 管理站进程通过SNMP完成网络管理。
• SNMP在UDP、IP及有关的特殊网络协议(如Ethernet、FDDI、
X.25)之上实现。
40 /79
计算机网络管理技术
SNMP的协议环境如图所示:
•管理站发出3类SNMP的消息GetRequest、GetNextRequest、SetRequest。
•3类消息都由代理用GetResponse消息应答,该消息被上交给管理应用进程。
•另外,代理可以发出Trap消息,向管理站报告有关MIB及管理资源的事件。
管理系统
被管系统
被管资源
SNMP管理程序
SNMP代理程序
UDP
UDP
IP
IP
数据链路层
数据链路层
物理层
物理层
trap
getresponse
get
get-next
set
SNMP被管对象
trap
getresponse
get-next
set
get
管理应用进程
网络
41 /79
计算机网络管理技术
第2章
2.1
2.2
2.3
2.4
2.5
2.6
SNMP网络管理架构
网络管理协议及功能
SNMP的功能及典型应用
SNMP的实现方法、结构和组成
SNMP系统
SNMP协议
SNMP的发展和现状
42 /79
计算机网络管理技术
2.5 SNMP协议
2.5.1
2.5.2
2.5.3
2.5.4
2.5.5
SNMP的体系结构
SNMP的工作机制
SNMP的报文格式
SNMP共同体和安全控制
轮询和中断
43 /79
计算机网络管理技术
2.5.1 SNMP的体系结构
•
•
SNMP采用集中式的管理方案
主要由管理站(Manager)、管理代理(Agent)、管理对象(Managed Object)
以及描述管理对象状态的MIB组成。
44 /79
计算机网络管理技术
• 管理进程是整个网络管理系统的控制中心,在在网管工作站
上。
• 管理代理维护一个本地的MIB。管理代理负责收集有关本地的
管理对象的信息并具有以下几项基本功能:
• 设置和修改MIB中的各种变量值;
• 读取MIB中的信息并传回管理进程;
• 执行管理进程的管理操作。
• 管理对象是经过抽象的网络元素,它对应于网络中具体可以
操作的数据,如记录设备工作状态的变量、设备内的工作参
数等,也可指某些具体的设备。
45 /79
计算机网络管理技术
2.5 SNMP协议
2.5.1
2.5.2
2.5.3
2.5.4
2.5.5
SNMP的体系结构
SNMP的工作机制
SNMP的报文格式
SNMP共同体和安全控制
轮询和中断
46 /79
计算机网络管理技术
2.5.2 SNMP的工作机制
SNMP的操作很简单,主要是对变量的修改和检查,共定义了
以下5类管理操作:
·
GetRequest:读对象操作,使管理进程向代理发起读的操作
读取管理对象的值,以获取设备或网络的运行数据以及配置信息
等。
·
GetNextRequest:读取当前对象的下一个可读取的对象实例
值。(因为SNMP不支持一次读取一张表或表中的一行数据,为了解决这一问
题便提供了GetNextRequest操作:首先对对象标识(OID)进行
GetNextRequest操作,将收到下一个可读取对象的实例标识,接着对这个实
例标识执行GetNextRequest,会得到再下一个实例标识,这样不断执行下去
就可以读取完整的一张表。)
47 /79
计算机网络管理技术
· SetRequest:管理进程更新代理中对象的值。
• 在网络管理中,当需要对设备的一些参数、配置、状态等进行重新配置时,
就需要用到SetRequest操作。
• SetRequest可以对MIB中权限为只写(wtite-only)和可读写(readwrite)的对象进行操作。
· GetResponse:代理对GetRequest/GetNextRequest/SetRequest
这3种操作的应答。
48 /79
计算机网络管理技术
· Trap:代理向管理进程发送事件值。
• SNMP中的GetRequest/GetNextRequest/SetRequest都由管理进程主动发起,
采取轮询的方式。
• 由于轮询时间时隔是固定的,所以导致管理进程无法及时掌握到这一事件
信息,使事件失去了实效性。
• 另一方面,考虑到网络带宽的占用,又不可能将轮询的时间间隔设置得太
小。
• 所以,就需要一种当设备的数据或状态发生变化时能够主动向管理进程发
送这一事件信息的机制
• Trap是由代理主动发起,向管理进程通报设备信息的重要改变的操作。
49 /79
计算机网络管理技术
• 前面的3种操作是
由管理站中的管理
进程向代理中代理
进程发出的,后面
的2个操作是代理
进程发给管理进程
的。
• 为了简化起见,前
面3个操作称为get、
get-next和set操
作。
• 端口:161,162
50 /79
计算机网络管理技术
2.5 SNMP协议
2.5.1
2.5.2
2.5.3
2.5.4
2.5.5
SNMP的体系结构
SNMP的工作机制
SNMP的报文格式
SNMP共同体和安全控制
轮询和中断
51 /79
计算机网络管理技术
2.5.3 SNMP的报文格式
• SNMP定义了5种协议数据单元PDU(也就是SNMP报文。
• 下图是封装成UDP数据报的5种操作的SNMP报文格式。
• 一个SNMP报文共有三个部分组成:公共SNMP首部、get/set首部
和变量绑定。
52 /79
计算机网络管理技术
1. 公共SNMP首部
公共SNMP首部共占用3个字段:
名称
PDU类型
0
get-request
入时为SNMP版本号减1,例如SNMPv1则
应写入0。
1
get-next-request
· 共同体(community):共同体就是
一个字符串,作为管理进程和代理进
程之间的明文口令,目前许多系统缺
省的共同体名为“public”。有关共同
体在本章后面将进行专门介绍。
2
get-response
3
set-request
4
trap
· 版本:标识SNMP的版本号,具体写
· PDU类型:根据PDU的类型,填入0~4
中的一个数字,其对应关系如表2-2所
示。
53 /79
计算机网络管理技术
2. get/set首部
get/set首部共占用3个字段:
· 请求标识符(request ID):这是由管理进程设置的一个整数值。代
理进程在发送get-response报文时也要返回此请求标识符。管理进程
可同时向许多代理发出get报文,这些报文都使用UDP传送,先发送的
有可能后到达。设置了请求标识符可使管理进程能够识别返回的响应
报文对应于哪一个请求报文。
· 差错状态(error status):由代理进程应答时填入0~5中的一个数字,
具体描述如后表所示。
· 差错索引(error index):当出现noSuchName、badValue或readOnly
的差错时,由代理进程在应答时设置的一个整数,它指明有差错的变
量在变量列表中的偏移。
54 /79
计算机网络管理技术
差错状态
说明
名字
0
NoError
一切正常
1
TooBig
代理无法将应答装入到一个 SNMP 报文之中
2
noSuchName
操作指明了一个不存在的变量
3
BadValue
一个 set 操作指明了一个无效值或无效语法
4
ReadOnly
管理进程试图修改一个只读变量
5
GenErr
某些其他的差错
55 /79
3. trap首部
Trap首部占用了5个字段:
· 企业(enterprise):填入
trap报文的网络设备的对象标识
符。此对象标识符一定是对象命
名树上的enterprise节点
{1.3.6.1.4.1}下面的一棵子树
上。该字段也称为“制造商ID”。
· 代理地址(agent-addr):产
生trap的SNMP代理或代理服务器
(proxy)的地址。
· trap类型:该字段正式的名称
是generic-trap,共分为右表中
的7种。
计算机网络管理技术
Trap
类型
名字
说明
0
coldStart
代理进行了初始化
1
warmStart
代理进行了重新初始化
2
linkDown
一个接口从工作状态变为故障
状态
3
linkUp
一个接口从故障状态变为工作
状态
4
authenticati
onFailure
从SNMP管理进程接收到具有
一个无效共同体的报文
5
egpNeighbo
rLoss
一个EGP相邻路由器变为故障
状态
6
enterpriseS
pecific
代理自定义的事件,需要用后
面的“特定代码”来指明
56 /79
计算机网络管理技术
当使用上述类型2、3、5时,在报文后面变量部分的第一个变量应
标识响应的接口。
· 特定代码(specific-code):指明代理自定义的事件(如果
trap类型为6),否则为0。
· 时间戳(timestamp):指明自代理进程初始化到trap报告的事
件发生所经历的时间,单位为10ms。
57 /79
计算机网络管理技术
4. 变量绑定(variable-bindings)
指明一个或多个变量的名称和对应的值。在get或get-next
报文中,变量的值被忽略。
58 /79
计算机网络管理技术
2.5 SNMP协议
2.5.1
2.5.2
2.5.3
2.5.4
2.5.5
SNMP的体系结构
SNMP的工作机制
SNMP的报文格式
SNMP共同体和安全控制
轮询和中断
59 /79
计算机网络管理技术
2.5.4 SNMP共同体和安全控制
目前的网络管理是一种分布式的应用。
• 与其他分布式的应用相同,网络管理中包含有一个应用协议支持
的多个应用实体的相互作用。
• 在SNMP系统中,这些应用实体就是采用SNMP的管理站应用实体和
被管理设备的应用实体。
60 /79
计算机网络管理技术
SNMP系统具有一些不同于其他分布式应用的特性:
• 它包含一个管理站和多个被管理设备之间一对多的关系。反过来,
在SNMP系统中还包含另外一种一对多的关系,即一个被管理设备
和多个管理站之间的关系。
• 每个被管理设备控制着自己的本地MIB,同时必须能够控制多个
管理站对这个本地MIB的访问。
• 这里所说的控制具体包含两个方面的含义:
• 一是认证服务将对MIB的访问限定在授权的管理站的范围内;
• 二是访问策略对不同的管理站给予不同的访问权限。
• 如果系统中存在代理服务器(Proxy),还要求在这个代理服务器中实现
对托管设备的认证服务和访问权限。
61 /79
计算机网络管理技术
共同体和安全控制:
• 通过共同体(community)提供了基本的和有限的安全保护。
• 用共同体来定义一个代理(agent)和一组管理进程(manager)
之间的认证、访问控制和代管的关系。
• 共同体是一个在被管理设备中定义的本地概念。被管理设备为每
组可选的认证、访问控制和代理(代管)特性建立一个共同体。
• 每个共同体被赋予一个在被管理设备内部唯一的共同体名,该共
同体名要提供给SNMP系统内的所有管理进程,以便它们在get和
set操作中应用。
• 由于共同体是在代理中本地定义的,因此不同的代理中可能会定
义相同的共同体名。共同体名相同并不意味者共同体相同,因此
管理进程必须将共同体名与代理联系起来加以应用。
62 /79
计算机网络管理技术
2.5 SNMP协议
2.5.1
2.5.2
2.5.3
2.5.4
2.5.5
SNMP的体系结构
SNMP的工作机制
SNMP的报文格式
SNMP共同体和安全控制
轮询和中断
63 /79
计算机网络管理技术
2.5.5 轮询和中断
SNMP代理从被管设备中收集数据有三种方法:轮询、中断和
面向自陷的轮询。
1. 轮询(polling-only)
• 代理软件不断地收集统计数据,并把这些数据记录到一个管理信息库
(MIB)中。
• 管理进程通过向代理的MIB发出查询信号可以得到这些信息,这个过程
就叫轮询(polling)。
• 为了能够全面地查看一段时间的通信流量和变化率,管理进程必须不
断地轮询设备中的代理。
• 管理站可以使用SNMP来评价网络的运行状况,并发现通信的趋势,如
哪一个网段接近通信负载的最大能力或正使通信出错等。先进的SNMP
网管系统甚至可以通过编程来自动关闭端口或采取其它矫正措施来处
理历史的网络数据。
64 /79
计算机网络管理技术
2. 中断(interrupt-based)
• 当有异常事件发生时,使用中断的方法可以立即通知网管系统,
实时性很强。
• 但这种方法也有缺陷:
• 产生错误或自陷需要系统资源。
• 如果自陷必须转发大量的信息,那么被管理设备可能不得不消耗更多的事
件和系统资源来产生自陷,这将会影响到网络管理的主要功能。
• 在中断方式中,如果几个同类型的自陷事件接连发生,那么大量
网络带宽可能将被相同的信息所占用。尤其是自陷如果是由于网
络阻塞引起时,事情就会变得特别糟糕。
65 /79
计算机网络管理技术
3. 面向自陷的轮询(trap-directed polling)
面向自陷的轮询是轮询和中断两种方式的结合,是目前执行网络管
理最有效的方法。
• 一般来说,网络管理工作站轮询被管理设备中的代理收集的数据,
并且在控制台上用数字或图形方法来显示这些数据,以便于网络
管理员分析和管理网络中的设备及网络的通信量。
• 被管理设备中的代理可以在任何时候向网络管理工作站报告错误
情况,避免了轮询中存在的不足。
• 在这种方法中,当一个设备产生了一个自陷时,可以在网络管理
工作站上查询该设备(前提是该设备仍然能够连接上),以获得
更多的信息。
66 /79
计算机网络管理技术
第2章
2.1
2.2
2.3
2.4
2.5
2.6
SNMP网络管理架构
网络管理协议及功能
SNMP的功能及典型应用
SNMP的实现方法、结构和组成
SNMP系统
SNMP协议
SNMP的发展和现状
67 /79
计算机网络管理技术
2.6 SNMP的发展和现状
2.6.1
2.6.2
2.6.3
2.6.4
SNMP的发展历史
SNMPv2的特点
SNMPv3的特点
使用SNMP时的注意事项
68 /79
计算机网络管理技术
2.6.1 SNMP的发展历史
SNMP发展到现在,共推出了三个版本和两个扩展,具体如下:
· 1989年,SNMPv1发布(CMOT推出失败,基于SGMP(简单网管管理协议)设
计SNMP)。
· 1991年,针对SNMPv1的扩展RMON(Remote Monitoring,远程监
视)发布。RMON扩展了SNMPv1的功能,主要加强了对局域网及设
备的管理。
· 1995年,SNMPv2正式发布(SNMPv1的升级版在1993年提出),
SNMPv2在SNMPv1的基础上增加了部分功能,并制定了在OSI网络
中使用SNMP的具体方法。同年,RMON升级为RMON2。
· 1998年,SNMPv3发布草案。
· 2002年,SNMPv3的标准正式出台,重点加强了SNMP的安全性,并
为将来的发展设计了总体的架构。
69 /79
计算机网络管理技术
2.6 SNMP的发展和现状
2.6.1
2.6.2
2.6.3
2.6.4
SNMP的发展历史
SNMPv2的特点
SNMPv3的特点
使用SNMP时的注意事项
70 /79
计算机网络管理技术
2.6.2 SNMPv2的特点
简单化是SNMP标准取得成功的主要原因。正是因为SNMP的实
现较为简单,所以在SNMPv1发布后得到了大量应用,也正是因为
SNMPv1的广泛使用,SNMPv1存在的缺陷很快暴露了出来。
1. SNMPv1的主要缺陷是安全问题
· 没有提供读取大块数据的有效机制,对大块数据进行存取的效率
很低;
· 没有提供足够的安全机制,安全性很差,对管理消息不能进行鉴
别,也不能防止监听;
· 没有提供管理进程与管理进程之间的通信机制,只适合集中式管
理,而不利于进行分布式管理;
· 只适用于监测网络设备,不适用于监测网络本身;
· 由于trap数据报采用面向非连接的UDP协议传输,没有应答。
71 /79
计算机网络管理技术
2. SNMPv2的主要功能改进
· 提供了一次读取大块数据的能力(GetBulkRequest);
· 增加了管理进程(manager)与管理进程之间的信息交换机制
(InformRequest),从而支持分布式管理结构。(由中间manager
来分担主manager的任务,增加了远程站点的局部自主性);
· 可在多种网络协议上运行,如OSI、Appletalk和IPX等,适用多
协议网络环境(但它的缺省网络协议仍是UDP);
· SMI为被管理对象和MIB提供了更详尽的规范和文档;
· SNMPv2的MIB定义在MIB-Ⅱ基础上,并对MIB-Ⅱ进行了修改和扩
充(节点MIB 8->40);
· 提供了安全管理规范(时间问题导致其放弃安全管理部分)。
72 /79
计算机网络管理技术
2.6 SNMP的发展和现状
2.6.1
2.6.2
2.6.3
2.6.4
SNMP的发展历史
SNMPv2的特点
SNMPv3的特点
使用SNMP时的注意事项
73 /79
计算机网络管理技术
2.6.3 SNMPv3的特点
• SNMPv3的最突出特点是其安全性。具体来说,SNMPv3使用了
SNMPv1和SNMPv2的消息、操作及传输层映射,并在前面两个版本
的基础上增加了用于安全的模型和访问控制。
• SNMPv1和SNMPv2的所有通信字符串和数据都以明文形式发送。为
了解决安全问题,SNMPv3通过对数据进行加密和鉴别加强了数据
的安全性。
• 加密:加密的目的是保证数据不被窃取。DES算法。
• 鉴别:鉴别的目的是保证数据的完整性和发送者的正确性,防止别人伪造
或篡改数据。MD5,SHA。
74 /79
计算机网络管理技术
• SNMPv3使用基于用户的安全模型(USM)实现安全性。在SNMPv3
中,消息与用户联系起来,一条消息对应一个用户,消息使用用
户的密码生成密钥,从而进行加密,实现各种安全特性。
• 具体来讲,USM定义了下面的目标:
· 通过数据完整性检查,保护数据在传输过程中没有被篡改或毁坏,传输顺
序也没有被有意改变;
· 通过数据来源鉴别能够验证数据和发送源的一致性;
· 数据保密能够使数据在传输过程中不被窃听,也未发生泄露;
· 通过消息时序性限制,如果消息在一个指定的时间范围外产生,则拒绝接
收。
• SNMPv3没有定义其他的新的SNMP功能,只是为SNMP提供了安全方
面的功能。
75 /79
计算机网络管理技术
2.6 SNMP的发展和现状
2.6.1
2.6.2
2.6.3
2.6.4
SNMP的发展历史
SNMPv2的特点
SNMPv3的特点
使用SNMP时的注意事项
76 /79
2.6.4 使用SNMP时的注意事项
计算机网络管理技术
· 尽量将SNMP服务升级到v3版本。(其中,硬件设备的服务补丁需要向制造商联系
获得,而操作系统(如Linux、Windows 2000/2003等)可从网上直接下载安装。)
· 保护SNMP共同体名称:许多设备缺省的SNMP共同体名称为
“public”,这是很不安全的。建议管理人员修改该缺省值,并
增加字符串的复杂性。
· 在网络出口设备上过滤SNMP:目前,SNMP主要用于企业内部网络
的管理,对于外部用户来说一般没有必要使用SNMP。为此,可以
在企业网络的出口设备(主要为路由器或防火墙)上过滤掉SNMP
通信和请求,从而保护内部网络。
• 标准的SNMP服务使用UDP 161和UDP 162两个端口,某些设备厂商也使用其
他的一些端口,如UDP 199、391、705、1993等。禁用这些端口通信后,
外部网络访问企业内部网络的能力就受到了限制。
• 在路由器和防火墙上可以使用ACL(访问控制列表)来过滤SNMP。
77 /79
计算机网络管理技术
总结:
SNMP是对网络进行高效管理的重要技术。然而,
SNMP的早期版本SNMPv1和SNMPv2天生缺乏安全性,
即使最新版本SNMPv3通过加密和鉴别加强了安全性,
但也有可能由于用户使用不当导致应用上的安全隐
患。为此,用户应从协议选择(在条件允许时尽可
能地选择SNMPv3)、系统配置等方面加强对SNMP的
应用和管理。
78 /79
计算机网络管理技术
The end
79 /79