网络配置指导

本文用于指导系列化、伙伴了解网络相关对象和csr配置

1. 网络相关对象、配置介绍

1.1 常用对象

IPv4: 该类主要承载对外网口的IPv4信息,包括:ip地址、掩码、默认网关、地址获取模式(DHCP/Static)、备份IP(备份IP在DHCP模式下被激活)、备份掩码,并提供以上属性的修改接口(接口使用见part3)

属性 属性说明
IpMode ipv4的网络模式,DHCP/Static
IpAddr ip地址
BackupIpAddr 备份IPv4地址
SubnetMask IPv4子网掩码
BackupSubnetMask 备份IPv4掩码
DefaultGateway IPv4默认网关
EthName 对外网口设备的名称:如eth0.701(701表示带了VLAN)

IPv6: 该类主要承载对外网口的IPv6信息,包括:ip地址、前缀长度、默认网关、地址获取模式(DHCPv6/Static),并提供以上属性的修改接口(接口使用见part3)

属性 属性说明
IpMode ipv6的网络模式,DHCPv6/Static
IpAddr ip地址
PrefixLength Ipv6前缀长
Scope Link,Global
DefaultGateway IPv6默认网关

EthernetInterfaces: 该类主要承载对外网口的大部分信息,主要包括:

属性 属性说明
EthName 对外网口设备的名称:如eth0.701(701表示带了VLAN)
NetMode 固定网口模式/自适应模式 (按网卡优先级选择对外网口设备)
Mac BMC对外的mac
IpVersion IPv4/IPv6使能状态
PortId 当前激活正在使用的网口ID,对应MgmtPort的Id
NcsiEnable NCSI使能状态
VLANEnable NCSI的VLAN使能状态
VLANId NCSI的VLANId
LinkLocalAddress ipv6本地链路地址

MgmtPort: 该类主要承载的是物理网卡信息,主要包括:

属性 属性说明
Id 唯一的标识(EthernetInterfaces的PortId指的就是这个Id),当前专用口固定1,后面从2开始并返回给network adpter
EthId 关联的eth设备号,2代表eth2
DeviceId 网卡设备信息,当前都是1,不关键
DevicePortId 网卡上的端口号(一张网卡有多个端口),port1、port2
Silkscreen 网卡丝印,Mgmt、Port1
AdaptiveFlag 是否参与自适应标识
LinkStatus 链路状态:Disconnected、Connected(专用口由bmc_network更新,ncsi口由network adpter更新)
Type 网卡类型(PCIe/Dedicated/ocp/lom等)
VLANEnabled 当id = 1,表示专用口的vlan信息,当id ~= 1,表示Ncsi口的vlan信息
VLANId 网卡类型(PCIe/Dedicated/ocp/lom等)
Priority 自适应优先级

EthMac: 该类主要承载网口硬件相关配置,主要包括:

属性 属性说明
GroupId 网口组Id,EthGroup0、MaintEthGroup
EthName 网口名,eth2、eth0
EthId 对外网口ID,2、0
Mac 网口MAC地址
MacUseEnabled 可使用Mac地址标志,同一网口组只使能一个
SpeedDuplexEnable 网口自协商模式使能
SpeedSetting 网口速率: 0:不涉及 1:10M, 2:100M, 3:1000M
DuplexSetting 网口工作模式: 0:不涉及配置 1:半双工 2:全双工

EthGroup: 该类主要承载内网、多个对外网口、维护网口配置,主要包括:

属性 属性说明
GroupId 网口组Id,唯一性
Name 网口组名称,InnerEthGroup、MaintEthGroup、VethGroup
OutType 网口组的类型:1:对内,2:对外,3:veth,4:Atlas计算节点近端维护内部网络,5:Atlas计算节点近端维护外出网络,6:SMM板浮动IP网络,7:SMM板出对板的内部网络,8:专用网口近端运维网络,9:机柜管理板内网,10: 机柜节点内网
ActiveEthId 当前激活的网口号,例如eth2的话此处网口号为2
InnerNetWork 内网网段,未使用
VLANId 该网口组激活网口对应的VLANID
VLANEnabled 该网口组激活网口对应的VLAN使能
EthAlias 激活网口别名,有别名时取值最大为254(255表示没有别名网口),如eth2:0
InnerNetWork 内网网段,172.31.1.0
IpAddr IPv4地址
BaseIpAddr 基准IPv4地址,和IpAdd作比较,内网ip判断是否根据槽位号生成过Ip
SubnetMask IPv4掩码
DefaultGateway IPv4网关
Ipv6Addr IPv6地址
PrefixLength IPv6前缀长
Ipv6DefaultGateway IPv6网关
IpPolicy ip生成策略:0:根据默认IP地址,1:根据槽位和基准IP地址生成
Status 该IP是否在工作状态中
IpMode IPv4模式,Static或者DHCP
Ipv6Mode IPv6模式,Static或者DHCPv6
IpVersion IP协议类型,IPv4,IPv6,IPv4AndIPv6
AssociatedPortType 网口组关联的网口类型
Channel 网口对应lan通道的channel number

  • 网口模式主要分为自适应和固定模式,固定模式指定NCSI或者专业口作为对外网口,自适应模式根据网口优先级、网口通断自动切换网口

  • DHCP模式主要是设置为DHCP模式后,bmc这里拉起DHCP客户端命令行(传入主机名和板类型+框id+槽位号),如果DHCP服务器可用则会自动给BMC分配ip,如果获取不到ip则会给虚拟网口eth2:1配置192.168.2.100默认ip用于直连

1.2 常用网络csr配置

场景1:eth0和eth2同为对外网口,两个网口给用ip和mac地址,ip地址来源于IPv4/IPv6对象

        "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
        }

注:GroupId配置一样表示Eth0和Eth2同为对外网口组,Mac地址统一使用配置MacUseEnabled为true的网口的mac,即Eth0使用Eth2的mac地址。

场景2:双网口配置(ncsi和专用口均配置对外ip),专用口使用ipv4对象,新增网口使用EthGroup对象

         "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
        }
		"EthGroup_OutEthGroup1": {
            "Name": "OutEthGroup1",
            "GroupId": 0,
            "OutType": 2,
            "ActiveEthId": 0,
            "InnerNetWork": "",
            "VLANId": 4092,
            "VLANEnabled": false,
            "EthAlias": 255,
            "IpAddr":"192.168.2.200",
            "BackupIpAddr": "",
            "BaseIpAddr": "",
            "SubnetMask": "255.255.255.0",
            "BackUpSubnetMask": "",
            "DefaultGateway": "192.168.2.200",
            "IpPolicy": 0,
            "Status": true,
            "IpMode": "DHCP",
            "Ipv6Mode": "Static",
            "Ipv6Addr": "",
            "PrefixLength": 0,
            "Ipv6DefaultGateway": "",
            "AssociatedPortType": 1,
            "Channel": 2
        },
		"IPMIChannel_LAN2": {
            "ChanType": 4,
            "Instance": 2,
            "ChanPro": 1,
            "ChannelID": 2,
            "DestAddr": 32,
            "SrcAddr": 0,
            "MedType": 4
        }

1.3 常用定制化项说明

定制化项 定制化接口名称 默认值 处理逻辑 说明
BMC主机名称 BMCSet_Hostname
Custom_SerialNUM
BMCSet_Hostname:off if (BMCSet_Hostname == on)
将Custom_SerialNUM作为Hostname(机架服务器)
将Custom_SerialNUM-槽位号作为Hostname(高密服务器节点,暂不支持)
else
if (FRU数据中的产品序列号 != 空)
将FRU数据中的产品序列号(product-serialnumber)为Hostname
else
主机名设成HostName
BMCSet_Hostname如果设置为on,则表示把Custom_SerialNUM设置为主机名称,长度范围:1~64
(1)不同系列设置的方式有差异,X系列的需要增加槽位号,其他的直接用读取的值;
(2)默认写产品序列号作为主机名称;
(3)主机名限制字符:`~!@#$%^&*()_=+[{]}|;:’ ,<.>/?\(包含空格)
管理网口IPv4 BMCSet_ETH0_DHCPMode
BMCSet_Eth0_Ipv4
Custom_Eth0_Ip_Addr
Custom_ipv4_gateway
Custom_Eth0_DefaultPolicy
BMCSet_ETH0_DHCPMode:on
BMCSet_Eth0_Ipv4:off
Custom_Eth0_Ip_Addr:空串
Custom_ipv4_gateway:空串
Custom_Eth0_DefaultPolicy:1
if(BMCSet_ETH0_DHCPMode == off)
if(BMCSet_Eth0_Ipv4 = on)
设置对外网口IPv4地址和掩码为Custom_Eth0_Ip_Addr的值
if(Custom_ipv4_gateway != 空)
设置对外网口IPv4网关为Custom_ipv4_gateway的值
else
设置对外网口IPv4网关为Custom_Eth0_Ip_Addr的值
else
if(Custom_Eth0_DefaultPolicy == 2)
设置对外网口IPv4地址和掩码为固定值:192.168.2.100/24
设置对外网口IPv4网关为固定值:192.168.2.100
else
设置对外网口IPv4为DHCP模式
else
设置对外网口IPv4为DHCP模式
BMCSet_ETH0_DHCPMode:定制BMC的IPv4地址获取模式,取值:
on/不配置:IPV4地址获取模式为DHCP
off:IPV4地址获取模式为STATIC

BMCSet_Eth0_Ipv4:定制BMC的IPv4地址(含掩码),取值:
on:根据Custom_Eth0_Ip_Addr的值设置静态地址
off或不配置:无动作

Custom_Eth0_DefaultPolicy:定制BMC的网口默认策略,取值:
1:配置为DHCP模式
2:配置为固定模式,192.168.2.100/24
绑定NCSI网口 Custom_NCSI_Port_Num 0 if (BMCSet_NET_Mode != auto && BMCSet_NET_Mode != mgnt )
if (NCSI_Port_Num != 空)
绑定NCSI_Port_Num指定的NCSI网口
else
无动作
elseif (BMCSet_NET_Mode == auto && NCSI_Port_Num != 空)
将NCSI_Port_Num指定的NCSI网口加入到自适应网口
else
无动作
定制NCSI的网口号:
四网口配置取值为0-3
两网口配置取值为0-1
备注:当前只支持标准PCIe网卡绑定NCSI端口
NCSI网口VlanID BMCSet_NCSI_VLAN_ID 0 if (BMCSet_NCSI_VLAN_ID != 空 )
设置NCSI网口VLAN ID为BMCSet_NCSI_VLAN_ID的值
else
设置NCSI网口VLAN ID为0(关闭Vlan功能)
设置NCSI网口的VLAN ID,取值范围:
0:关闭VLAN 功能
1~4094:实际生效的VLAN ID
BMC对外网口模式 BMCSet_NET_Mode mgnt if (BMCSet_NET_Mode == 空)
设置网口模式为强制专用管理网口
else
设置网口模式为BMCSet_NET_Mode的值
配置BMC管理网口的模式,取值范围:
mgnt或不配置:强制管理网口
auto:自适应(以管理网口的link状态为准)
ncsi:强制LOM ncsi模式(暂不支持)
pcie:强制PCIE NCSI模式
aggr:强制汇聚网口模式(暂不支持)
lom2:强制LOM2 NCSI模式(暂不支持)
网口IPv4/IPv6使能 BMCSet_IPVersion IPv4AndIPv6 if (BMCSet_IPVersion == 空 )
设置IP版本为成IPv4AndIPv6
else
设置IP版本为BMCSet_IPVersion的值
定制BMC网络支持的IP版本,取值范围:
IPv4
IPv4AndIPv6
IPv6
BMC域名 BMCSet_DDSN_DomainName 设置域名为BMCSet_DDSN_DomainName的值 长度范围:0~67
取值格式:
1、由数字、英文字母、连字符(-),点号(.)组成
2、连字符不能作为开头和结尾,点号不能作为开头
3、任意两个点号之间的字符长度不超过63

请问下双网口的配置中,platform.sr文件中的Dedicated_Eth2这个配置项要去掉吗?我这边添加了EthGroup_OutEthGroup1和IPMIChannel_LAN2后,构建出包后升级就失败回退了,连eth2这个网络接口也没法进行连接了(我的当前环境默认激活的对外网口是eth2,经过交换芯片引出来的网口,但是我想要默认使用的事NCSI的共享网口,同时也保留能通过eth2访问BMC web)