前言
点个免费的赞和关注,有错误的地方请指出,看个人主页有惊喜。 作者:神的孩子都在歌唱
对象标识符(Object Identifier,OID) 是 SNMP代理提供的具有 唯一标识的键值,可保证对象在通信与信息处理中正确地定位和管理。 管理信息库(MIB,Management Information Base) 是TCP/IP网络管理协议标准框架的内容之一,MIB定义了受管设备必须保存的数据项、允许对每个数据项进行的操作及其含义, 即管理系统可访问的受管设备的控制和 状态信息等数据变量都保存在MIB中。
可以这样理解:
概念 | 类比 |
|---|---|
MIB | 数据库表结构(定义了指标名称和类型) |
OID | 每个字段的唯一 ID |
SNMP | 用来访问这些字段的协议 |
也就是说:

SNMP(Simple Network Management Protocol) 中文叫做简单网络管理协议,是 TCP/IP 协议族中用于管理和监控网络设备的标准协议。
它的主要功能包括:
SNMP 是典型的 C/S 架构:
角色 | 功能 |
|---|---|
Manager(管理端) | 比如 Zabbix、Prometheus、Nagios,用来查询或接收设备信息 |
Agent(代理端) | 运行在路由器、交换机、服务器上,负责提供数据 |
MIB(管理信息库) | 存储监控指标定义的“数据库” |
OID(对象标识符) | 每个指标的唯一编号 |
SNMP 的基本工作流程

MIB(Management Information Base)是一个树状结构的数据库,里面定义了设备可被管理的所有参数。
每一个 MIB 文件通常以 .mib 或 .txt 结尾,内容是一系列 变量定义 + OID + 类型。

例子(节选):

这表示:
sysDescr){ icmp 4 }OID(Object Identifier)是用一串数字来唯一标识设备上的某个管理对象。
比如:
对象 | OID | 含义 |
|---|---|---|
sysDescr | 1.3.6.1.2.1.1.1 | 系统描述 |
sysUpTime | 1.3.6.1.2.1.1.3 | 设备运行时间 |
ifInOctets | 1.3.6.1.2.1.2.2.1.10 | 接口输入字节数 |
ifOutOctets | 1.3.6.1.2.1.2.2.1.16 | 接口输出字节数 |
这串数字其实对应 MIB 树上的路径,可以用命令查看如下:

使用 snmpwalk 获取设备信息
snmpwalk -v2c -c public 192.168.1.1 system只查询某个 OID
snmpget -v2c -c public 192.168.1.1 1.3.6.1.2.1.1.3.0常见 OID 分类(MIB-II 标准)
分类 | OID | 内容 |
|---|---|---|
system | 1.3.6.1.2.1.1 | 系统信息(描述、运行时间) |
interfaces | 1.3.6.1.2.1.2 | 网卡接口流量统计 |
ip | 1.3.6.1.2.1.4 | IP 层信息 |
tcp | 1.3.6.1.2.1.6 | TCP 连接状态 |
udp | 1.3.6.1.2.1.7 | UDP 数据包统计 |
snmp | 1.3.6.1.2.1.11 | SNMP 协议自身统计 |
关注 公众号 神的孩子都在歌唱 可领取 几十G的 python ,java, 计算机基础,算法,网络等学习资料
作者:神的孩子都在歌唱 本人博客:https://blog.csdn.net/weixin_46654114 转载说明:务必注明来源,附带本人博客链接