BMC Configuration Examples
You can integrate current APIs into their software and applications in order to receive all services provided by Redfish APIs.
System Reset
URI: /redfish/v1/Systems/1/Actions/ComputerSystem.Reset
Method: POST
ResetType: AllowableValues:[ "On","ForceOff","GracefulShutdown","GracefulRestart","ForceRestart","Nmi","ForceOn", "PowerCycle"]
Response: 200
{
"Success": {
"code": "Base.v1_10_3.Success",
"message": "Successfully Completed Request."
}
}
Notifications
SNMP
URI: /redfish/v1/Managers/1/NetworkProtocol
Method: PATCH
Payload:
{
"SNMP": {"ProtocolEnabled": true}
}
SNMPv2
URI: /redfish/v1/Managers/1/NetworkProtocol
Method: PATCH
Payload:
{
"SNMP": {"EnableSNMPv2c": true}
}
SNMPv3
URI: /redfish/v1/Managers/1/NetworkProtocol
Method: PATCH
Payload:
{
"SNMP": {"EnableSNMPv3": true}
}
Syslog
URI: /redfish/v1/Managers/1/Oem/Supermicro/Syslog
Method: PATCH
Payload:
{
"EnableSyslog": true,
"SyslogPortNumber": 514,
"SyslogServer": "10.136.176.16"
}
FanMode
URI: /redfish/v1/Managers/1/Oem/Supermicro/FanMode
Method: PATCH
Payload:
{
"Mode": "FullSpeed"
}
Mode Allowable Values: {"Standard", "FullSpeed", "Optimal", "PUE2","HeavyIO"}
NTP
URI: /redfish/v1/Managers/1/Oem/Supermicro/NTP
Method: PATCH
Payload:
{
"NTPEnable": true,
"PrimaryNTPServer":"127.0.0.1",
"SecondaryNTPServer":"127.0.0.1",
"DaylightSavingTime": false
}
Response: 202
Note: Check the task monitor to check the progress for NTP
RADIUS
URI: /redfish/v1/Managers/1/Oem/Supermicro/RADIUS
Method: PATCH
Payload:
{
"RadiusEnabled":true,
"RadiusServerIP":"127.0.0.1",
"RadiusPortNumber":1812,
"RadiusSecret":"SECRET"
}
Snooping
URI: /redfish/v1/Managers/1/Oem/Supermicro/Snooping
Method: GET
IP Access Control
URI: /redfish/v1/Managers/1/Oem/Supermicro/IPAccessControl
Method: PATCH
Payload:
{
"ServiceEnabled": true
}
Adding a Rule
URI: /redfish/v1/Managers/1/Oem/Supermicro/IPAccessControl/FilterRules
Method: POST
Payload:
{
"Address": "<IP>",
"PrefixLength": 24,
"Policy": "Accept"
}
Policy Allowable Values: "Accept", "Drop"
Deleting a Rule
URI: /redfish/v1/Managers/1/Oem/Supermicro/IPAccessControl/FilterRules/[num]
Method: DELETE
SMCRAKP
URI: /redfish/v1/Managers/1/Oem/Supermicro/SMCRAKP
Method: PATCH
Payload:
{
"Mode": "Enabled"
}
iKVM
URI: /redfish/v1/Managers/1/Oem/Supermicro/IKVM
Method: GET
Response: {"Mode": "Relative"}
{
"@odata.type": "#IKVM.v1_0_2.IKVM",
"@odata.id": "/redfish/v1/Managers/1/Oem/Supermicro/IKVM",
"Id": "IKVM",
"Name": "IKVM",
"Current interface": "HTML 5",
"URI": "/redfish/GyoehEnZlt76uco.IKVM"
}
Use response property, “URI”, above to prepend “https://${BMC_IP}“ and paste this complete URL in a browser to render HTML5 iKVM.
Example of launching URL: https://{BMC_IP}/redfish/Kk1D4UVATDja0Jw.IKVM
iKVM Mouse Mode
URI: /redfish/v1/Managers/1/Oem/Supermicro/MouseMode
Method: PATCH
Payload:
{
"Mode": "Relative"
}
Mode Allowable Values: "Absolute", "Relative", "Single"
KCS Channel Control
This API allows you to secure their environment by giving appropriate privileges to access the KCS interface.
URI: /redfish/v1/Managers/1/Oem/Supermicro/KCSInterface
Method: PATCH
Payload:
{
"Privilege": "Administrator"
}
Privilege Allowable Values:
-
Administrator: Users accessing KCS interface will be able to do all the operations that the administrator user can do.
-
Operator: Users accessing KCS interface will be able to do all the operations that users with Operator privileges can do.
-
User: Users accessing the KCS interface will be able to do all the operations that users with User privileges can do.
-
Callback: This is the lowest privilege level. Only commands necessary to support initiating a Callback are allowed.
-
DisableKCS: Disabling KCS function, only support after KCS version 1.1.0, you can check in "@odata.type"
URI: /redfish/v1/Managers/1/Oem/Supermicro/KCSInterface
Method: GET
Response:200
{
"@odata.type": "#KCSInterface.v1_1_0.KCSInterface",
"@odata.id": "/redfish/v1/Managers/1/Oem/Supermicro/KCSInterface",
"Id": "KCSInterface",
"Name": "KCS Interface",
"Privilege": "Administrator",
"@odata.etag": "\"7f21b53f195494a7c2dad2008917b1d7\""
}
Getting MAC Addresses from System NICs
URI: /redfish/v1/Systems/1/EthernetInterfaces/1
Method: GET
Response:200
{
"@odata.type": "#EthernetInterface.v1_5_2.EthernetInterface",
"@odata.id": "/redfish/v1/Systems/1/EthernetInterfaces/1",
"Id": "1",
"Name": "AOC_NIC1",
"Description": "AOC-GTG-i2T #1",
"Status": {
"State": "Enabled",
"Health": "OK"
}
"MACAddress": "7c:c2:55:06:00:56",
"SpeedMbps": 0,
"FQDN": ""
}
Chassis Intrusion
URI: /redfish/v1/Chassis/1
Method: GET/PATCH
Payload:
{
"PhysicalSecurity":{"IntrusionSensor": "Normal"}
}
Network DNS
Supported Platforms | Supported BMC Firmware | Redfish User Guide Version |
---|---|---|
X12/H12 | 1.3.3 or later | Version 3.4 |
URI: /redfish/v1/Managers/1/EthernetInterfaces/1
Method: GET/PATCH
Payload:
{
"StaticNameServers":[
"10.10.10.1",
"10.10.10.2"
]
}
LLDP
/redfish/v1/Managers/1/SharedNetworkPorts
URI: /redfish/v1/Managers/1/SharedNetworkPorts
Method: GET
Response:200
{
"@odata.type": "#PortCollection.PortCollection",
"@odata.id": "/redfish/v1/Managers/1/SharedNetworkPorts",
"Name": "SharedNetworkPorts Collection",
"Description": "Collection of SharedNetworkPorts",
"Members@odata.count": 1,
"Members":[
{
"@odata.id": " /redfish/v1/Chassis/1/NetworkAdapters/1/Ports/1"
}
],
"@odata.etag": "894cb8ea4eb6da2fb62990a90f2d2859"
}
/redfish/v1/Managers/1/DedicatedNetworkPorts
URI: /redfish/v1/Managers/1/DedicatedNetworkPorts
Method: GET
Response:200
{
"@odata.type": "#PortCollection.PortCollection",
"@odata.id": "/redfish/v1/Managers/1/DedicatedNetworkPorts",
"Name": "DedicatedNetworkPorts Collection",
"Description": "Collection of DedicatedNetworkPorts",
"Members@odata.count": 1,
"Members":[
{
"@odata.id": "/redfish/v1/Managers/1/DedicatedNetworkPorts/1"
}
],
"@odata.etag": "2a446445042d962d51a0f0c17658d6e1"
}
/redfish/v1/Managers/1/DedicatedNetworkPorts/num
URI: /redfish/v1/Managers/1/DedicatedNetworkPorts/num
Method: GET
Response:200
{
"@odata.type": "#Port.v1_8_0.Port",
"@odata.id": "/redfish/v1/Managers/1/DedicatedNetworkPorts/1",
"Id": "1",
"Name": "DedicatedNetworkPorts 1",
"Description": "DedicatedNetworkPorts 1 information",
"CurrentSpeedGbps": 1,
"MaxSpeedGbps": 1,
"LinkStatus": "LinkUp",
"LinkState": "Enabled",
"PortId": "1",
"PortProtocol": "Ethernet",
"LinkNetworkTechnology": "Ethernet",
"PortType": "BidirectionalPort",
"Status":{
"State": "Enabled",
"Health": "OK",
"HealthRollup": "OK"
},
"Ethernet":{
"AssociatedMACAddresses":[
"7C:C2:55:30:FB:F6"
],
"LLDPEnabled": false,
"LLDPReceive":{},
"LLDPTransmit":{"ChassisIdSubtype": "NotTransmitted", "ChassisId": "", "ManagementAddressIPv4": "", "ManagementAddressIPv6": "",…}
},
"Oem":{
"Supermicro":{
"@odata.type": "#SmcPortExtensions.v1_0_0.Ports",
"LLDPTransmitEnabled": false
}
},
"@odata.etag": "b253ce04be488af8d0daf5daa707e43e"
}