Mastering DHCP with ISC dhcpd

Chapter 13: Quick reference

Patrick
Patrick

Netherlands

Chapter 13: Quick reference

In this quick reference section, we summarize the most commonly used DHCP options,
directives, and snippets that you are likely to need in day-to-day operations.
While you may already know them from earlier chapters, having them together in a
single section makes it easy to copy, paste, and adjust them to your environment.

The goal of this section is not to teach new concepts, but to provide a fast lookup
that administrators can keep next to their terminal while working with dhcpd.conf.

Below you will find common configurations for DNS, NTP, syslog, WPAD, PXE boot,
DHCP relay, static leases, and failover. Each of these examples is battle-tested
and based on ISC dhcpd documentation and operational experience in production.

Remember that every option can be applied at different levels: globally,
per-subnet, per-pool, or per-host. Use the scope that makes the most sense for
your network design. For example, DNS servers are usually global, but PXE boot
options may only apply to a particular VLAN or subnet used for provisioning.

It is also worth noting that not all clients honor all DHCP options. Embedded
devices, thin clients, and older operating systems may ignore or partially
implement options such as NTP or WPAD. Always test with representative clients.

This reference is designed to be extended. If your organization uses custom DHCP
options (for example, vendor-specific information), document them here so that
future administrators have a single place to find them.

Finally, treat dhcpd.conf as code: version it in Git, review changes, and apply
through automation (such as Ansible or Puppet). This reduces mistakes and makes
auditing much easier.

  • DNS: option domain-name-servers 10.0.0.53, 10.0.1.53;
  • NTP: option ntp-servers 10.0.0.123;
  • Syslog: option log-servers 10.0.0.251;
  • Relay: dhcrelay -i vlan10 -i vlan20 10.0.0.10 10.0.0.11

WPAD/PAC:

option wpad code 252 = text;
option wpad "http://wpad.corp.example/wpad.dat";
  • PXE:
next-server 10.0.0.60;
filename "pxelinux.0";
option tftp-server-name "10.0.0.60";
option bootfile-name "pxelinux.0";