# Running Steward ## The service ```sh systemctl status steward # or stewardd journalctl -u steward -f systemctl reload steward # reread the TLS certificate ``` stewardd logs each configuration change, interfaces it starts or stops serving (and why it can't), addresses that answered the ping check or were declined, and full pools. DHCP messages themselves aren't logged: see them with `steward activity` or on the Activity page (the last 1000 are kept in memory). ## When a device gets no address 1. `steward status`: is its interface served? It may say: * `there is no interface eth0.20 on this server (yet)`: the VLAN interface doesn't exist. Steward serves it within 30 seconds of it appearing. * `address already in use`: another DHCP server holds port 67 on it. Stop it. * `permission denied`: stewardd lacks `CAP_NET_BIND_SERVICE`. Check the installed unit (`systemctl cat steward`). 2. `steward activity --mac MAC -f`, then reconnect the device: * no DHCPDISCOVER at all: the request doesn't reach the server (a firewall, the wrong VLAN, or a relay, which 0.1 doesn't serve); * `NO ADDRESS`: the pools on that interface are full (`steward subnet list` shows how full); * `DHCPNAK` with a reason, then a new DISCOVER: the device asked for an address that doesn't belong there. That is normal after it moved networks. 3. `steward lease list --search NAME` and `steward reservation show MAC`. ## Backups `steward-backup.timer` runs `stewardd backup` daily. It writes a consistent copy of the database to `backup.dir` (`/var/backups/steward/steward-