pxe tftpd dhcpd advanced client identifier http
DHCPD setup for PXE/BIOS – see client classification for details
authoritative;
allow bootp;
allow booting;
ddns-update-style none;
allow unknown-clients;
ignore-client-uids on;
subnet 172.17.0.0 netmask 255.255.0.0 {
}
subnet x.x.x.0 netmask 255.255.255.0 {
range dynamic-bootp x.x.x.100 x.x.x.199;
option routers x.x.x.254;
option domain-name-servers x.x.x.252;
next-server x.x.x.x;
# BIOS vs. EFI64
if substring (option vendor-class-identifier, 15, 5) = "00007" {
# EFI BC (EFI Byte Code)
filename "efi64/syslinux.efi";
} elsif substring (option vendor-class-identifier, 15, 5) = "00009" {
# EFI x86-64
filename "efi64/syslinux.efi";
} else {
# (option vendor-class-identifier, 0, 32) = "PXEClient:Arch:00000:UNDI:002001"
filename "pxelinux.0";
}
# pxeboot_ia32.bin got chain-loaded
# enforcing TFTP instead of NFS and offering a nice path for the default kernel
if substring (option vendor-class-identifier, 0, 17) = "NetBSD:i386:libsa" {
if filename = "netbsd" {
filename "tftp:netbsd9/binary/kernel/netbsd-INSTALL.gz";
}
# pxeboot got chain-loaded
} elsif substring (option vendor-class-identifier, 0, 9) = "PXEClient" {
if substring (option user-class, 1, 7) = "FreeBSD" {
# diskless for fbsd
option root-path "x.x.x.x:/tftpboot/fbsd";
} else { # TODO 255 End
# diskless for dfly
option root-path "x.x.x.x:/tftpboot/dfly";
}
# TODO slackware live
} else {
# diskless for slackware
option root-path "/tftpboot/slackware-live";
}
}
#allow booting;
#option option-128 code 128 = string;
#option option-129 code 129 = text;
note ignore client-identifiers (since v4.2.0) breaks the specification, but prevents sysrescuecd from changing IPs.
ISC DHCP 4.1 Manual Pages - dhcpd.conf https://kb.isc.org/docs/isc-dhcp-41-manual-pages-dhcpdconf
ISC DHCP 4.1 Manual Pages - dhcpd.leases https://kb.isc.org/docs/isc-dhcp-41-manual-pages-dhcpdleases
Dhcp with known and unknown hosts http://www.macfreek.nl/memory/Dhcp_with_known_and_unknown_hosts
How to reserve dhcp for mac address in another file? https://askubuntu.com/questions/1015658/how-to-reserve-dhcp-for-mac-address-in-another-file
dhcpd.conf - dhcpd configuration file https://manpages.debian.org/unstable/isc-dhcp-server/dhcpd.conf.5.en.html
How do i keep ISC-DHCPD from offering different IPs when there is two requests from the same MAC https://serverfault.com/questions/694351/how-do-i-keep-isc-dhcpd-from-offering-different-ips-when-there-is-two-requests-f