SNMP 操作手册
SNMP 操作手册
Page 1 of 43
SNMP 操作手册
目 录
一 SNMP
协议概述 ................................................................................................................. 3
1 什么是 SNMP 协议.................................................................................................................3
2 SNMP 版本..............................................................................................................................3
3 SNMP 的基本操作..................................................................................................................4
4 网管站和代理..........................................................................................................................5
5 ASN.1 和 SMI..........................................................................................................................6
6 SNMP 报文..............................................................................................................................7
6.1 SNMP 的 5 种协议数据单元...............................................................................................7
7 管理变量的表示....................................................................................................................11
8 SNMP 的运行过程................................................................................................................11
8.1 GETREQUEST PDU..............................................................................................................12
8.2 GETNEXTREQUEST PDU.....................................................................................................13
8.3 GETRESPONSE PDU............................................................................................................14
8.4 SETREQUEST PDU...............................................................................................................14
8.5 TRAP PDU...........................................................................................................................15
9 SNMP MIB 编译器的功能...................................................................................................15
二 SNMP
操作实例 ............................................................................................................... 17
1 说明........................................................................................................................................17
2 SNMPV1 测试.......................................................................................................................17
3 SNMPV2 测试.......................................................................................................................22
4 SNMPV3 测试.......................................................................................................................27
4.1 基于“NOAUTHNOPRIV”的安全模式的 SNMPV3 测试......................................................27
4.2 基于“AUTHNOPRIV”的安全模式的 SNMPV3 测试..........................................................33
4.3 基于“AUTHPRIV”的安全模式的 SNMPV3 测试................................................................38
Page 2 of 43
SNMP 操作手册
一 SNMP 协议概述
1 什么是 SNMP 协议
SNMP(Simple Network Management Protocol)是被广泛接受并投入使用的工
业标准,它的目标是保证管理信息在任意两点中传送,便于网络管理员在网络上的任
何节点检索信息,进行修改,寻找故障;完成故障诊断,容量规划和报告生成。它采
用轮询机制,提供最基本的功能集。最适合小型、快速、低价格的环境使用。它只要
求无证实的传输层协议 UDP,受到许多产品的广泛支持。SNMP 在 TCP/IP 协议族中
的地位如下图:
SNMP (用到 ASN.1 抽象语法记法)
UDP
IP
链路层协议
硬件
2 SNMP 版本
SNMPv1:简单网络管理协议,是第一个正式协议版本,在 RFC1157 中定义;
SNMPv2C : 基 于 共 同 体 ( Community-based ) 的 SNMPv2 管 理 架 构 , 在
RFC1901 中定义的一个实验性协议;
SNMPv3 :通过对数据进行鉴别和加密,提供了以下的安全特性:
1) 确保数据在传输过程中不被篡改;
2) 确保数据从合法的数据源发出;
3) 加密报文,确保数据的机密性;
Page 3 of 43
SNMP 操作手册
SNMPv1 和 SNMPv2C 都采用基于共同体(Community-based)的安全架构。通
过定义主机地址以及认证名(Commumity string)来限定能够对代理的 MIB 进行操作
的管理者。SNMPv2C 包含 GetBulk 的机制并且能够对管理工作站返回更加详细的错
误信息类型。GetBulk 能够一次性的获取表格中的所有信息或者获取大批量的数据,
从而减少请求-响应的次数。SNMPv2C 错误处理能力的提高包括扩充错误代码以区分
不同类型的错误,在 SNMPv1 中这些错误仅有一种错误代码。现在通过错误代码可
以区分错误类型。由于网络上可能同时存在支持 SNMPv1 和 SNMPv2C 的管理工作
站,因此 SNMP 代理必须能够识别 SNMPv1 和 SNMPv2C 报文,并且能返回相应版
本的报文。在 SNMPv2 的基础上, SNMPv 3通过安全模型以及安全级别来确定对数
据 采 用 哪 种 安 全 机 制 进 行 处 理 ; 目 前 可 用 的 安 全 模 型 有 三 种 类 别 :
SNMPv1,SNMPv2C,SNMPv3。
下表为目前可用的安全模型以及安全级别
安全模型 安全级别 鉴别 加密 说明
SNMPv1 noAuthNoPri
v
认证名 无 通过认证名确认数据的合法性
SNMPv2c noAuthNoPri
v
认证名 无 通过认证名确认数据的合法性
SNMPv3 noAuthNoPri
v
用户名 无 通过用户名确认数据的合法性
SNMPv3 authNoPriv
MD5 或
SHA
无 提供基于 HMAC-MD5 或者
HMAC-SHA 的数据鉴别机制
SNMPv3 authPriv
MD5 或
SHA
DES
提供基于 HMAC-MD5 或者
HMAC-SHA 的数据鉴别机制
提供基于 CBC-DES 的数据加密
机制
3 SNMP 的基本操作
操作 操作含义
Get-request
从某变量中取值
Get-next-request
在表格中取下一项值
Page 4 of 43
SNMP 操作手册
Get-response
响应取操作
Set-request
把一数值存入具体变量
trap
报告事件信息
SNMP 以 GET-SET 方式替代了复杂的命令集,利用基本操作演绎出全部操作。用户
可以采用管理信息库标准或按标准的方式来定义自己的管理信息库(MIB)。这样做
的好处是:通过降低占网管系统中大多数的代理部件的成本来降低整个网管系统的成
本。
4 网管站和代理
网管站(NMS)对网络设备发送各种查询报文,并接收来自被管设备的响应及陷阱
(trap)报文,将结果显示出来。代理(agent)是驻留在被管设备上的一个进程,
负责接受、处理来自网管站的请求报文,然后从设备上其他协议模块中取得管理变量
的数值,形成响应报文,反送给 NMS。在一些紧急情况下,如接口状态发生改变,呼
叫成功等时候,主动通知 NMS(发送陷阱 TRAP 报文)。他们的关系如下图:
SNMP 就是用来规定 NMS 和 Agent 之间是如何传递管理信息的应用层协议。
Page 5 of 43