BlueField Host Network Interface
Under URI redfish/v1/Systems/Bluefield, there is a collection called EthernetInterfaces representing the data ports and the OOB port of the BlueField. It is read-only and contains network information (e.g., IP addresses, MAC addresses).
curl -k -u root:'<password>' -H 'Content-Type: application/json' -X GET https://<bmc_ip>/redfish/v1/Systems/Bluefield/EthernetInterfaces
{
"@odata.id": "/redfish/v1/Systems/Bluefield/EthernetInterfaces",
"@odata.type": "#EthernetInterfaceCollection.EthernetInterfaceCollection",
"Description": "Collection of EthernetInterfaces of the host",
"Members": [
{
"@odata.id": "/redfish/v1/Systems/Bluefield/EthernetInterfaces/eth0"
},
{
"@odata.id": "/redfish/v1/Systems/Bluefield/EthernetInterfaces/oob0"
}
],
"Members@odata.count": 2,
"Name": "Ethernet Network Interface Collection"
}
The interface object has a field called LinkStatus which is determined by the following rules:
If the interface is the OOB port (i.e., oob_net0), LinkStatus would display LinkUp if the port is configured up using ifconfig/ip command.
If the interface is a data port (i.e., eth0/eth1 or ib0/ib1), LinkStatus would display NoLink if no QSFP cable is connected. If a QSFP transceiver is connected, the link would appear as LinkUp if the port is configured as up using the ifconfig/ip commands. If not, it displays LinkDown.
curl -k -u root:'<password>' -H 'Content-Type: application/json' -X GET https://<bmc_ip>/redfish/v1/Systems/Bluefield/EthernetInterfaces/oob0
{
"@odata.id": "/redfish/v1/Systems/Bluefield/EthernetInterfaces/oob0",
"@odata.type": "#EthernetInterface.v1_6_0.EthernetInterface",
"DHCPv4": {
"DHCPEnabled": true,
"UseDNSServers": false,
"UseDomainName": false,
"UseNTPServers": false
},
"DHCPv6": {
"OperatingMode": "Stateful",
"UseDNSServers": false,
"UseDomainName": false,
"UseNTPServers": false
},
"Description": "Host Network Interface for port oob0",
"IPv4Addresses": [
{
"Address": "10.345.41.97",
"AddressOrigin": "Static",
"Gateway": "0.0.0.0",
"SubnetMask": "255.255.240.0"
}
],
"IPv4StaticAddresses": [
{
"Address": "10.345.41.97",
"AddressOrigin": "Static",
"Gateway": "0.0.0.0",
"SubnetMask": "255.255.240.0"
}
],
"IPv6AddressPolicyTable": [],
"IPv6Addresses": [
{
"Address": "fe80::a278:c2ff:fe0e:87a4",
"AddressOrigin": "Static",
"AddressState": null,
"PrefixLength": 64
}
],
"IPv6DefaultGateway": "0:0:0:0:0:0:0:0",
"IPv6StaticAddresses": [
{
"Address": "fe80::a278:c2ff:fe0e:87a4",
"PrefixLength": 64
}
],
"Id": "oob0",
"InterfaceEnabled": true,
"LinkStatus": "LinkUp",
"MACAddress": "a0:88:a2:0e:87:a4",
"MTUSize": 1500,
"Name": "Host Ethernet Interface",
"NameServers": [],
"SpeedMbps": 1000,
"StaticNameServers": [],
"Status": {
"State": "Disabled"
}
}
If the user changed the BlueField's IP information dynamically, rebooting the BMC should show the updated IP info.