文章目录
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个字节;
-
counter:计数器是一个非负的整数,它递增至最大值,而后回零。在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的值