Finding a server's BMC / IPMI IP address with ipmitool

I test servers on a temporary basis a lot, and many enterprise servers don't have as user-friendly external port indications, or little OLED displays to provide useful information. They're no-frills because they don't need frills, you just deploy them and they run for years.

I often need to gain access to the server's IPMI/BMC interface to manage the server remotely, and it's not always obvious what IP address is assigned if you don't manually assign one via your router and a MAC address.

I could scan my network for the IP address, but assuming I have the server booted and it's a modern Supermicro or other standard system, I can use ipmitool to grab the BMC IP:

$ sudo ipmitool lan print

Set in Progress         : Set Complete
Auth Type Support       : 
Auth Type Enable        : Callback : 
                        : User     : 
                        : Operator : 
                        : Admin    : 
                        : OEM      : 
IP Address Source       : DHCP Address
IP Address              : 10.0.2.213
Subnet Mask             : 255.255.255.0
MAC Address             : e6:33:6f:f7:a1:07
SNMP Community String   : public

This also makes it easy to grab the MAC address for the BMC if you do want to assign it a static IP in your router configuration.

Comments

A reasonably modern BMC will have an IPv6 address; you can find it from any other host in the LAN using `ping ff02::1%eth0`. `ff02::1` is the "all nodes"-multicast address, and `%eth0` tells your computer which interface to use.