SOL (Serial over LAN) is a function of IPMI that allows you to make a serial console connection over the network, through your IPMI connection.
This article does not cover configuring IPMI on the server; that is different for different hardware and, even, revisions in hardware. It assumes you can view a serial console during boot (ie, the BIOS screen). It was created using an HP DL180-G6 running ILO v2. ILO is set to offer serial console on the second serial port (COM2 (Windows), ttys1 (Linux), ttyu1 (BSD)) at 57600 baud.
Find the line for ttyu1 and modify as follows. This sets the port to respond at 57600, using vt100 protocol and requiring a login.
ttyu1 "/usr/libexec/getty std.57600" vt100 onifconsole secure
This tells the kernel to send messages to the serial port and the internal console, and sets the speed to 57600
echo "-Dh -S57600" > /boot.config
Add/edit the following in /boot/loader.conf to set up console redirect when booting.
boot_multicons="YES" boot_serial="YES" console="comconsole,vidconsole" comconsole_port="0x2F8" hint.uart.0.flags="0x00" hint.uart.1.flags="0x10"
Boot from multiple consoles (in our case, the serial and the video)
Guess what this one means
Boot from the serial port AND the video console
Sets up to use second serial port, at 0x2F8. use 0x3F8 for the first port, or whatever memory range you are using
Disable console on first serial port
Set second serial port (uart.1) as a potential serial console. 0x20 says “always use it as a serial console”
You can now reboot and view the output on your SOL connection. If you have issues, you can find them after rebooting with
dmesg | grep uart