From c48951bf14eab76fcc2c80e9d86a849f973bfa08 Mon Sep 17 00:00:00 2001 From: Jonas Smedegaard Date: Thu, 31 Oct 2002 02:56:00 +0000 Subject: dhcp3: Add example DHCP3 config files. --- dhcp3/dhcpd.conf | 112 ++++++++++++++++++++++++++++++++++++++++++++++++ dhcp3/dhcpd.hosts.fai | 47 ++++++++++++++++++++ dhcp3/dhcpd.hosts.grub | 17 ++++++++ dhcp3/dhcpd.hosts.ltsp | 24 +++++++++++ dhcp3/dhcpd.hosts.plain | 14 ++++++ 5 files changed, 214 insertions(+) create mode 100644 dhcp3/dhcpd.conf create mode 100644 dhcp3/dhcpd.hosts.fai create mode 100644 dhcp3/dhcpd.hosts.grub create mode 100644 dhcp3/dhcpd.hosts.ltsp create mode 100644 dhcp3/dhcpd.hosts.plain (limited to 'dhcp3') diff --git a/dhcp3/dhcpd.conf b/dhcp3/dhcpd.conf new file mode 100644 index 0000000..420a4f1 --- /dev/null +++ b/dhcp3/dhcpd.conf @@ -0,0 +1,112 @@ +# This config is put together with valuable inspiration from the following sources: +# http://cd-linux.org/nfs-howto.htm +# http://www.netbsd.org/Documentation/network/netboot/intro.i386.html +# http://www.pcxperience.org/thinclient/documentation/thinclientdesign.html +# http://www.nominum.com/resources/faqs/dhcp-faq.html + +authoritative; +#deny-unknown-clients; +ddns-update-style none; +use-host-decl-names on; # This avoids setting "option host-name" for each host +#always-reply-rfc1048 on; + +default-lease-time 21600; +max-lease-time 21600; + +option subnet-mask 255.255.255.0; +option broadcast-address 192.168.102.255; +option routers 192.168.102.1; +option domain-name-servers 192.168.102.252; +option domain-name "107b.dk"; +option time-servers ntp; +option ntp-servers ntp; +option log-servers log; + +# FAI (Fully Automated Install) options +option fai-location code 170 = text; +option fai-action code 171 = text; +option fai-flags code 172 = text; + +# Etherboot options +option eb-magic code 128 = string; # Magic string for reading more options +option eb-bootopts code 129 = text; # Boot options passed on to the kernel +option eb-menuopts code 160 = text; # EtherBoot menu options +option eb-motd1 code 184 = text; # MOTD +option eb-motd2 code 185 = text; +option eb-motd3 code 186 = text; +option eb-motd4 code 187 = text; +option eb-motd5 code 188 = text; +option eb-motd6 code 189 = text; +option eb-motd7 code 190 = text; +option eb-motd8 code 191 = text; +option eb-menuitem1 code 192 = text; # Menu items: "label:server:gateway:filename:passwd:flags:cmdline" +option eb-menuitem2 code 193 = text; +option eb-menuitem3 code 194 = text; +option eb-menuitem4 code 195 = text; +option eb-menuitem5 code 196 = text; +option eb-menuitem6 code 197 = text; +option eb-menuitem7 code 198 = text; +option eb-menuitem8 code 199 = text; +option eb-menuitem9 code 200 = text; +option eb-menuitem10 code 201 = text; +option eb-menuitem11 code 202 = text; +option eb-menuitem12 code 203 = text; +option eb-menuitem13 code 204 = text; +option eb-menuitem14 code 205 = text; +option eb-menuitem15 code 206 = text; +option eb-menuitem16 code 207 = text; +option space pxelinux; +option pxelinux.magic code 208 = string; +option pxelinux.configfile code 209 = text; +option pxelinux.pathprefix code 210 = text; +option pxelinux.reboottime code 211 = unsigned integer 32; + +# Web Proxy Auto-Discovery Protocol (described in RFC 3040, used in MS IE 5.0 and later and maybe Mozilla) +option wpad-url code 252 = text; + +# GRUB (GRand Unified Boot-loader) options +option grub-configfile code 150 = text; + +class "PXE" { + match if substring (option vendor-class-identifier, 0, 9) = "PXEClient"; + + # Always include the following lines for all PXELINUX clients + site-option-space "pxelinux"; + option pxelinux.magic f1:00:74:7e; + if exists dhcp-parameter-request-list { + # Always send the PXELINUX options + append dhcp-parameter-request-list 208, 209, 210, 211; + } +# option pxelinux.configfile = concat("pxelinux.cfg/", binary-to-ascii(16, 8, ":", hardware)); +# option pxelinux.reboottime 30; + filename "pxelinux.0"; +} + +class "Etherboot" { + match if substring (option vendor-class-identifier, 0, 9) = "Etherboot"; +} + +# Open Transport 2.5.1 and 2.5.2 fails with lease times larger than 1 hour +class "Macintosh_a" { + match if substring (hardware, 0, 3) = 00:05:02; + + default-lease-time 3599; + max-lease-time 3599; + min-lease-time 3599; +} +class "Macintosh_b" { + match if substring (hardware, 0, 3) = 00:61:61; + + default-lease-time 3599; + max-lease-time 3599; + min-lease-time 3599; +} + +subnet 192.168.102.0 netmask 255.255.255.0 { + range 192.168.102.100 192.168.102.200; +} + +include "/etc/dhcp3/dhcpd.hosts.fai"; +include "/etc/dhcp3/dhcpd.hosts.ltsp"; +include "/etc/dhcp3/dhcpd.hosts.grub"; +include "/etc/dhcp3/dhcpd.hosts.plain"; diff --git a/dhcp3/dhcpd.hosts.fai b/dhcp3/dhcpd.hosts.fai new file mode 100644 index 0000000..7e6577b --- /dev/null +++ b/dhcp3/dhcpd.hosts.fai @@ -0,0 +1,47 @@ +# FAI clients +group { + server-name "fai"; + next-server 192.168.102.252; # IP address of TFTP server (only needed if separate from DHCP server) +# option tftp-server-name "192.168.102.252"; # same as (or similar to) next-server above (not tested) + option dhcp-max-message-size 2048; + option fai-location "fai:/usr/local/share/fai"; + option fai-action "sysinfo"; + option fai-flags "verbose createvt sshd"; +# option root-path "/usr/local/lib/fai/nfsroot-woody-i386"; +# option root-path "/usr/local/lib/fai/nfsroot-sarge-i386"; +# option root-path "/usr/local/lib/fai/nfsroot-sid-i386"; +# filename "boot/fai/pxelinux.0"; +# filename "/pxelinux.0"; + option pxelinux.pathprefix "/boot/fai/"; + + if substring (option vendor-class-identifier, 0, 9) = "Etherboot" { + option eb-magic e4:45:74:68:00:00; + option vendor-encapsulated-options 3c:09:45:74:68:65:72:62:6f:6f:74:ff; # Send VCI "Etherboot" back to client again + filename "boot/fai/vmlinuz-2.4.18.nbi"; + } + + + host simbabve { hardware ethernet 00:d0:09:ab:c1:ad; fixed-address simbabve; option fai-action "install"; option root-path "/usr/local/lib/fai/nfsroot-sid-i386"; } # Vega: Family.net (requires XFree86 4.2 which needs glibc only in sid as of 20020901) +# host jammin { hardware ethernet 00:50:41:01:66:6b; fixed-address jammin; option eb-bootopts "ramdisk_size=16000 vga=0x303 console=/dev/tty2 "; } # Vega: Jammin 125 + + # rtl8029 NIC + host collapse { hardware ethernet 00:06:29:05:a4:e6; fixed-address collapse; option fai-action "install"; } # Lab: IBM m. defekt indbygget NIC + + # sis900 NIC + host svasiland { hardware ethernet 00:07:95:47:3e:f2; fixed-address svasiland; option fai-action "install"; } # VEGA motherf*cker + + # Via-rhine NIC + host sair { hardware ethernet 00:40:63:c0:8d:05; fixed-address sair; option fai-action "install"; } # Vega: Xenux thin client + host tjat { hardware ethernet 00:40:63:c0:8d:b3; fixed-address tjat; } # Vega: Xenux thin client + host kenja { hardware ethernet 00:40:63:c0:84:a5; fixed-address kenja; option fai-action "install"; option root-path "/usr/local/lib/fai/nfsroot-sarge-i386"; } # Vega (Spiff): Xenux thin client (Woody is fine - this is experiemental only) + + # 3com 3c556 NIC + host blyant { hardware ethernet 00:04:75:19:9f:88; fixed-address blyant; option fai-action "install"; } # Louiz: HP omnibook 500, 700MhZ Pentium III, 128MB ram (TW12503936) + host passer { hardware ethernet 00:01:03:88:45:ed; fixed-address passer; option fai-action "install"; } # Louiz: HP omnibook 500, 500MhZ Pentium III, 128MB ram (TW13603371) + host ur { hardware ethernet 00:04:75:19:3f:6d; fixed-address ur; option fai-action "install"; } # Louiz: HP omnibook 500, 500MhZ Pentium III, 256MB ram (TW12503931) + host kniv { hardware ethernet 00:01:03:88:63:3c; fixed-address kniv; option fai-action "install"; } # Louiz: HP omnibook 500, 700MhZ Pentium III, 128MB ram (TW13500555) + # Louiz: HP omnibook 500, 600MhZ Celeron, 128MB ram (TW14203937) - NIC broken/missing + + # PowerPC + host auryn { hardware ethernet 00:30:65:09:3a:27; fixed-address auryn; filename "yaboot/yaboot"; } +} diff --git a/dhcp3/dhcpd.hosts.grub b/dhcp3/dhcpd.hosts.grub new file mode 100644 index 0000000..8f2d461 --- /dev/null +++ b/dhcp3/dhcpd.hosts.grub @@ -0,0 +1,17 @@ +group { + server-name "grub"; + next-server 192.168.102.252; # IP of TFTP server (only needed if separate from DHCP server) +# option tftp-server-name "192.168.102.252"; # same as (or similar to) next-server above (not tested) + option dhcp-max-message-size 2048; + option grub-configfile "(nd)/grub-menu.lst"; + + # Via-rhine NIC + group { + if substring (option vendor-class-identifier, 0, 9) = "PXEClient" { + filename "pxegrub-via-rhine"; + } else { + filename "nbgrub-via-rhine"; + } +# host kenja { hardware ethernet 00:40:63:c0:84:a5; fixed-address kenja; option fai-action "install"; } # Vega (Spiff): Xenux thin client + } +} diff --git a/dhcp3/dhcpd.hosts.ltsp b/dhcp3/dhcpd.hosts.ltsp new file mode 100644 index 0000000..01112fb --- /dev/null +++ b/dhcp3/dhcpd.hosts.ltsp @@ -0,0 +1,24 @@ +group { + server-name "ltsp"; + next-server ltsp; + filename "lts/vmlinuz-2.4.9-ltsp-lpp-6"; +# filename "lts/vmlinuz-2.4.19-ltsp-1"; + option root-path "192.168.102.75:/opt/ltsp/i386"; + option eb-magic e4:45:74:68:00:00; + option eb-bootopts "ramdisk_size=8000 vga=0x301 console=/dev/tty2 "; +# option eb-menuopts "timeout=10:default=192"; +# option eb-motd1 "Loading message of the day...\n['motd'#"; +# option eb-menuitem1 "Linux:::-:::"; +# option eb-menuitem2 "FreeDOS:::floppy.net:::"; +# option eb-menuitem3 "FreeDOS:::-:::nfs=other"; + option vendor-encapsulated-options 3c:09:45:74:68:65:72:62:6f:6f:74:ff; + + host pc077 { hardware ethernet 00:50:BA:8C:B9:6D; fixed-address 192.168.102.77; } # Lab: clone +# host kenja { hardware ethernet 00:40:63:c0:84:a5; fixed-address kenja; option eb-bootopts "via-rhine "; } # Vega (Spiff): Xenux thin client + host pc079 { hardware ethernet 00:00:B4:78:CF:EC; fixed-address 192.168.102.79; option eb-bootopts "NIC=tulip "; } # Jones(?): clone(?) + host jammin { hardware ethernet 00:50:41:01:66:6b; fixed-address jammin; option eb-bootopts "ramdisk_size=16000 vga=0x303 console=/dev/tty2 "; } # Vega: Jammin 125 + host pc083 { hardware ethernet 00:50:22:87:01:71; fixed-address 192.168.102.83; } # Lab(?): clone(?) + host judd2 { hardware ethernet 00:10:a7:0b:05:80; fixed-address judd2; } # Judd: Zitech clone + host lablight1 { hardware ethernet 00:50:ba:8c:85:fe; fixed-address lablight1; option eb-bootopts "NIC=8139too "; } # LAB Pentium90/16 dfe538 + host lablight2 { hardware ethernet 00:50:ba:8c:b9:70; fixed-address lablight2; option eb-bootopts "NIC=8139too "; } # LAB Pentium133/24 dfe538 +} diff --git a/dhcp3/dhcpd.hosts.plain b/dhcp3/dhcpd.hosts.plain new file mode 100644 index 0000000..58a7854 --- /dev/null +++ b/dhcp3/dhcpd.hosts.plain @@ -0,0 +1,14 @@ +group { + option netbios-name-servers samba; + option netbios-dd-server samba; + option netbios-node-type 2; # Disable browsing, only use netbios server + option ip-forwarding Off; + option wpad-url "http://wpad/wpad.dat"; # Add this host to Bind and Apache, to work with non-DHCP clients as well + + host negonwin { hardware ethernet 00:00:b4:84:93:53; fixed-address negon3; } + host haledual { hardware ethernet 00:30:65:c0:0b:be; fixed-address haledual; } + host noiszes-g4 { hardware ethernet 00:30:65:f3:38:ee; fixed-address noiszes-g4; } + host egern { hardware ethernet 00:80:ad:c6:b9:51; fixed-address egern; } + host emil-louise { hardware ethernet 00:07:95:ab:b1:4a; fixed-address emil-louise; } + host gyro { hardware ethernet 00:03:93:12:4d:34; fixed-address gyro; } +} -- cgit v1.2.3