bmc_network
更新时间: 2026/02/04
在Gitcode上查看源码

bmc_network

1.功能简介

bmc_network主要负责bmc的网络通信,从两个角度保障BMC的正常网络通信:
1、配置对外网络,用户可以通过BMC配置的管理IP带外访问BMC;
2、配置对内网络,主要用于管理板与BMC节点之间,同一机框内多个BMC之间,BMC与服务器内部其他固件的网络通信;

2.关键特性

2.1 配置IPv4

IPv4有两种方式设置
1、设置静态IPv4信息:IP、掩码、网关
2、设置DHCP模式由DHCP服务器动态分发IPv4信息,详情见DHCP介绍
3、配置成DHCP时,还会配置备份IPv4地址、掩码,当DHCP未获取到IP地址时,还可以通过备份IP访问

2.2 配置IPv6

IPv6地址有三种方式设置
1、设置静态IPv6信息:IP、前缀、网关
2、设置DHCPv6模式动态分发IPv6信息,详情见DHCPv6介绍
3、通过SLAAC自动配置无状态地址;

2.3 外网网口切换

BMC的网络设备通常分为两种(专用网口、NCSI网口),专用网口是BMC自身的管理网口(通常对应eth2),NCSI网口指BMC通过NCSI技术与服务器内其他网络设备实现共享的网口(通常对应eth0);这里的网口切换指的是对外网络的配置在专用网口、NCSI网口之间切换,例如从专用网口切换到NCSI网口时,eth2上的对外IP会被清除,eth0上会重新配置对外IP,外网网口切换有两种模式:
1、手动切换到指定网口
2、设置自适应模式,自动选择优先级高且是连接状态的网口(通常专用网口优先级最高)
3、网页端可以设置网口是否参与自适应模式,默认情况下所有网口都参与自适应模式

2.4 NCSI网口添加、删除

BMC支持NCSI能力,bmc_network提供了NCSI网口的添加和删除接口,该接口由network_adapter组件调用,初始化时network_adapter识别到NCSI网口的信息后来添加NCSI网口,如果该网口通信出现异常,network_adapter再调用删除接口将网口删除

2.5 外网VLAN配置

VLAN配置分为专用网口VLAN和NCSI网口VLAN两种配置,当配置了VLAN后,BMC的网口只会处理带了对应VLAN tag的报文,相当于划分了虚拟的局域网。

2.6 内网配置

BMC除了配置对外IP,还需要配置内网与服务器内部的固件网络通信,内网的配置通常是在已有的网口上划分不同的VLAN用于和不同的固件进行通信;内网相对外网配置来说,要稳定许多,可供修改的接口较少,每种机型的内网配置在对应机型的CSR中,初始化时将网口、VLAN、IP等信息设置即可。

2.7 节点与管理板链路检测

在机柜环境中,BMC的节点与管理板之间还有心跳检测,若链路检测失败,外网会切换到另一条通信正常的链路保障正常通信,例如DA123C机型、天工HPC/AI都有链路检测

2.8 iptables配置

1、BMC想要通过web、ssh等服务被访问,不只是需要配置基本的网口和IP,还需要配置iptables的nat转发规则实现对不同服务报文的转发,才能让服务正常工作
2、BMC配置filter表过滤规则,只接收对应网口收到的指定IP的报文,对报文的接收来源和速率进行限制,预防泛洪攻击

2.9 LLDP

1、通过接收LLDP报文,获取对端交换机的端口描述,常用于解析节点槽位号,生成节点的内网IP等
2、支持BMC往外发送LLDP报文,其中LLDP报文的发送周期是可配置的

2.10 网口相关配置

1、网口mac配置,可通过ipmi命令修改BMC网口的mac地址,mac地址一般在装备阶段设置一次后就固化下来
2、网口速率配置,支持配置自协商或者非自协商模式下自定义网口速率和半/全双工模式
3、支持up/down网口,初始化时会将所有网口全部up起来,同时也提供接口up/down网口

2.11 主机名、域名、FQDN配置

设置BMC的对外主机名(Host Name)和域名(Domain Name),全称域名FQDN,外界可通过域名和主机名访问BMC

3.资源协作接口

3.1 EthernetInterfaces接口说明

资源树接口:bmc.kepler.Managers.EthernetInterfaces

属性说明

属性名类型只读描述示例值/备注
EthNameString网口名称eth2
NetModeString网络模式(Fixed, Automatic)Fixed
MacString网口Mac地址22:22:22:22:22:22
IpVersionStringIP协议类型(IPv4, IPv6, IPv4AndIPv6)IPv4AndIPv6
NcsiEnableBooleanNCSI使能状态false
PortIdU8当前激活端口1
StatusBoolean该IP是否在工作状态中true
ChannelU8网口对应LAN通道号9
VLANEnableBooleanNCSI VLAN使能状态false
VLANIdU16Vlan Id0
MinVLANIdU16VLAN取值下限1
MaxVLANIdU16VLAN取值上限4094
SLAACAddressListString[]SLAAC地址--
LinkLocalAddressStringIPv6本地链路地址0:0:0:0:0:0:0:0/64
BackupIpActivatedBoolean备份IP激活状态false
DefaultFactoryIpModeString出厂默认IPv4模式(DHCP, Static)Static
DefaultFactoryIpAddrString出厂默认IPv4地址--
DefaultFactoryIpv6ModeString出厂默认IPv6模式(DHCPv6, Static)Static
DefaultFactoryIpv6AddrString出厂默认IPv6地址0:0:0:0:0:0:0:0
DefaultFactoryIpVersionString出厂默认网络模式(IPv4, IPv6, IPv4AndIPv6)IPv4AndIPv6
Ipv6DynamicRouteRAPreferredBoolean是否用RA报文替代IPv6动态路由false(默认)
MTUSizeU16以太网MTU数值(范围:576-9000)1500(默认)

方法说明

方法名功能说明请求参数返回参数/说明
GetAllPort获取所有port列表Port(Array)
SetNetworkConfig设置网络配置信息NetMode(String)、PortId(U8)、VLANEnable(Boolean)、VLANId(U16)
AddMgmtPort添加管理网口DeviceId(U8)、DevicePortId(U8)、Silkscreen(String)、EthId(U8)、Type(String)、PortId(U8)PortId(U8)
DeleteMgmtPort删除管理网口PortId(U8)
AddIptablesRule添加Iptables映射规则InterfaceName(String)、IpAddr(String)Result(Boolean)
AddIp6tablesRule添加IPv6 tables映射规则InterfaceName(String)、Ipv6Addr(String)Result(Boolean)
SetVLANConfig设置端口vlanVLANEnabled(Boolean)、VLANId(U16)、PortType(U8)Result(Boolean)
SetEthState启用/禁用BMC网口EthName(String)、EthEnabled(Boolean)Result(Boolean)
NetworkFailover双平面切换外部网络From(String)、To(String)Result(Boolean)
SetChassisLanSubNet设置内网网段ChassisLanSubNet(String)

3.2 Ipv4接口说明

资源树接口:bmc.kepler.Managers.EthernetInterfaces.Ipv4

属性说明

属性名类型只读取值描述
IpModeStringDHCP/StaticIPv4模式
IpAddrString当前主IPv4地址
BackupIpAddrString备份IPv4地址
SubnetMaskString主IPv4子网掩码
BackupSubnetMaskString备份IPv4掩码
DefaultGatewayStringIPv4默认网关

方法说明

方法名功能参数返回
SetIpMaskGateway同步设置IPv4地址、掩码、网关IpAddr, SubnetMask, DefaultGatewayIpAddr
SetIpAddr设置IPv4地址与掩码IpAddr, SubnetMaskResult(Boolean)
SetDefaultGateway单独设置网关DefaultGatewayResult(Boolean)
SetDedicatedMaintIpMask设置专用运维IP/掩码IpAddr, SubnetMaskResult(Boolean)

3.3 Ipv6接口说明

资源树接口:bmc.kepler.Managers.EthernetInterfaces.Ipv6

属性说明

属性名类型只读取值描述
IpModeStringDHCPv6/StaticIPv6模式
IpAddrString当前IPv6地址
PrefixLengthS32IPv6前缀长度
ScopeStringLink/Global地址范围
DefaultGatewayString默认IPv6网关

方法说明

方法名功能参数返回
SetIpv6PrefixGateway一步设置IPv6地址/前缀和网关IpAddr, PrefixLength, DefaultGatewayIpAddr
SetIpAddr设置IPv6地址和前缀IpAddr, PrefixLengthResult(Boolean)
SetDefaultGateway单独设置网关DefaultGatewayResult(Boolean)

3.4 MgmtPort接口说明

资源树接口:bmc.kepler.Managers.EthernetInterfaces.MgmtPort

属性说明

属性名类型描述
IdU8Id,从1起,新增port注册传入0
EthIdU8Eth的Id
DeviceIdU8设备ID
DevicePortIdU8设备端口Id
SilkscreenString用于Web显示的端口丝印信息
TypeString网卡类型:ExternalPCIe/Dedicated
AdaptiveFlagBoolean是否参与自适应
LinkStatusStringLink状态(Connected/Disconnected)

4. 使用样例

4.1 设置IPv4信息

cli设置IPv4静态IP、掩码、网关,-v后面依次传入四段式的IP、掩码、网关(网关可不传):

bash
ipmcset -d ipaddr -v <ipaddr> <mask> [gateway]

cli设置IPv4静态网关:

bash
ipmcset -d gateway -v <gateway>

cli设置IPv4模式为DHCP/Static:

bash
ipmcset -d ipmode -v <dhcp|static>

ipmi设置IPv4地址

bash
ipmitool -H <BMC的IP> -I lanplus -p 623 -U <用户> -P <> -C 17 raw 0x0c 0x01 0x01 0x03 <四个字节的IP地>

ipmi设置IPv4掩码

bash
ipmitool -H <BMC的IP> -I lanplus -p 623 -U <用户> -P <> -C 17 raw 0x0c 0x01 0x01 0x06 <四个字节的掩>

ipmi设置IPv4网关

bash
ipmitool -H <BMC的IP> -I lanplus -p 623 -U <用户> -P <> -C 17 raw 0x0c 0x01 0x01 0x0c <四个字节的网>

ipmi设置IPv4模式,mode位置传1表示Static,传2表示DHCP

bash
ipmitool -H <BMC的IP> -I lanplus -p 623 -U <用户> -P <> -C 17 raw 0x0c 0x01 0x01 0x04 <1字节的mode>

4.2 设置IPv6信息

资源树接口:bmc.kepler.Managers.EthernetInterfaces.Ipv6

cli设置IPv6静态IP、前缀、网关,-v后面依次传入IP、掩码、网关(网关可以不传):

bash
ipmcset -d ipaddr6 -v <ipaddr> <prefix> [gateway]

cli设置IPv6静态网关:

bash
ipmcset -d gateway6 -v <gateway>

cli设置IPv6模式为DHCPv6/Static:

bash
ipmcset -d ipmode6 -v <dhcp|static>

ipmi设置IPv6地址(IP地址按小端方式传入)

bash
ipmitool -H <BMC的IP> -I lanplus -p 623 -U <用户> -P <> -C 17 raw 0x0c 0x01 0x01 0xcc <3字节的厂商id> <16字节的IPv6地>

ipmi设置IPv6前缀

bash
ipmitool -H <BMC的IP> -I lanplus -p 623 -U <用户> -P <> -C 17 raw 0x0c 0x01 0x01 0xcd <3字节的厂商id> <1字节的前>

ipmi设置IPv6网关(网关地址按小端方式传入)

bash
ipmitool -H <BMC的IP> -I lanplus -p 623 -U <用户> -P <> -C 17 raw 0x0c 0x01 0x01 0xce <3字节的厂商id> <16字节的网>

ipmi设置IPv6模式,mode位置传1表示Static,传2表示DHCP

bash
ipmitool -H <BMC的IP> -I lanplus -p 623 -U <用户> -P <> -C 17 raw 0x0c 0x01 0x01 0xd0 <3字节的厂商id> <1字节的mode>

4.3 外网网口切换

cli设置网络模式,传1表示固定网口,传2表示自适应模式

bash
ipmcset -d netmode -v <网络模>

cli切换网口(网络模式为固定模式才能切换网口)

bash
ipmcset -d activeport -v <网口类> <port id>
参数说明:
网口类型:0-专用网口 1-LOM 2-PCIe
port id: 切换到该类型网口的第几个port(port id从0开始,网口类型传0时,该参数可不传)

ipmi设置网络模式

bash
ipmitool -H <BMC的IP> -I lanplus -p 623 -U <用户> -P <> -C 17 raw 0x0c 0x01 0x01 <3字节的厂商id> <1字节的网络模>
参数说明:
网络模式:1-专用网口 3-自适应模式 4-PCIe (默认切换到该类型网口的第一个port)

4.4 外网VLAN配置

cli设置VLAN:

bash
ipmcset -d vlan -v <off | id(1~4094)> [port type]
参数说明:
VLAN使能:关闭VLAN时传off,开启VLAN时传1~4094的数字;
port type:0表示设置NCSI的VLAN,1表示设置专用网口的VLAN,可以不传,不传时默认设置NCSI的VLAN;

ipmi设置VLAN:

bash
ipmitool -H <BMC的IP> -I lanplus -p 623 -U <用户> -P <> -C 17 raw 0x30 0x93 <3字节的厂商id> 0x5a 0x1a 0x00 0x04 0x00 <1字节的port type> <1字节的VLAN使> <2字节的VLAN id>
参数说明:
port type:0表示设置NCSI的VLAN,1表示设置专用网口的VLAN;
VLAN使能:0表示关闭,1表示使能;
VLAN id:由两个字节组成,由前一个字节的低四位和后一个字节组成12位数字

5 配置介绍

5.1 配置导入导出项

plain
NetMode:网络模式(Automatic/Fixed)
ActivePort:对外网口
IpMode:IPv4模式(DHCP/Static)
IpAddr: IPv4地址
SubnetMask:IPv4子网掩码
DefaultGateway:IPv4网关
BackupIpAddr: 备份IPv4地址
BackupSubnetMask:备份IPv4掩码
Ipv6Mode:IPv6模式(DHCPv6/Static)
Ipv6Addr:IPv6地址
Ipv6Prefix:IPv6前缀
Ipv6DefaultGateway:IPv6网关
IpVersion:IP协议(IPv4、IPv6、IPv4AndIPv6)
VlanID:NCSI VLAN id
VlanState:NCSI VLAN使能
DedicatedVlanID:专用网口VLAN id
DedicatedVlanState:专用网口VLAN使能
SLAACEnable:SLAAC使能
------------
LLDPEnable:LLDP使能
TxDelaySeconds:LLDP延迟发送时间
TxIntervalSeconds:LLDP发送周期
TxHold:LLDP发送间隔
WorkMode:LLDP工作模式,目前只支持Tx
------------
HostName:主机名
DomainName:域名
------------
ChassisLan: 机框内网网段

5.2 装备定制化项

通用定制项

plain
BMCSet_ETH0_DHCPMode:IPv4是否为DHCP
BMCSet_Eth0_Ipv4:IPv4是否为Static
Custom_Eth0_Ip_Addr:IPv4地址和掩码
Custom_ipv4_gateway:IPv4网关
BMCSet_Ipv6_DHCPMode:IPv6是否为DHCPv6
BMCSet_NCSI_VLAN_ID:NCSI VLAN id
BMCSet_DEDICATED_VLAN_ID:专用网口VLAN id
BMCSet_DedicatedNCSIEnable:专用网口模式下是否使能NCSI
BMCSet_LLDPEnable:LLDP使能
BMCSet_NET_Mode:网络模式
Custom_NCSI_Port_Num:NCSI的端口号,对应NCSI网口对象的DevicePortId
BMCSet_Hostname:主机名
BMCSet_DDSN_DomainName:域名
BMCSet_IPVersion:IP协议
BMCSet_SLAACEnable:SLAAC使能
BMCSet_ChassisLan_SubNet: 机框内网网段

6 多网口特性CSR配置介绍

6.1 网口组CSR配置

网口组CSR配置的字段为"EthGroup"。历史网口组仅有一个,由EthernetInterfaces、Ipv4、Ipv6三个资源树接口共同构成,它们由bmc_network组件自上树,不依赖CSR加载。新增网口组由EthGroup接口承载,可以通过CSR加载。新增网口组可以有多个对象,每个对象承载一组网络配置。

EthGroup的CSR配置实例如下所示:

plain
        "EthGroup_OutEthGroup1": {
            "Name": "OutEthGroup1", //网口组名字
            "GroupId": 1,           //网口组ID
            "OutType": 2,           //网口组类型(2即为对外网口)
            "ActiveEthId": 0,       //网口组对应的ethid(此处指eth0,需对应实际情况)
            "InnerNetWork": "",
            "VLANId": 0,            //网口组对应的vlanID
            "VLANEnabled": false,   //网口组对应的vlan使能
            "EthAlias": 255,
            "IpAddr":"192.168.2.102",           //网口组对应的Ipv4地址
            "BackupIpAddr": "192.168.2.102",    //备份IP地址
            "BaseIpAddr": "",
            "SubnetMask": "255.255.255.0",          //网口组对应的Ipv4子网掩码
            "BackUpSubnetMask": "255.255.255.0",    //网口组对应的备份Ipv4子网掩码
            "DefaultGateway": "192.168.2.200",      //网口组对应的Ipv4默认网关
            "IpPolicy": 0,                       
            "Status": true,                     //网口组使能
            "IpMode": "DHCP",                   //网口组对应的Ipv4模式
            "Ipv6Mode": "Static",               //网口组对应的Ipv6模式
            "Ipv6Addr": "",                     //网口组对应的Ipv6地址
            "PrefixLength": 0,                  //网口组对应的Ipv6前缀长度
            "Ipv6DefaultGateway": "",           //网口组对应的Ipv6默认网关
            "AssociatedPortType": 1,            //网口组关联的Port类型,1代表NCSI口,2代表专用口
            "Channel": 2                        //网口组对应的LAN通道号
        },

对于三网口组环境,目前可以配置两个网口组,一个用于承载NCSI口(eth0),另一个用于承载专用口(eth3),实现三网口同时使能。三网口组环境的多网口组配置可以参考如下:

plain
     "EthGroup_OutEthGroup1": {
            "Name": "OutEthGroup1",
            "GroupId": 1,
            "OutType": 2,
            "ActiveEthId": 0,
            "InnerNetWork": "",
            "VLANId": 0,
            "VLANEnabled": false,
            "EthAlias": 255,
            "IpAddr":"192.168.2.102",
            "BackupIpAddr": "192.168.2.102",
            "BaseIpAddr": "",
            "SubnetMask": "255.255.255.0",
            "BackupSubnetMask": "255.255.255.0",
            "DefaultGateway": "192.168.2.102",
            "IpPolicy": 0,
            "Status": true,
            "IpMode": "Static",
            "Ipv6Mode": "Static",
            "Ipv6Addr": "",
            "PrefixLength": 0,
            "Ipv6DefaultGateway": "",
            "AssociatedPortType": 1,
            "Channel": 2
        },
        "EthGroup_OutEthGroup2": {
            "Name": "OutEthGroup2",
            "GroupId": 2,
            "OutType": 2,
            "ActiveEthId": 3,
            "InnerNetWork": "",
            "VLANId": 0,
            "VLANEnabled": false,
            "EthAlias": 255,
            "IpAddr":"192.168.2.103",
            "BackupIpAddr": "192.168.2.103",
            "BaseIpAddr": "",
            "SubnetMask": "255.255.255.0",
            "BackUpSubnetMask": "255.255.255.0",
            "DefaultGateway": "192.168.2.103",
            "IpPolicy": 0,
            "Status": true,
            "IpMode": "Static",
            "Ipv6Mode": "Static",
            "Ipv6Addr": "",
            "PrefixLength": 0,
            "Ipv6DefaultGateway": "",
            "AssociatedPortType": 2,
            "Channel": 3
        },

6.2 网口组CSR配置

网口CSR配置的字段为"EthMac"。该CSR用于配置需要拉起的网口信息,包括Id,MAC等。EthMac的CSR配置示例如下所示:

双网口组环境示例:

plain
        "EthMac_Eth0": {
            "EthId": 0,                          //网口组对应的ethid(此处指eth0,需对应实际情况)
            "EthName": "eth0",                   //网口名
            "GroupId": "EthGroup0",              //网口对应的网口组
            "Mac": "20:22:01:75:BC:60",          //网口对应的MAC地址
            "MacUseEnabled": false,              //是否使能该网口(对于每个网口组,仅有一个网口需要使能,此处不使能eth0)
            "SpeedDuplexEnable": true,
            "SpeedSetting": 0,
            "DuplexSetting": 0
        },
        "EthMac_Eth2": {
            "EthId": 2,
            "EthName": "eth2",
            "GroupId": "EthGroup0",
            "Mac": "20:22:01:75:BC:60",
            "MacUseEnabled": true,              //是否使能该网口(对于每个网口组,仅有一个网口需要使能,此处使能eth2)
            "SpeedDuplexEnable": true,
            "SpeedSetting": 0,
            "DuplexSetting": 0
        }

三网口组环境例:

plain
        "EthMac_Eth0": {
            "EthId": 0,
            "EthName": "eth0",
            "GroupId": "EthGroup0",
            "Mac": "20:22:01:75:BC:60",
            "MacUseEnabled": false,
            "SpeedDuplexEnable": true,
            "SpeedSetting": 0,
            "DuplexSetting": 0
        },
        "EthMac_Eth2": {
            "EthId": 2,
            "EthName": "eth2",
            "GroupId": "EthGroup0",
            "Mac": "20:22:01:75:BC:60",
            "MacUseEnabled": true,
            "SpeedDuplexEnable": true,
            "SpeedSetting": 0,
            "DuplexSetting": 0
        },
        "EthMac_Eth3": {
            "EthId": 3,
            "EthName": "eth3",
            "GroupId": "EthGroup0",
            "Mac": "20:22:01:75:BC:60",
            "MacUseEnabled": false,
            "SpeedDuplexEnable": true,
            "SpeedSetting": 0,
            "DuplexSetting": 0
        }

6.3 专用网口CSR配置

专用网口CSR配置的字段为"DedicatedPort"。该CSR用于配置专用网口信息,三网口组环境的专用网口CSR配置示例如下所示:

plain
        "DedicatedPort_Eth2": {
            "Id": 1,                         //专用网口对应的PortId(eth2固定为1)
            "EthId": 2,                      //专用网口对应的EthId
            "DeviceId": 1,                   //专用网口对应的设备ID
            "DevicePortId": 1,               //专用网口对应的设备PortID 
            "Silkscreen": "Mgmt1",           //专用网口对应的丝印
            "NcsiInitPortFlag": true,
            "VLANId": 0,                     //专用网口对应的VlanId(专用网口vlan需配置一致)
            "VLANEnabled": false,            //专用网口对应的Vlan使能
            "OriginalGroupId": 0,            //专用网口对应的默认网口组归属
            "CurrentGroupId": 0              //专用网口对应的当前网口组归属
        },
        "DedicatedPort_Eth3": {
            "Id": 2,
            "EthId": 3,
            "DeviceId": 1,
            "DevicePortId": 2,
            "Silkscreen": "Mgmt2",
            "NcsiInitPortFlag": false,
            "VLANId": 0,
            "VLANEnabled": false,
            "OriginalGroupId": 2,
            "CurrentGroupId": 0
        }

6.4 LAN通道CSR配置

LAN通道CSR配置的字段为"IPMIChannel",该CSR用于配置IPMI的lan通道信息,于网口组EthGroup中的”Channel“字段对应。三网口组环境的LAN通道CSR配置示例如下所示:

plain
        "IPMIChannel_LAN1": {
            "ChanType": 4,
            "Instance": 1,         //与LAN通道ID一致
            "ChanPro": 1,
            "ChannelID": 1,        //与LAN通道ID一致
            "DestAddr": 32,
            "SrcAddr": 0,
            "MedType": 4
        },
        "IPMIChannel_LAN2": {
            "ChanType": 4,
            "Instance": 2,
            "ChanPro": 1,
            "ChannelID": 2,
            "DestAddr": 32,
            "SrcAddr": 0,
            "MedType": 4
        },
        "IPMIChannel_LAN3": {
            "ChanType": 4,
            "Instance": 3,
            "ChanPro": 1,
            "ChannelID": 3,
            "DestAddr": 32,
            "SrcAddr": 0,
            "MedType": 4
        },

7 日志介绍

7.1 LogDump常见日志

LogDump日志路径: \dump_info\LogDump\app.log

网络初始化:

plain
===== network service init =======

自发现对象分发完成:

plain
eth mac self discovery finish

rpc设置ipv4静态地址:

plain
set_ipv4_mask_gateway: ip_mode = [Static], ip_addr = [x.x.x.x], ip_submask = [x.x.x.x], ip_gateway = [x.x.x.x]

rpc设置ipv6静态地址:

plain
set_ipv6_prefix_gateway: [Static], ip_addr = [xxxx], PrefixLength = [x], DefaultGateway = [xxxx]

DHCP获取到ipv4地址:

plain
dhcp get out eth(ethx) new ipv4 info, ip: x.x.x.x, mask: x.x.x.x, gateway: x.x.x.x

DHCPv6获取到ipv6地址:

plain
dhcpv6 get out eth(ethx) new ipv6 info, ip: xxxx, prefix: x, gateway: xxxx

7.2 AppDump日志

plain
dump_info\AppDump\bmc_network
├── lldp_info.txt (lldp配置信息)
├── mdb_info.log (资源树信息)  
└── network_info.txt (网络配置信息)

8 常见问题

8.1 pingBMC环境或者用ssh登录bmc环境,一会通一会不通

1.MAC地址冲突,在os修改MAC地址解决 ipmitool raw 0x30 0x90 0x44 0x02 <6字节的mac>。

2.IP地址冲突,可切换DHCP模式或修改静态IP。 ,目前可以配置两个网口组,一个用于承载NCSI口(eth0),另一个用于承载专用口(eth3),实现三网口同时使能。三网口组环境的多网口组配置可以参考如下:

plain
     "EthGroup_OutEthGroup1": {
            "Name": "OutEthGroup1",
            "GroupId": 1,
            "OutType": 2,
            "ActiveEthId": 0,
            "InnerNetWork": "",
            "VLANId": 0,
            "VLANEnabled": false,
            "EthAlias": 255,
            "IpAddr":"192.168.2.102",
            "BackupIpAddr": "192.168.2.102",
            "BaseIpAddr": "",
            "SubnetMask": "255.255.255.0",
            "BackupSubnetMask": "255.255.255.0",
            "DefaultGateway": "192.168.2.102",
            "IpPolicy": 0,
            "Status": true,
            "IpMode": "Static",
            "Ipv6Mode": "Static",
            "Ipv6Addr": "",
            "PrefixLength": 0,
            "Ipv6DefaultGateway": "",
            "AssociatedPortType": 1,
            "Channel": 2
        },
        "EthGroup_OutEthGroup2": {
            "Name": "OutEthGroup2",
            "GroupId": 2,
            "OutType": 2,
            "ActiveEthId": 3,
            "InnerNetWork": "",
            "VLANId": 0,
            "VLANEnabled": false,
            "EthAlias": 255,
            "IpAddr":"192.168.2.103",
            "BackupIpAddr": "192.168.2.103",
            "BaseIpAddr": "",
            "SubnetMask": "255.255.255.0",
            "BackUpSubnetMask": "255.255.255.0",
            "DefaultGateway": "192.168.2.103",
            "IpPolicy": 0,
            "Status": true,
            "IpMode": "Static",
            "Ipv6Mode": "Static",
            "Ipv6Addr": "",
            "PrefixLength": 0,
            "Ipv6DefaultGateway": "",
            "AssociatedPortType": 2,
            "Channel": 3
        },