简单网络管理协议SNMP
一、SNMP演变
SNMP发展历史
- 简单网关监控协议(SGMP)标志了TCP/IP网络有了专门的管理工具。
- 在SGMP基础上改进成简单网络管理协议(SNMP).
- RMON—远程网络监控。
- RMON没有修改或增加SNMP的协议和SMI,只是增加了SNMP监视子网的能力。
- RMON和SNMP区别?
RMON提供了整个子网的管理信息;
SNMP管理信息库只包含本地设备的管理信息。
SNMPv1
SNMPv1五种PDU,四种核心协议数据单元(PDU):
- GetRequest,用来获取指定对象的信息
- GetNextRequest,用来连续获取指定的多个对象的信息
- SetRequest,用来设置一个管理对象的信息
- Trap,当管理对象的信息发生变化时,主动向管理站报告这种变化
- GetResponse
SNMPv1只使用了一种安全策略--------团体名。
SNMPv3
- SNMPv3基于用户的安全模型;
- SNMPv3基于视图的访问控制模型.
二、SNMPv1 PDU与协议操作
操作:
- Get:管理站检索管理信息库中标量对象的值;
- Set:管理站设置管理信息库中标量对象的值;
- Trap:代理向管理站报告管理对象的状态变化。
SNMP PDU的格式
一个SNMP报文由3部分组成:
- 版本号
- 团体名
- 协议数据单元(PDU)
SNMPv1报文格式
- 版本(Version):SNMP版本号。取值0表示SNMPv1,取值1则表示SNMPv2
- 团体名(Community):用于管理站和代理之间的认证
- 请求标识(Request ID):SNMP给每个请求分配全局唯一的ID,用于匹配请求和响应。请求标识的另一个作用是检测由不可靠的传输服务产生的重复报文
- 错误状态(Error status):用于表示在处理请求时出现的状况
- 错误索引(Error index):有错误时指向出错的变量
- 变量绑定表(Variable bindings):变量绑定列表,由变量名和变量值对组成
分析SNMP数据包
例题
GetRequest检索变量名所指的是对象实例,而GetNextRequest检索变量名所指的是“下一个”对象实例。
与Get是类似的(tooBig、noSuchName和genError)
然而若有一个变量的名字和要设置的值在类型、长度或实际值方面不匹配,则返回错误条件badValue
赞 (0)