ddns-update-style interim; ddns-updates on; ignore client-updates; authoritative; option domain-name "domain.local"; option domain-name-servers 192.168.0.10; option routers 192.168.0.253; max-lease-time 604800; class "pxe" { match if substring (option vendor-class-identifier, 0, 9) = "PXEClient"; } class "install" { match if option dhcp-client-identifier = "PXEInstall"; } class "anaconda" { match if substring (option vendor-class-identifier, 0, 8) = "anaconda"; } subnet 192.168.0.0 netmask 255.255.252.0 { allow bootp; allow booting; next-server 192.168.0.5; filename "linux-install/pxelinux.0"; pool { allow known clients; allow members of "pxe"; allow members of "install"; allow members of "anaconda"; default-lease-time 604800; use-host-decl-names on; if known { ddns-hostname = host-decl-name; } else { ddns-hostname = binary-to-ascii (16,8,"-",substring (hardware,1,6)); } range dynamic-bootp 192.168.1.1 192.168.1.254; range dynamic-bootp 192.168.2.1 192.168.2.254; ddns-updates on; } pool { deny members of "pxe"; deny members of "install"; deny members of "anaconda"; allow unknown-clients; deny known clients; default-lease-time 7200; max-lease-time 7200; ddns-hostname = binary-to-ascii (16,8,"-",substring (hardware,1,6)); option subnet-mask 255.255.255.255; option domain-name-servers 127.0.0.1; option routers 127.0.0.1; range dynamic-bootp 192.168.3.1 192.168.3.254; } } zone escape.local. { primary 192.168.0.10; } zone 0.168.192.in-addr.arpa. { primary 192.168.0.10; } zone 1.168.192.in-addr.arpa. { primary 192.168.0.10; } zone 2.168.192.in-addr.arpa. { primary 192.168.0.10; } zone 3.168.192.in-addr.arpa. { primary 192.168.0.10; } group { option domain-name "domain.local"; ddns-domainname "domain.local"; host ldapman { hardware ethernet 00:14:5E:55:06:3D; } host dhalsim { hardware ethernet 00:19:BB:EB:B1:46; } }