On /subnets/{id}, DHCP options:
- Code (e.g.
6for DNS servers). - Payload JSON.
- Optional vendor class.
Payload shapes dhcpd understands:
{"addresses":["8.8.8.8","1.1.1.1"]}
{"ip":"10.20.20.1"}
{"string":"office.example.com"}
{"uint32":86400}
{"hex":"0102"}
Code 6 with addresses becomes option 6 (DNS). Code 42 with addresses is NTP — the subnet NTP servers field also sets option 42; a stored option wins if both exist. NTP.
Mask, router, and lease-time are built-in from the subnet row. Set Gateway on the subnet so IPAM and DHCP agree.
Priority (later wins): global < subnet < pool < class < reservation.
Class-scoped options: Client classes. Wrong JSON fails the save. There is no dhcpd.conf snippet to edit on each node.