tianocore / edk2-redfish-client

Utilizes the EFI protocols provided by EDK2 Redfish Foundation to communicate with the Redfish service for creating, consuming, and updating the Redfish properties which are managed by firmware.
Other
6 stars 5 forks source link

[Design] How to configure station IP address from SMBIOS type 42 record #21

Open nicklela opened 1 year ago

nicklela commented 1 year ago

We need to have a way to configure station IP address.

While Redfish service IP can be determinated by existing IPMI network command (need to check), we can define a rule like host IP address is Redfish service IP minus one. Other filed like format, type and netmask must to be the same as Redfish service IP type, format and netmask, so that they can talk with each other.

changab commented 1 year ago

After #25 Use IPMI NetFn: Net to retrieve the channel information,

Device Descriptor Data for Device Type 04h (USB Network Interface v2)

Locate all UsbIo handles Check the EFI Device Path on each handle that is matched to the one retrieved in #25 step 1. The above confirms the handle that produces UsbIo protocol is consumed by USB NIC

VendorID/ProductID/Serial Number: Use UsbIo to get the information Device Characteristics: Send IPMI Bootstrap command to probe the capability Credential Bootstrapping Handle: Handle of SMBIOS 42 record Redfish over IP Protocol

Service UUID: NetFn: App (6), Get System GUID (0x37)

Host IP Assignment Type: NetFn: Transport (0x0c), get LAN Config (0x02), Parameter selector (0x4)

Host IP Address Format: NetFn: Transport (0x0c), get LAN Config (0x02), Parameter selector (0x50, 0x51)

Host IP Address: NetFn: Transport (0x0c), get LAN Config (0x02), Parameter selector (0x3, 0x56)

Host IP Mask: NetFn: Transport (0x0c), get LAN Config (0x02), Parameter selector (0x6)

Redfish Service IP Discovery Type: NetFn: Transport (0x0c), get LAN Config (0x02), Parameter selector (0x4)

Redfish Service IP Address Format: NetFn: Transport (0x0c), get LAN Config (0x02), Parameter selector (0x50, 0x 51, 59)

Redfish Service IP Address:

Two solutions Use Host IP Address minus 1 (Suggested solution) Use Destination Address, Parameter selector (0x50, 0x 51). (this is the Lan Alert) Redfish Service IP Mask: * Host IP Mask or Ipv6 prefix

Redfish Service IP Port: Ignore

Redfish Service VLAN ID: Ignore

Redfish Service Hostname Length: strlen (Redfish Service Hostname)

Redfish Service Hostname: NetFn: App (6), Get System Info (59h), Parameter selector (2): System name

nicklela commented 1 year ago

2022-12-22 Action:

nicklela commented 1 year ago

2023-01-03

nicklela commented 1 year ago

2023-01-10

The discussion to create IPMI command in order to get UUID and Hostname in HI specification: https://github.com/DMTF/Redfish/issues/5410