【待评审】新增定制化项支持多网口网络配置信息

背景

1.IPV6的使用越来越广泛,很多客户都要求出厂定制IPV6的静态地址,目前BMC不支持。只支持IPV4的静态定制。
2.目前只有单网口的网络配置定制化项,缺少多网口的定制化项。

评审点

  1. 增加定制化项,在出厂配置时按照诉求进行定制,默认或者空定制化时不进行处理。
    BMCSet_EthGroup{i}Ports
    BMCSet_EthGroup{i}NetMode
    BMCSet_EthGroup{i}Ipv4DHCPMode
    BMCSet_EthGroup{i}Ipv4Addr
    BMCSet_EthGroup{i}Ipv4Gateway
    BMCSet_EthGroup{i}Ipv6DHCPMode
    BMCSet_EthGroup{i}Ipv6Addr
    BMCSet_EthGroup{i}Ipv6Gateway
    BMCSet_EthGroup${i}IPVersion

详细描述

评审点:新增网络配置定制化项

定制化项名称 定制化项 取值类型 取值说明 默认值
EthGroup${i}关联网口 BMCSet_EthGroup${i}Ports string eth0~eth3中的0~4个进行组合,用逗号分隔
例如:“”, “eth0”, “eth2,eth3”
“”
EthGroup${i}对外网口模式 BMCSet_EthGroup${i}NetMode string “fixed”: 固定模式
“auto”: 自适应模式
“auto”
EthGroup${i}IPv4是否开启DHCP BMCSet_EthGroup${i}Ipv4DHCPMode string “on”: IPv4地址获取模式为DHCP
“off”: IPv4地址获取模式为Static
“on”
EthGroup${i}IPv4静态IP地址 BMCSet_EthGroup${i}Ipv4Addr string IPv4地址,含掩码
例如:“192.168.2.100/24”
“”
EthGroup${i}IPv4网关 BMCSet_EthGroup${i}Ipv4Gateway string IPv4地址
例如:“192.168.2.1”
“”
EthGroup${i}IPv6是否开启DHCP BMCSet_EthGroup${i}Ipv6DHCPMode string “on”: IPv6地址获取模式为DHCP
“off”: IPv6地址获取模式为Static
“on”
EthGroup${i}IPv6静态IP地址 BMCSet_EthGroup${i}Ipv6Addr string IPv6地址,含前缀
例如:“fec::80/64”
“”
EthGroup${i}IPv6网关 BMCSet_EthGroup${i}Ipv6Gateway string IPv6地址
例如:“fec::1/64”
“”
EthGroup${i}IP协议版本 BMCSet_EthGroup${i}IPVersion string “IPv4AndIPv6”, “IPv4”, “IPv6” “IPv4AndIPv6”

处理逻辑:

if (BMCSet_EthGroup${i}Ports为空)
    网口组i不生效
else
    if (BMCSet_EthGroup${i}NetMode为空)
        网口组i的对外网口模式设置为自适应模式
    else
        根据BMCSet_EthGroup${i}NetMode的值设置网口组i的对外网口模式

    if (BMCSet_EthGroup${i}IPVersion为空)
        网口组i的IP协议版本为IPv4AndIPv6
    else
        根据BMCSet_EthGroup${i}IPVersion的值设置网口组i的IP协议版本

    if (BMCSet_EthGroup${i}NetMode == "fixed")
        网口组i的指定管理网口设置为BMCSet_EthGroup${i}Ports中的第1个

    if (BMCSet_EthGroup${i}Ipv4DHCPMode为空)
        网口组i的IPv4开启DHCP
    else
        根据BMCSet_EthGroup${i}Ipv4DHCPMode的值设置网口组i的IPv4是否开启DHCP

    if (BMCSet_EthGroup${i}Ipv4DHCPMode == "off")
        if (BMCSet_EthGroup${i}Ipv4Addr为空)
            无动作
        else
            根据BMCSet_EthGroup${i}Ipv4Addr的值设置网口组i的IPv4静态IP地址和掩码
        if (BMCSet_EthGroup${i}Ipv4Gateway为空)
            无动作
        else
            根据BMCSet_EthGroup${i}Ipv4Gateway的值设置网口组i的IPv4网关

    if (BMCSet_EthGroup${i}Ipv6DHCPMode为空)
        网口组i的IPv6开启DHCP
    else
        根据BMCSet_EthGroup${i}Ipv6DHCPMode的值设置网口组i的IPv6是否开启DHCP

    if (BMCSet_EthGroup${i}Ipv6DHCPMode == "off")
        if (BMCSet_EthGroup${i}Ipv6Addr为空)
            无动作
        else
            根据BMCSet_EthGroup${i}Ipv6Addr的值设置网口组i的IPv6静态IP地址和前缀
        if (BMCSet_EthGroup${i}Ipv6Gateway为空)
            无动作
        else
            根据BMCSet_EthGroup${i}Ipv6Gateway的值设置网口组i的IPv6网关

评审结论

遗留问题