lattice-dhcpd NAKs a Request when:
- The packet has no requested IP.
Commitfails: IP not in a pool, excluded, reserved for someone else, wrong subnet for thisgiaddr, inventory not free, or license refusing new allocations.
JSON log: "msg":"request nak" with err, xid, mac, ip, subnet_id.
Checklist
- Leases search by MAC. If they already have a row in another subnet, release it or fix the relay
giaddr. - Utilization on the subnet —
freenear 0 → pool exhaustion. - A reservation for that IP with a different MAC.
- An exclude covering the requested IP.
- License over cap: existing leases still renew; a brand-new Request for a new IP NAKs. License.
Server-identifier mismatch is not a NAK. Shared-store HA ignores it so a VIP can land Request on a different node. HA.