Skip to main content

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 by ipmi.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 elist support 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.
This is intended fail-safe behavior, not a bug. See Security.

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 — not https, unless you set server.https: true.
  • Check the application logs; raise logging.level to debug for more detail.