1、基础
1.1、管理和代理
SNMP 管理 (manager, 主机)常被称作为网络管理系统(NMS ) SNMP 代理 (agent , 要操作的机器)
1.2、操作命令
Get:管理站读取代理者处对象的值。 Set:管理站设置代理者处对象的值。 Trap:代理者主动向管理站通报重要事件。
1.3、消息构成
SNMP 消息由版本号 、团体名 和数据单元 构成,数据包的长度不是固定的。
版本号(version identifier): 说明现在使用的是哪个版本的SNMP协议 ,每个SNMP代理会直接抛弃与自己协议版本不同的数据报。
团体名(Community Name): 身份验证。类似于密码,默认值为 public。是管理代理的口令
协议数据单元(PDU ): Snmp通信时报文数据的载体。PDU指明了SNMP的消息类型及其相关参数
2、MIB(管理信息库)
管理信息库可以理解成为agent维护的管理对象数据库,MIB中定义的大部分管理对象的状态和统计信息都可以被NMS访问。 MIB是一个按照层次结构组织的树状结构,每个被管对象对应树形结构的一个叶子节点,称为一个object,拥有唯一的数字标识符
3、OID(对象标识符)
每一个节点都有一个对象标识符(OID)来唯一的标识也就是从根节点通向它的路径 。 例:名字空间ip结点下一个名字为ipInReceives的MIB变量被指派数字值3 该变量的名字为:iso.org.dod.internet.mgmt.mib.ip.ipInReceives 相应的数字表示为:1.3.6.1.2.1.4.3 当网络管理协议在报文中使用MIB变量时,每个变量名后还要加一个后缀,以作为该变量的一个实例 如ipInReceives的实例数字表示为:1.3.6.1.2.1.4.3.0.
4、SMI(管理信息结构)
4.1、简单类型(simple)
Integer :整型是-2,147,483,648~2,147,483,647的有符号整数octet string :字符串是0~65535个字节的有序序列OBJECT IDENTIFIER :来自按照ASN.1规则分配的对象标识符集
4.2、简单结构类型(simple-constructed)
SEQUENCE :用于列表。这一数据类型与大多数程序设计语言中的“structure”类似。 一个SEQUENCE包括0个或更多元素,每一个元素又是另一个ASN.1数据类型
4.3、应用类型(application-wide)
IpAddress : 以网络序表示的IP地址。因为它是一个32位的值,所以定义为4个字节;
counte r:计数器是一个非负的整数,它递增至最大值,而后回零。在SNMPv1中定义的计数器是32位的,即最大值为4,294,967,295;
Gauge :也是一个非负整数,它可以递增或递减,但达到最大值时保持在最大值,最大值为232-1;
time ticks :是一个时间单位,表示以0.01秒为单位计算的时间;
Get 获取当前OID的值 Get Next 获取下一个OID的值,会自动增加OID序号 Get Bulk 分页批量获取,一次获取10个值,会自动增加OID序号 Get Subtree 获取OID下面的所有子树的值 Walk 获取OID的值,会自动增加OID序号,且一直持续查询 Set 设置OID的值