使用ipmi命令查询snmp trap日发送量异常问题分析
更新时间: 2026/05/28
在Gitcode上查看源码

问题背景

  • 单板类型:自研板;
  • 软件版本:openUBMC 25.09;
  • 涉及功能:ipmi读取snmp trap日发送量;
  • 预制条件:按照要求配置snmp,构造三条传感器事件;
  • 触发条件:发送ipmi命令读取snmp trap日发送量;
  • 业务表现:预期ipmi命令查询发送量非0;实际ipmi命令查询发送量为0。

问题来源

社区

问题复现步骤

  1. snmp配置

  2. 构建传感器事件

  3. 执行ipmi命令,查看结果;

text
ipmitool -H ip地址 -I lanplus -p 623 -U 用户名 -P 密码 -C 17 raw 0x30 0x93 0xDB 0x07 0x00 0x87 0x00 0x03 0x00 0x00 0x10

关键日志信息

ipmi查询结果显示为0,app.log无异常,且无报错:

定位过程

  1. 尝试构建系统事件,用ipmi命令查询snmp trap日发送量,依然为0;
  2. 确认告警模拟方式;如果是调用web页面那些模拟上报的话,不会记录到日发送量里面,目的是为了防止测试数据影响到真实数据,如果开启了snmp上报,在触发告警等才会记录;确认告警模拟方式为告传感器事件是通过修改Scanner达到门限传感器的告警值,系统事件是修改onepower的温度触发0x03000012电源过温事件,确认告警模拟正常,没问题;
  3. ipmi命令分析;根据ipmi命令可知,问题调用的ipmi命令是0x03,需要查看代码配置,网络管理系统配置的上报地址是不是在序号为4的地方,03的话查的是序号4的,如果代码配置到其他地方,这里查询到0就是正常的。
  4. 确认ipmi传的是0x03,序号4这里未配置地址。

问题原因

ipmi查询底地址未配置,0x03代表的是序号4的上报地址,实际这个地址为空,需要查询的是0x02的地址;

解决方案

ipmi命令改为如下查询即可:

shell
  ipmitool -H ip地址 -I lanplus -p 623 -U 用户名 -P 密码 -C 17 raw 0x30 0x93 0xDB 0x07 0x00 0x87 0x00 0x02 0x00 0x00 0x10