IPMI and FreeBSD

Intelligent Platform Management Interface (IPMI) is a remote system administrator’s dream, this facility can either come in the form of an add on card (PCI or the like) or we are now begining to see versions that are built into the BIOS. IPMI gives you another Network Interface port on the back of your server which you can access independently away from the machine so that in the case of failure (hard lock, kernel lock, etc) and unavailable remote access, you can directly query the BIOS and power systems via a web interface or utility so that you can check the logs or power cycle your system.

For FreeBSD and Linux users, to access the IPMI features you will either need a DHCP server on your network so you can use the software that came with it to scan for IPMI or you can use ipmitool. ipmitool is a utility primarily developed for Linux but theRE is a FreeBSD port which is mostly functional and you can then query the IPMI directly and change its settings. In our environment, we do not have a DHCP server but to set IP’s manually we are required to set up using this tool. To install ipmitool on FreeBSD complete the following:

#portinstall ipmitool

For ipmitool to function you require the kernel module to load this you can run:
#kldload ipmi

if you wish for it to continue after your next reboot please add the following to your /boot/loader.conf

Now that you have it loaded you can then use ipmitool to interrogate it.
$ipmitool lan print 1

and this will show you all of the settings for the IPMI NIC and there current values.
$ipmitool lan set 1 ipaddr <ip address>
$ipmitool lan set 1 netmask <netmask> 

This will set the external IP address for your IPMI NIC, once you have this set you can use your favrouite
browser and go “http://ip address” and the default login is usually admin/admin.