ddns-update-style none; option domain-name "sanitarium.net"; option space PXE; option PXE.mtftp-ip code 1 = ip-address; option PXE.mtftp-cport code 2 = unsigned integer 16; option PXE.mtftp-sport code 3 = unsigned integer 16; option PXE.mtftp-tmout code 4 = unsigned integer 8; option PXE.mtftp-delay code 5 = unsigned integer 8; option PXE.discovery-control code 6 = unsigned integer 8; option PXE.discovery-mcast-addr code 7 = ip-address; # Declare the subnet where our diskless nodes will live subnet 172.22.100.0 netmask 255.255.255.0 { option domain-name-servers 172.22.100.202, 172.22.100.1; option broadcast-address 172.22.100.255; option routers 172.22.100.1; next-server 172.22.100.202; authoritative; # assign dynamic IPs if no host is specified... range 172.22.100.30 172.22.100.39; # Provide PXE clients with appropriate information class "pxeclient" { match if substring(option vendor-class-identifier, 0, 9) = "PXEClient"; vendor-option-space PXE; option PXE.mtftp-ip 0.0.0.0; if exists user-class and option user-class = "gPXE" { filename "pxelinux.0"; } elsif exists user-class and option user-class = "iPXE" { filename "pxelinux.0"; } elsif substring (hardware, 1, 6) = 00:25:90:6B:B0:74 { # hellmouth can't handle pxeboot via pxelinux or ipxe when there are multiple NICs of the same chipset :( filename "pxeboot.0"; } elsif substring (hardware, 1, 6) = 0C:C4:7A:7C:2C:DA { # hellmouth2 has a wrong serial port filename "ipxe-undionly-hellmouth.kpxe"; } else { filename "ipxe-undionly.kpxe"; } } # Add one host declaration for each diskless host host comatose { hardware ethernet 2C:4D:54:4B:2F:01; fixed-address 172.22.100.20; } host lgtv { hardware ethernet C8:08:E9:AE:D7:01; fixed-address 172.22.100.22; } host insomnia { hardware ethernet 00:1B:21:20:07:7F; fixed-address 172.22.100.13; } host obsessive { #hardware ethernet 00:D0:B7:BE:E7:1C; hardware ethernet 00:1b:21:20:0c:f1; fixed-address 172.22.100.15; } host hellmouth { hardware ethernet 00:25:90:6B:B0:74; fixed-address 172.22.100.1; } host hellmouth-ipmi { hardware ethernet 00:25:90:6F:DE:E4; fixed-address 172.22.100.248; } host hellmouth2 { hardware ethernet 0C:C4:7A:7C:2C:DA; fixed-address 172.22.100.2; } host hellmouth2-ipmi { hardware ethernet 0C:C4:7A:7C:29:B1; fixed-address 172.22.100.247; } host deranged-e1000 { hardware ethernet 00:1B:21:22:8D:00; fixed-address 172.22.100.3; option root-path "/netboot/deranged"; option domain-name "sanitarium.net"; } host deranged-dge { hardware ethernet 00:21:91:1F:D8:A1; fixed-address 172.22.100.3; } #host lunacy { # hardware ethernet 68:05:CA:02:77:4E; # fixed-address 172.22.100.16; #} host lunatic { hardware ethernet DE:AD:AC:16:64:04; fixed-address 172.22.100.4; } host laika { hardware ethernet 00:A0:C9:BB:42:B4; fixed-address 172.22.100.45; } host laika2 { hardware ethernet 00:0E:C6:A6:2B:6A; fixed-address 172.22.100.46; } host handytone { hardware ethernet 00:0B:82:04:35:A6; fixed-address 172.22.100.253; } host procurve { hardware ethernet 00:1F:28:66:83:E0; fixed-address 172.22.100.251; } host dementia { hardware ethernet 00:1B:21:5E:8A:92; fixed-address 172.22.100.17; } host dementia2 { hardware ethernet 68:05:ca:35:fb:6d; fixed-address 172.22.100.18; } host receiver { hardware ethernet 00:A0:DE:87:A0:47; fixed-address 172.22.100.249; } host lunacy { hardware ethernet 68:05:CA:02:77:4E; fixed-address 172.22.100.16; } }