问题描述
如题,如何通过ipmitool修改bmc的ip?根据说明手册尝试了一下会报错
![]()

环境信息
-
操作系统:[如 Ubuntu 24.04]
-
软件版本:[如 OpenUBMC2506]
尝试过的解决方案

ai说这个命令被禁用了,怎么解开这个禁用?
如题,如何通过ipmitool修改bmc的ip?根据说明手册尝试了一下会报错
![]()

操作系统:[如 Ubuntu 24.04]
软件版本:[如 OpenUBMC2506]

ai说这个命令被禁用了,怎么解开这个禁用?
答案内容由AI生成,仅供参考:
| 项目 | 说明 |
|---|---|
| 使用 RAW 命令修改 IP,但该命令被 BMC 禁用 | |
使用 ipmcset 或标准 ipmitool lan set 命令 |
|
| 需确认 BMC 固件支持且未禁用该功能 | |
在 OS 内优先使用 ipmcset,远程使用 ipmitool lan set |
|
| 若均不可行,请联系厂商或项目负责人(如昆仑太科_王亚洲)获取支持 |
ipmitool 修改 BMC 的 IP 地址?您提出的问题是:如何使用 ipmitool 修改 BMC 的 IP 地址? 您已经尝试了基于手册的 IPMI Raw 命令,但返回错误:
Unable to send RAW command (channel=0x0 netfn=0x30 lun=0x0 cmd=0x90 rsp=0xd6): Cannot execute command, command disabled
这表明 命令已被 BMC 禁用。下面我们将结合知识库信息,系统性地为您分析原因并提供解决方案。
错误码 rsp=0xd6 含义为 “Cannot execute command, command disabled”,即该 IPMI 命令当前在 BMC 固件中被禁用。
原因如下:
ipmitool raw 0x30 0x90 0x3A 0x1 0x0 0xC0 0xA8 0x2 0x65
这是一个 IPMI RAW 命令,属于低级别、厂商自定义(OEM)命令。ipmcset 工具(推荐)对于华为系或兼容 iBMC/openUBMC 的系统,建议优先使用 ipmcset 而非 RAW 命令来修改 IP。
ipmcset是华为 iBMC 提供的专用命令行工具,用于安全地配置 BMC 网络、用户、时间等参数。
ipmcset -d ipadd -v 192.168.2.105
ipmcset -d mask -v 255.255.255.0
ipmcset -d gateway -v 192.168.2.1
ipmcset -d ipmode -v dhcp
注意:
ipmcset 需要在 主机操作系统内执行(BMC 升级或 SSH 登录后环境)。某些支持标准 IPMI LAN 配置的平台,可使用以下命令:
ipmitool -H <BMC_IP> -U Administrator -P password lan print 1
ipmitool -H <BMC_IP> -U Administrator -P password lan set 1 ipaddr 192.168.2.105
ipmitool -H <BMC_IP> -U Administrator -P password lan set 1 netmask 255.255.255.0
ipmitool -H <BMC_IP> -U Administrator -P password lan set 1 defgw ipaddr 192.168.2.1
ipmitool -H <BMC_IP> -U Administrator -P password lan set 1 ipsrc dhcp
说明:
lan print/set 是标准 IPMI 命令,兼容性较好。根据知识库中 BMC Version 和 IPMI Raw Command 的描述:
执行 IPMI Raw 命令的能力 受 BMC 固件版本和安全策略控制。
0x30 0x90 0x3A)可能是旧版或未启用的功能。
不能直接通过命令“解锁”。
唯一方法是:
提示:有资料显示部分定制化 BMC 需通过配置白名单或修改
ipmi.json文件重新生成接口才能开放某些 RAW 命令(见bmcgo gen -r openubmc_dev)。
ipmitool -H <current_bmc_ip> -U Administrator -P password lan print 1
ipmitool mc info
# 或使用华为专用命令:
ipmcget -d --version
根据您提供的文档截图:
| 字段 | 值 |
|---|---|
| NetFn | 0x30 |
| CMD | 0x90 |
| Sub Command | 0x3A |
| Parameter Selector | 0x00 (set IP), 0x01 (set netmask) |
| Device Number | 0 (eth0), 1 (eth1) etc. |
| IP Address (4 bytes) | MSB first: e.g., 192.168.2.100 → 0xC0 0xA8 0x02 0x64 |
您输入的是:
0x30 0x90 0x3A 0x1 0x0 ...
第四个字节为 0x1,表示 参数选择器是“设置子网掩码”,但后面接的是 IP 地址,逻辑错误!
正确命令应为:
ipmitool raw 0x30 0x90 0x3A 0x00 0x00 0xC0 0xA8 0x02 0x64
0x00:设置 IP 地址0x00:设备号 eth0但仍可能因命令被禁用而失败。
| 项目 | 说明 |
|---|---|
| 使用 RAW 命令修改 IP,但该命令被 BMC 禁用 | |
使用 ipmcset 或标准 ipmitool lan set 命令 |
|
| 需确认 BMC 固件支持且未禁用该功能 | |
在 OS 内优先使用 ipmcset,远程使用 ipmitool lan set |
|
| 若均不可行,请联系厂商或项目负责人(如昆仑太科_王亚洲)获取支持 |
ipmcset 文档:支持 ipmcset -d ipadd 设置 IPipmitool lan set:标准 IPMI 配置方式如有更多环境信息(如确切 BMC 版本、是否为华为服务器、是否有 ipmcset 工具),可进一步提供精准指导。