How to hard code the IPMI port during boot?

Electr0

Dabbler
Joined
Dec 18, 2020
Messages
47
Hi All.

I've recently added a HP ProLiant Microserver Remote Access Card to my N40L Microserver.
Annoyingly, the SMBIOS of the card reports the IPMI with KCS interface at the wrong location - 0xca8 rather than 0xca2, which is where the device is found.
Unfortunately, the IPMI driver in FreeBSD/TrueNAS simply trusts the SMBIOS table and thus can't find the device during boot.

This post on GitHub, How to setup an N40L Remote Access Card (BMC/IPMI) under Debian Wheezy, someone suggests:
1. Create /etc/modprobe.d/ipmi_si.conf
2. Override the KCS address in /etc/modprobe.d/ipmi_si.conf
Code:
options ipmi_si type=kcs ports=0xca2

3. Update /etc/modules
Code:
# http://openipmi.sourceforge.net/IPMI.txt
ipmi_msghandler
ipmi_devintf
ipmi_si
#ipmi_smb
#ipmi_watchdog
ipmi_poweroff

4. Load Kernel Modules
Code:
for module in ipmi_msghandler ipmi_devintf ipmi_si ipmi_poweroff; do
    modprobe $module
done

5. Enable and Restart ipmievd
Code:
sed -i -e 's/ENABLED=false/ENABLED=true/g' /etc/default/ipmievd

/etc/init.d/ipmievd restart


I know that FreeBSD is different to Linux, and these instructions are for the Linux IPMI driver, but would this still work?
If not, how can I achieve the same result on FreeBSD?

I've looked at the FreeBSN IPMI Man Page and set hint.ipmi.0.port="0xCA2" in /boot/device.hints but that didn't work. It still trusts the SMBIOS and tries to connect on the wrong port.

This guys seemed to have a similar problem, but it doesn't look like he found a solution:
FreeBSD 11.0 IPMI driver on the HP ProLiant MicroServer G7
 
Last edited:

aaronk6

Cadet
Joined
Jan 4, 2022
Messages
2
Hi,

Did you ever find a solution for this?

I’m facing the same issue on an N54L using XigmaNAS (FreeBSD 12.3).

Thanks,
Aaron
 

Patrick M. Hausen

Hall of Famer
Joined
Nov 25, 2013
Messages
7,776
You are aware that you can control the IPMI over the network and do not need the driver in FreeBSD at all?
Like so:
Code:
root@freenas[~]# ipmitool -H 192.168.1.110 -U ADMIN -P ADMIN sensor
CPU Temp         | 60.000     | degrees C  | ok    | 0.000     | 0.000     | 0.000     | 91.000    | 96.000    | 96.000   
System Temp      | 42.000     | degrees C  | ok    | -10.000   | -5.000    | 0.000     | 80.000    | 85.000    | 90.000   
Peripheral Temp  | 56.000     | degrees C  | ok    | -10.000   | -5.000    | 0.000     | 80.000    | 85.000    | 90.000   
[...]
 
Last edited:

aaronk6

Cadet
Joined
Jan 4, 2022
Messages
2
Thanks, Patrick! Yes, I’m aware that this is possible over the network. However, I don’t have the IPMI credentials and need to reset them first—which I think is only possible by sending raw commands to the local IPMI device.

I’m following this guide to do this: https://www.schauenburg.nl/posts/20...r_n40l_remote_access_card_password_reset.html

If that’s easier on Linux though, I might just boot from a live CD and do the password reset from there :smile:
 

Electr0

Dabbler
Joined
Dec 18, 2020
Messages
47
Hi,

Did you ever find a solution for this?

I’m facing the same issue on an N54L using XigmaNAS (FreeBSD 12.3).

Thanks,
Aaron

Unfortunately no, I did not.

I am still unsure how to force FreeBSD/TrueNAS to accept the IPMI port I give it.
 

Ericloewe

Server Wrangler
Moderator
Joined
Feb 15, 2014
Messages
20,194
Thanks, Patrick! Yes, I’m aware that this is possible over the network. However, I don’t have the IPMI credentials and need to reset them first—which I think is only possible by sending raw commands to the local IPMI device.

I’m following this guide to do this: https://www.schauenburg.nl/posts/20...r_n40l_remote_access_card_password_reset.html

If that’s easier on Linux though, I might just boot from a live CD and do the password reset from there :smile:
You can also do that through the system setup, typically.
 
Top