实现 SNMP MIB 全流程指南
1. MIB 设计要点
在设计 MIB 时,要考虑到未来的变化,这是比较困难的部分。不过对于一些简单的任务而言,如围绕简单 RTA 表的 MIB 设计相对轻松。但在实际应用中,为真实设备设计 MIB 并非易事。我们建议在设计时,思考可能需要的基本信息类型,具体如下:
- 配置信息
- 统计信息
- 历史信息
- 各种运行时状态
- 性能指标
- 使用水平
- 服务或资源饱和水平
考虑这些信息类型有助于构建更合理的 MIB 结构,以应对未来可能的需求变化。
2. 实现 SNMP MIB 的整体目标
我们的目标是实现一个支持自定义 MIB 的 SNMP 代理。当查询已定义的对象时,代理能返回这些对象的当前值,并且可以对具有读写访问权限的对象进行赋值操作。例如,可以使用snmptable命令从报警表中检索值:
$ snmptable -c public -v2c myappliance ladAlarmTable SNMP table: LAD-MIB::ladAlarmTable ladAlarmZoneName ladAlarmEnable ladAlarmLatching ladAlarmState ladAlarmCount Garage Door true 0 0 7 Motion Detector t