NVIDIA BlueField BMC Software v24.07
NVIDIA BlueField BMC Software v24.07

Network Protocol Support

Note

To obtain the BMC's MAC address, refer to the NVIDIA® BlueField®'s board label.

BMC management network interface can be configured using Redfish or IPMI. By default, BMC comes up with the DHCP network configuration.

Network configuration functions:

  • Setting DHCP/Static network mode configuration

  • Adding/setting IPv4/IPv6 configuration including IP address, gateway, netmask

  • Adding DNS servers

  • Adding NTP server

  • Setting BMC time with NTP server or system RTC

Getting Network Protocol Configuration

Copy
Copied!
            

curl -k -u root:'<password>' -X GET https://<bmc_ip>/redfish/v1/Managers/Bluefield_BMC/NetworkProtocol


Getting Interface Configuration

Copy
Copied!
            

curl -k -u root:'<password>' -XGET https://<bmc_ip>/redfish/v1/Managers/Bluefield_BMC/EthernetInterfaces/eth0


Enabling/Disabling Interface

Copy
Copied!
            

curl -k -u root:'<password>' -XPATCH https://<bmc_ip>/redfish/v1/Managers/Bluefield_BMC/EthernetInterfaces/eth0 -d '{"InterfaceEnabled": <state>}'

Where <state> can be true or false.

Note

Disabling the eth0 interface on the BlueField BMC prevents OOB network functionality on the BMC. This inhibits the ability to execute any Redfish or IPMI commands through the network.


Configuring Static IPv4 Address

Copy
Copied!
            

curl -k -u root:'<password>' -X PATCH https://<bmc_ip>/redfish/v1/Managers/Bluefield_BMC/EthernetInterfaces/eth0 -d '{"IPv4StaticAddresses": [{"Address": "<ip_addr>","SubnetMask": "<netmask>","Gateway":"<gw_ip_addr>"}]}'

Example:

Copy
Copied!
            

curl -k -u root:'<password>' -X PATCH https://<bmc_ip>/redfish/v1/Managers/Bluefield_BMC/EthernetInterfaces/eth0 -d '{"IPv4StaticAddresses": [{"Address": "10.7.7.7","SubnetMask": "255.255.0.0","Gateway":"10.7.0.1"}]}'


Enabling/Disabling IPv4 DHCP

Copy
Copied!
            

curl -k -u root:'<password>' -X PATCH https://<bmc_ip>/redfish/v1/Managers/Bluefield_BMC/EthernetInterfaces/eth0 -d '{"DHCPv4": {"DHCPEnabled": <state>}}'

Where <state> can be true or false.

Configuring Static DNS Server IPv4 and IPv6

Copy
Copied!
            

curl -k -u root:'<password>' -X PATCH https://<bmc_ip>/redfish/v1/Managers/Bluefield_BMC/EthernetInterfaces/eth0 -d '{"StaticNameServers": ["<dns_ip>"]}'


Configuring Static IPv6 Address

Copy
Copied!
            

curl -k -u root:'<password>' -X PATCH https://<bmc_ip>/redfish/v1/Managers/Bluefield_BMC/EthernetInterfaces/eth0 -d '{"IPv6StaticAddresses": [{"Address": "<ip>", "PrefixLength": <len>}]}'

Example:

Copy
Copied!
            

curl -k -u root:'<password>' -X PATCH https://<bmc_ip>/redfish/v1/Managers/Bluefield_BMC/EthernetInterfaces/eth0 -d '{"IPv6StaticAddresses": [{"Address": "fe80::3eec:efff:fe3b:e02f", "PrefixLength": 64}]}'


Enabling/Disabling IPv6 DHCP

Copy
Copied!
            

curl -k -u root:'<password>' -X PATCH https://<bmc_ip>/redfish/v1/Managers/Bluefield_BMC/EthernetInterfaces/eth0 -d '{"DHCPv6": {"OperatingMode": "<state>"}}'

Where <state> can be:

  • stateful – DHCPv6 stateful mode is used to configure addresses, and when it is enabled, stateless mode is also implicitly enabled.

  • stateless – DHCPv6 stateless mode allows configuring the interface using DHCP options but does not configure addresses. It is always enabled by default whenever DHCPv6 stateful mode is also enabled.

  • disabled – DHCPv6 is disabled for this interface.

Enabling/Disabling NTP

Copy
Copied!
            

curl -k -u root:'<password>' -X PATCH https://<bmc_ip>/redfish/v1/Managers/Bluefield_BMC/NetworkProtocol -d '{"NTP": {"ProtocolEnabled": <state>}}'

Where <state> can be true or false.

Configuring Static NTP Server IP

Copy
Copied!
            

curl -k -u root:'<password>' -X PATCH https://<bmc_ip>/redfish/v1/Managers/Bluefield_BMC/NetworkProtocol -d '{"NTP": {"NTPServers": ["<ntp_server_ip>"]}}'


The following subsections list the available network IPMI commands.

Configuring IPv4 Mode

The following command sets LAN channel 1 IP config mode to static or DHCP which corresponds to network interface eth0.

Copy
Copied!
            

ipmitool lan set 1 ipsrc <mode>

Where <mode> can be static or dhcp.

Configuring IPv6 Mode

The following command sets LAN channel 1 IP config mode to static or DHCP which corresponds to network interface eth0.

Copy
Copied!
            

ipmitool lan6 set 1 rtr_cfg <mode>

Where <mode> can be static or dynamic. both is unsupported.

Adding IPv4 Address

The following commands add IPv4 address, default gateway, and netmask to the network interface eth0.

  • IP address

    Copy
    Copied!
                

    ipmitool lan set 1 ipaddr <ip-address>

  • Default gateway:

    Copy
    Copied!
                

    ipmitool lan set 1 defgw ipaddr <ip-address>

  • Netmask:

    Copy
    Copied!
                

    ipmitool lan set 1 netmask <netmask>

Getting IPv4 Config

The following command gets IPv4 network config for channel 1 which corresponds to the network interface eth0.

Copy
Copied!
            

ipmitool lan print 1


Setting IPv6 Address

The following command adds IPv6 address to the network interface eth0.

Copy
Copied!
            

ipmitool lan6 set 1 nolock static_addr 0 enable <ipv6-address> 64


Getting IPv6 Config

The following command gets IPv6 network config for channel 1 which corresponds to the network interface eth0.

Copy
Copied!
            

ipmitool lan6 print 1


Getting DNS Server

Copy
Copied!
            

ipmitool raw 0x32 0x6B

Output:

Copy
Copied!
            

0b 31 30 2e 31 35 2e 31 32 2e 36 37

This output corresponds to 10.15.12.67.

Adding DNS Server

Copy
Copied!
            

ipmitool raw 0x32 0x6C 0x0b 0x31 0x30 0x2e 0x31 0x35 0x2e 0x31 0x32 0x2e 0x36 0x37

Output:

Copy
Copied!
            

0x0b 0x31 0x30 0x2e 0x31 0x35 0x2e 0x31 0x32 0x2e 0x36 0x37

This output corresponds to 10.15.12.67.

Getting NTP Server

Copy
Copied!
            

ipmitool raw 0x32 0xA7

Output:

Copy
Copied!
            

01 11 31 2e 69 6e 2e 70 6f 6f 6c 2e 6e 74 70 2e 6f 72 67

Where:

  • 01 – NTP status enable/disable

  • 11 – NTP server length

  • 31 2e 69 6e 2e 70 6f 6f 6c 2e 6e 74 70 2e 6f 72 67 – NTP server address byte stream which corresponds to 1.in.pool.ntp.org

Adding NTP Server

Copy
Copied!
            

ipmitool raw 0x32 0xA8 0x01 0x31 0x2e 0x69 0x6e 0x2e 0x70 0x6f 0x6f 0x6c 0x2e 0x6e 0x74 0x70 0x2e 0x6f 0x72 0x67

Where:

  • 31 2e 69 6e 2e 70 6f 6f 6c 2e 6e 74 70 2e 6f 72 67 – NTP server address byte stream which corresponds to 1.in.pool.ntp.org

Enabling NTP Time Sync

The following command enables time sync to NTP server.

Copy
Copied!
            

ipmitool raw 0x32 0xA8 0x02 0x01

Where:

  • 0x01 – enable NTP

Disabling NTP Time Sync

The following command disables time sync to NTP server.

Copy
Copied!
            

ipmitool raw 0x32 0xA8 0x02 0x00

Where:

  • 0x00 – disable NTP

© Copyright 2024, NVIDIA. Last updated on Aug 16, 2024.