带内通过ibma获取网卡信息失败问题分析
更新时间: 2026/05/28
在Gitcode上查看源码

问题背景

  • 单板类型:鲲鹏服务器;
  • 软件版本:openubmc 25.09;
  • 涉及功能:网卡,iBMA,web页面,redfish;
  • 设备要求:鲲鹏服务器和网迅25Ge网卡,10Ge网卡;
  • 触发条件:带内通过ibma获取网卡信息。
  • 业务表现:预期正常获取;实际获取失败且web和资源树上都没有内容更新。

问题复现步骤

鲲鹏服务器和网迅25Ge网卡,10Ge网卡联调过程中,带内通过ibma获取网卡信息失败。web和资源树上都没有内容更新.

关键日志信息

app.log日志如下:

定位过程

  1. app.log可知网卡的对象及interface报错,需要结合os侧日志确认;

  2. OS侧日志信息获取并排查,日志获取方式如下:

    shell
        cd "$(rpm -ql iBMA2.0 | grep ibma$)"
        tar -zcf ibma_log.tar.gz log/ config/

    两条命令是先进入iBMA安装目录,再使用tar命令把iBMA的log目录和config目录文件打包。 OS版本获取方式:系统侧下发命令

    shell
        cat /etc/*-release
        uname -r

    OS版本信息查询结果如下: 结合OS版本和日志,分析确认,OS侧BMA日志正常;

  3. 根据os侧日志信息暂未发现异常,怀疑是host_agent获取的BMA资源信息与实际BMA上报的信息不一致,按以下提供的方式执行并确认观察点:

  4. 进入OS,开启iBMA白名单透传功能,开启白名单透传功能后可以通过redfish的方式获取iBMA上报给bmc的数据,对应命令及说明如下:

    text
        service iBMA status
        cd /opt/huawei/ibma/lib/common/config/
        chmod +w WhiteURLList.ini
        vi WhiteURLList.ini

    打开的文件添加一行:

    text
        "^/redfish/v1/_SmsID/.*$"

    重启iBMA服务:

    shell
        service iBMA restart

    等待BMC和iBMA建链;

  5. BMA 起来后,可以通过BMC侧直接访问BMA资源,使用postman等工具直接Get访问具体的网卡的Uri资源;

  6. 将上一步查询到的结果与host_agent资源协作接口中的相应资源内容做对比,确认是否一致;结论bmc和bma两边获取的资源内容是一致的:

    text
    ~ ~ # busctl --user introspect bmc.kepler.host_agent /bmc/kepler/Systems/1/Sms/1/ComputerSystem/Systems/1/EthernetInterfaces/0000_3Ac0_3A00_2E0_5F0000_3Ac1_3A00_2E1
    NAME TYPE SIGNATURE RESULT/VALUE FLAGS
    bmc.kepler.sms interface - - -
    ._40odata_2Econtext property v s "/redfish/v1/$metadata#Systems/Member… -
    ._40odata_2Eid property v s "/bmc/kepler/Systems/1/Sms/1/Computer… -
    ._40odata_2Etype property v s "#EthernetInterface.v1_0_2.EthernetIn… -
    bmc.kepler.sms.redfish interface - - -
    .AutoNeg property v b true -
    .Description property v s "Beijing Wangxun Technology Co., Ltd.… -
    .FullDuplex property v b true -
    .IPv4Addresses property v ai 0 -
    .IPv6Addresses property v ai 0 -
    .Id property v s “0000:c0:00.0_0000:c1:00.1” -
    .LinkStatus property v s “LinkUp” -
    .MACAddress property v s “02:02:03:04:05:07” -
    .MTUSize property v x 1500 -
    .Manufacturer property v s “Netswift” -
    .Name property v s “enp193s0f1” -
    .SpeedMbps property v x 25000 -
    ._40odata_2Econtext property v s "/redfish/v1/$metadata#Systems/Member… -
    ._40odata_2Eid property v s "/bmc/kepler/Systems/1/Sms/1/Computer… -
    ._40odata_2Etype property v s "#EthernetInterface.v1_0_2.EthernetIn… -
    bmc.kepler.sms.redfish.OAM interface - - -
    ._40odata_2Eid property v s "/bmc/kepler/Systems/1/Sms/1/Computer… -
    bmc.kepler.sms.redfish.Oem.Huawei interface - - -
    .DeviceID property v s “0x5025” -
    .DeviceLocation property v s “PCIeRiser3” -
    .DeviceName property v s “FF5025-DDATACXX” -
    .DeviceSilkScreen property v s “PCIe Card 8 (FF5025-DDATACXX)” -
    .DiagnosticStatus property v x 0 -
    .FirmwareVersion property v s “0x20260312” -
    .Model property v s “WX5025” -
    .NICName property v s “enp193s0f1” -
    .OnBoot property v s “null” -
    .PCIePath property v s "/sys/devices/pci0000:c0/0000:c0:00.0… -
    .PortType property v s “Physical” -
    .SubsystemDeviceID property v s “0x1000” -
    .SubsystemVendorID property v s “0x8088” -
    .VendorID property v s “0x8088” -
    bmc.kepler.sms.redfish.Oem.Huawei.BDFNumber interface - - -
    .BDF property v s “0000:c1:00.1” -
    .PortNum property v s “null” -
    .RootBDF property v s “0000:c0:00.0” -
    bmc.kepler.sms.redfish.Oem.Huawei.DriverInfo interface - - -
    .DriverName property v s “txgbe” -
    .DriverVersion property v s “2.1.1.3klos” -
    bmc.kepler.sms.redfish.Sff interface - - -
    ._40odata_2Eid property v s "/bmc/kepler/Systems/1/Sms/1/Computer… -
    bmc.kepler.sms.redfish.Statistics interface - - -
    ._40odata_2Eid property v s "/bmc/kepler/Systems/1/Sms/1/Computer… -
    bmc.kepler.sms.redfish.VLANs interface - - -
    ._40odata_2Eid property v s "/bmc/kepler/Systems/1/Sms/1/Computer… -
    org.freedesktop.DBus.Introspectable interface - - -
    .Introspect method - s -
    org.freedesktop.DBus.ObjectManager interface - - -
    .GetManagedObjects method - a{oa{sa{sv}}} -
    org.freedesktop.DBus.Peer interface - - -
    .GetMachineId method - s -
    .Ping method - - -
    org.freedesktop.DBus.Properties interface - - -
    .Get method ss v -
    .GetAll method s a{sv} -
    .Set method ssv - -
    .PropertiesChanged signal sa{sv}as - -

    text
    ~ ~ # busctl --user introspect bmc.kepler.host_agent /bmc/kepler/Systems/1/Sms/1/ComputerSystem/Systems/1/EthernetInterfaces/0000_3Ac0_3A00_2E0_5F0000_3Ac1_3A00_2E1/Sff
    NAME TYPE SIGNATURE RESULT/VALUE FLAGS
    bmc.kepler.sms interface - - -
    ._40odata_2Econtext property v s "/redfish/v1/$metadata#Systems/Member… -
    ._40odata_2Eid property v s "/bmc/kepler/Systems/1/Sms/1/Computer… -
    ._40odata_2Etype property v s "#EthernetInterface.v1_0_2.OemEtherne… -
    bmc.kepler.sms.redfish interface - - -
    .ChannelNum property v x 1 -
    .DiagnosticStatus property v as 1 “0x0” -
    .Id property v s “0000:c0:00.0_0000:c1:00.1” -
    .IsSffExist property v b true -
    .Item property v s “null” -
    .ManufactureDate property v s “211011” -
    .MediumMode property v s “MM” -
    .NICName property v s “enp193s0f1” -
    .Name property v s “Ethernet Interface Sff” -
    .PartNumber property v s “LTF8505-BC+” -
    .SerialNumber property v s “UG5BAL09237” -
    .SpeedMatch property v b true -
    .TransceiverType property v s “25GBASE-SR” -
    .TypeMatch property v b true -
    .VendorName property v s “Hisense” -
    .Wavelength property v s “850nm” -
    ._40odata_2Econtext property v s "/redfish/v1/$metadata#Systems/Member… -
    ._40odata_2Eid property v s "/bmc/kepler/Systems/1/Sms/1/Computer… -
    ._40odata_2Etype property v s "#EthernetInterface.v1_0_2.OemEtherne… -
    .speed property v as 1 “25000M” -
    .type property v s “SFP/SFP+/SFP28” -
    bmc.kepler.sms.redfish.Diagnostic interface - - -
    ._40odata_2Eid property v s "/bmc/kepler/Systems/1/Sms/1/Computer… -
    org.freedesktop.DBus.Introspectable interface - - -
    .Introspect method - s -
    org.freedesktop.DBus.ObjectManager interface - - -
    .GetManagedObjects method - a{oa{sa{sv}}} -
    org.freedesktop.DBus.Peer interface - - -
    .GetMachineId method - s -
    .Ping method - - -
    org.freedesktop.DBus.Properties interface - - -
    .Get method ss v -
    .GetAll method s a{sv} -
    .Set method ssv - -
    .PropertiesChanged signal sa{sv}as - -
  7. web页面结果可知,网卡信息可上报:

问题原因

iBMA未开启白名单透传功能,导致部分信息被拦截。

解决方案

按照定位过程中的说明,开启iBMA透传功能。