A Comparison of common IPMI Software open-source projects

Last updated 24 Feb 2011
email comments and updates to Andy Cress

ipmitool

ipmiutil

freeipmi

OpenIPMI
(driver & lib)

Web Site

ipmitool.sourceforge.net ipmiutil.sourceforge.net www.gnu.org/software/freeipmi sourceforge.net/projects/openipmi

Key Strengths

ATCA blades,
bottom-up IPMI feature coverage,

plugins

Server platforms,
top-down IPMI user functions, detection, portability

IPMI Conformance,
ipmi detail *2

Linux Driver, Library API, and basic ipmi_ui

OS Support

Linux, Solaris, BSD, Windows*1

Linux, Windows, Solaris, BSD, EFI

Linux, BSD, Solaris, Windows*1

Linux

Drivers it supports

Linux: openipmi, imb, free
Solaris: bmc, lipmi
Any: lan, lanplus

Linux: openipmi, imb, free, valinux, landesk, or driverless KCS/SSIF
Windows: Intel imbdrv.sys or MS ipmidrv.sys
Solaris: bmc
BSD: openipmi or driverless
Any: lan, lanplus

Linux: openipmi or driverless KCS/SSIF
BSD: openipmi or driverless
Solaris: bmc.
Any: lan, lanplus

Linux: openipmi

Target Market

administrators,

developers, OEMs

administrators, developers, OEMs

administrators, HPC

Kernel (driver),
openhpi (lib)

Linux Distros that have included it

RedHat, SuSE, Debian, Gentoo, Ubuntu, etc.

RedHat (FC14, EL6.3), SuSE (OS11.4), Gentoo, RedFlag, MontaVista

RedHat (EL6), Debian, Gentoo

RedHat, SuSE, Debian, Gentoo, Ubuntu, MontaVista, etc.

License

BSD

BSD

GPL

GPL for driver &
LGPL for library

Watchdog

Yes, via mc watchdog

Yes, via wdt, and automated with ipmiutil_wdt service

Yes

Yes, only on/reset via /dev/watchdog

PEF control

Some, manual.

Yes, automatic and manual, adds more PEF rules.

Yes, manual via ipmi-pef-config

Write existing only via lib/ui

LEDs

Yes, identify and other LEDs for Sun platforms

Yes, identify and other LEDs for Intel, Sun, Kontron and Fujitsu.

Yes, identify and other LEDs for IBM, Sun, and Fujitsu.

No

SOL console app

Yes

Yes

Yes, via ipmiconsole 0.7.4 or later

Yes, via sample/solterm

Remote IPMI soft-shutdown

Yes, if chassis power soft is supported by BMC

Yes, (reset -o) with chassis soft-off, else with igetevent -a bridge agent

Yes, if ipmipower --soft is supported by BMC

No

IPMI raw commands

Yes, via raw & i2c

Yes, via cmd

Yes, via ipmi-raw

Yes

LAN parameters

Yes, set each desired parameter

Yes, automatically discovers defaults

Yes

Yes, via ipmi_ui/lanparm

Serial parameters

Yes

Yes

Yes, via bmc-config -v

No

Power control

Yes via power or chassis

Yes, via reset

Yes, via ipmipower

Yes, via ipmi_ui/mc_reset

Sensors

Yes

Yes, also can set thresholds

Yes

Yes, via ipmi_ui/sensors

FRU Inventory Data

Yes, read

Yes, read & write

Yes, read

Yes, read via ipmi_ui/fru

SEL

Yes, read/clear

Yes, read/clear plus checksel cron script to automate

Yes

Yes, via ipmi_ui/sel

User parameters

Yes

Yes, with lan/serial

Yes, via bmc-config

No

Channel parameters

Yes

Yes, with lan/serial

Yes, via bmc-config

No

Firmware firewall

Yes

Yes *3

No

No

PICMG/ATCA extended cmds

Yes

Yes *3

No

No

Embedded shell

Yes, ipmitool shell

Not needed, use OS shell instead.

No

Yes, ipmish

OEM-specific Addons

Yes: fwum, hpm, ekanalyzer, *oem for sun, kontron, etc. Yes: fwum, hpm, ekanalyzer, oem_* for intel, kontron, sun, fujitsu, supermicro, dell, quanta Yes: oem code for dell, ibm, fujitsu, intel, inventec, quanta, sun, supermicro No, but driver supports any BMC

Discovery of IPMI nodes

No

Yes, idiscover

Yes, via ipmi-detect

Yes, via sample/rmcp_ping

Configuration save/restore

No

Yes, via config

Yes, via bmc-config

No

Event daemon

Yes, ipmievd

Yes, ipmiutil_evt (igetevt), events include severity

No

No

Reusable library API

Yes, libipmitool

Yes, libipmiutil or ipmiutil.lib (win)

Yes, libfreeipmi

Yes, libOpenIPMI

First project release

06 Nov 2003 24 Oct 2001 13 Nov 2006 10 May 2002 (driver)

Software versions used to compare in Sep 2010

ipmitool-1.8.11 ipmiutil-2.6.9 freeipmi-0.8.9 OpenIPMI-2.0.18

*1 = ipmitool and freeipmi support Windows as an IPMI LAN remote client only, if compiled under cygwin.

There is also a Windows native port of ipmitool 1.8.8 from Sun that supports Sun KCS driver.

The source to that ipmitool binary from Sun is not available.

*2 = "libfreeipmi is a bit more for those who are familiar with the IPMI protocol in detail,

not really abstracting away a lot of IPMI details away." - strategy quote from freeipmi maintainer

*3 = ipmiutil-2.6.5 and later included firmware firewall and PICMG/ATCA extended commands.

Advantages of ipmiutil

ipmiutil includes a direct (driverless) KCS or SSIF interface in Linux,

ipmiutil supports Windows natively, with either Intel imbdrv.sys or Microsoft ipmidrv.sys

ipmiutil supports configuring the IPMI watchdog feature and provides an automatic ipmiutil_wdt cron script.

ipmiutil includes a severity with each event, and does not mask out event data it does not recognize with "Unknown"

ipmiutil supports more PEF functions, configuring and interpreting BMC SNMP traps.

ipmiutil supports remote soft-shutdown with ipmiutil_asy service on the target,

ipmiutil supports setting sensor thresholds,

ipmiutil supports writing SEL records automatically to OS logs (Linux syslog, Windows System Log)

ipmiutil detects more options automatically,

ipmiutil configures IPMI LAN, SOL, and PEF in one simple command, while ipmitool requires about 50 separate commands ( ipmitool_setlan.sh or /usr/share/ipmitool/bmclanconf).

ipmiutil has various OEM-specific addons, like fwum, hpm, etc.

ipmiutil incorporates fixes and new features more quickly,

ipmiutil has a BSD license, which allows it to be part of both open-source and proprietary projects.

Advantages of ipmitool

ipmitool is provided in most Linux distros, including RHEL and SLES

ipmitool supports both Solaris drivers, bmc and lipmi,

ipmitool has more PICMG/ATCA/bladed runtime,

ipmitool has a larger set of developers contributing,

ipmitool has various OEM-specific addons, like fwum, hpm, etc.

ipmitool has a BSD license, which allows it to be part of both open-source and proprietary projects.

Advantages of freeipmi

freeipmi freeipmi recognizes many IPMI event types, and shows the raw event data that it does not recognize

freeipmi includes a direct (driverless) interface in Linux and BSD, which allows it to run in any environment, even boot media.

freeipmi has some OEM-specific addons via ipmi-oem for a variety of vendors, like: Dell, Fujitsu, IBM, Inventec, Quanta, Sun, Supermicro.

freeipmi is licensed with the GPL license, which requires open-source publishing, so it may be preferred if in a GPL-only project.