IPMI 通道模型与编号
IPMI 规范把 BMC 的对外能力抽象成通道(channel):LAN、串口、IPMB 各算一条,把用户权限也按「用户 × 通道」授予。因此所有改网络配置的命令都必须先指定通道号,例如 lan print 8 表示读第 8 通道的网络参数。通道编号由厂商实现决定,同一品牌不同代次也常常不一样,照抄文档里的编号是配置不生效的主要原因。
基本信息
| 适用平台 | 支持 IPMI 2.0 的服务器 BMC |
|---|---|
| 枚举命令 | channel info(无参数列出全部通道概要) |
| 单通道详情 | channel info <n> 看介质类型、协议与协议类型 |
| 网络读写 | lan print <n> / lan set <n> 仅对 LAN 类通道有效 |
| 加密套件 | channel getciphers ipmi <n> 查看允许的认证与加密组合 |
| 典型编号 | LAN 通道常见 1、3、8,随平台与机型变化 |
典型使用场景
- 新机型首次配置前先枚举通道,确认哪条是活动管理口所在的通道
- 改 IP、网关、VLAN 前确认目标通道,避免改到不生效的通道号
- 排查「命令返回成功但配置没变」:多为通道号指向了非 LAN 通道
- 安全检查:用 getciphers 确认没有保留过时的认证或加密套件
- 权限核查:结合 channel getaccess 确认各用户在通道上的权限
枚举与读取
枚举与读取
# 列出全部通道概要:介质类型与协议一目了然
ipmitool -I lanplus -H 10.0.0.10 -U admin -f /root/.ipmi_pass channel info
# 单通道详情:确认是不是 802.3 LAN 通道
ipmitool -I lanplus -H 10.0.0.10 -U admin -f /root/.ipmi_pass channel info 1
# 查看该通道允许的认证与加密套件
ipmitool -I lanplus -H 10.0.0.10 -U admin -f /root/.ipmi_pass channel getciphers ipmi 1
# 只对有效的 LAN 通道读取网络参数
ipmitool -I lanplus -H 10.0.0.10 -U admin -f /root/.ipmi_pass lan print 8
# 查看用户在指定通道上的权限
ipmitool -I lanplus -H 10.0.0.10 -U admin -f /root/.ipmi_pass channel getaccess 1 2channel info 逐项读法
| 字段 | 含义 | 判定要点 |
|---|---|---|
| Channel number | 通道编号 | 后续命令都要用这个编号 |
| Medium type | 介质类型(802.3 LAN、串口等) | 只有 LAN 类通道能跑 lan print/set |
| Protocol type | 协议(IPMB-1.0、LAN 等) | 与介质类型组合判断通道用途 |
| Session support | 是否支持会话(多会话/单会话) | 影响并发管理与会话上限 |
| Active sessions | 当前活动会话数 | 接近上限时新登录会被拒绝 |
专用管理口与共享业务口(NC-SI)往往落在不同的通道上:切换网口方案后,网络参数要写到对应通道才生效。
对非 LAN 通道执行 lan print 通常直接报错,但也有机型只返回空值:命令无输出时先确认通道类型,再怀疑网络本身。