diff -r d612d08c0455 -r 8402f4294f85 dhcpd/dhcpd.conf --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/dhcpd/dhcpd.conf Mon Sep 17 19:05:03 2012 +0200 @@ -0,0 +1,88 @@ +## +## dhcpd.conf -- ISC DHCP Daemon Configuration +## + +# Options applicable to all subnets +option domain-name "example.com"; +authoritative; +default-lease-time 600; +max-lease-time 7200; +ddns-update-style none; +use-host-decl-names on; + +# Define some non-standard options +option freebsd-swappath code 128 = text; +option freebsd-rootopts code 130 = text; +option freebsd-swapopts code 131 = text; + +# Test drive using loopback +subnet 127.0.0.0 netmask 255.0.0.0 { +} + +# Define a particular sample subnet +subnet 192.168.1.0 netmask 255.255.255.0 { + + # Options applicable to this particular subnet + option broadcast-address 192.168.1.255; + option subnet-mask 255.255.255.0; + option routers 192.168.1.1; + option domain-name-servers 192.168.1.2; + + # Dynamic DNS (DDNS) Updating + ddns-updates off; + ddns-domainname "example.com"; + ddns-rev-domainname "in-addr.arpa"; + + # Pool of known clients (i.e. MAC known but IP not specified) + pool { + range 192.168.1.100 192.168.1.149; + min-lease-time 600; # 10min + default-lease-time 43200; # 12hour + max-lease-time 86400; # 24hour + deny unknown clients; + } + + # Pool of unknown clients (i.e. MAC not known) + pool { + range 192.168.1.150 192.168.1.199; + min-lease-time 300; # 5min + default-lease-time 3600; # 1hour + max-lease-time 10800; # 3hour + allow unknown clients; + } +} + +# The list of clients we explicitly configure +group { + # Just assign a fixed IP address for machine "quux1" + host quux1 { + hardware ethernet 01:02:03:00:00:01; + fixed-address 192.168.1.3; + } + + # Provide full boot information for a FreeBSD diskless client "quux2": + # On the server, create a 32MB swapfile /dlc/fs/swap/swap.192.168.1.4 + # with `dd if=/dev/zero of=swap.192.168.1.4 bs=1m count=32' and the + # filesystem /dlc/fs/quux2 with `cd /usr/src; make buildworld; make + # installworld DESTDIR=/dlc/fs/quux2'. Then use Etherboot for booting. + host quux2 { + hardware ethernet 01:02:03:00:00:02; + fixed-address 192.168.1.4; + next-server 192.168.1.2; + option tftp-server-name "192.168.1.2"; + filename "kernel.quux"; + always-reply-rfc1048 on; + option root-path "192.168.1.2:/dlc/fs/quux2"; + option freebsd-rootopts "rw,noatime"; + option swap-server 192.168.1.2; + option freebsd-swappath "192.168.1.2:/dlc/fs/swap"; + option freebsd-swapopts "sw"; + } +} + +# The list of clients we know, but which get IP addresses from pool +group { + host quux3 { hardware ethernet 01:02:03:00:00:03; } + host quux4 { hardware ethernet 01:02:03:00:00:04; } +} +