Installs/configure a DHCP server and TFTP server
A few assumptions are made by this role:
If routers
is not set in the subnet
dictionary (within dhcpd_subnets
), then the first usable address is set as the router.
If routers
is set and has a list of IP addresses as a part of the rfc3442routes
key, RFC3442 classless static routes (option 121) will be added in addition to the standard routers
(option 3)
Supports using PXE to load both traditional BIOS and EFI payloads, tested primarily with iPXE
.
dhcpd - ISC's docs:
tftpd - Documentation is scarce. Upstream source repo:
Also supports OpenBSD dhcpd (fork of ISC) and tftpd (BSD), which has some difference in configuration/behavior - missing conditionals, additional option definitions, etc.
DHCP:
TFTP:
Minimum ansible version: 2.9.5
- hosts: all vars: dhcpd_interfaces: - eth0 dhcpd_subnets: "192.168.0.1/24": range: "192.168.0.128/25" dns_servers: - "192.168.0.1" - "192.168.0.2" dns_search: - "example.com" tftpd_server: "192.168.0.1" hosts: - name: "dns" ip_addr: "192.168.0.2" mac_addr: "a1:b2:c3:d4:e5:f6" routers: - ip: "192.168.0.1" roles: - dhcpd
Add classless static route support for OpenBSD - see dhcp-options(5) on that system.
© 2020 Open Networking Foundation support@opennetworking.org
License: Apache-2.0