ipmideck cannot reach the BMC
ipmideck communicates with BMCs over UDP port 623 (IPMI/RMCP+). If a server shows as offline:- In Docker, confirm you started the container with
--network host. Without it, the container cannot reach BMCs on your LAN. - Verify the BMC IP is reachable from the host (
ping <bmc-ip>). - Confirm IPMI-over-LAN is enabled on the BMC and that UDP 623 is not blocked by a firewall or VLAN boundary.
ipmideck always uses
lanplus (IPMI 2.0) for encrypted sessions. A BMC stuck on
IPMI 1.5 only, or with RMCP+ cipher suites disabled, may refuse the connection.Authentication / privilege errors
If commands fail with an authentication or privilege error:- Double-check the BMC username and password you entered for the server.
- The BMC account needs at least Operator privilege for power and fan control; Administrator is required for configuration changes.
- Some BMCs lock an account after repeated failed logins, wait, or reset the account from the BMC’s own web UI.
Commands time out
Older hardware can be slow to answer. ipmideck applies a per-command timeout set byipmi.command_timeout (default 30 seconds). If you see timeouts on a slow BMC, increase
that value in config.yaml. Sensor and SEL reads on large repositories are the most
likely to be slow.
Sensors are missing or read zero
- Confirm the BMC actually exposes those sensors (
sdr elistsupport varies by vendor). - Some sensors only populate while the server is powered on.
- Check the polling interval (
ipmi.poll_interval, default 30s /IPMIDECK_IPMI_POLL_INTERVAL); very long intervals delay the first reading.
Fans return to BMC control unexpectedly
FanPilot deliberately hands fans back to the BMC’s own thermal management in two cases:- Safety override: at or above the critical temperature, fans go to 100%.
- Recovery: after an unclean shutdown, server-offline, or stale-sensor detection, ipmideck restores the BMC’s auto mode so hardware is never left unmanaged.
The dashboard will not load
- Confirm the container or process is running and listening on the configured port
(
server.port/IPMIDECK_SERVER_PORT, default 3000). - Open
http://<your-ip>:3000, nothttps, unless you setserver.https: true. - Check the application logs; raise
logging.leveltodebugfor more detail.