[Timers] Do not enable serial console by default; this change should not
[people/dverkamp/gpxe.git] / contrib / dhcpdconfeg / vendorclassid.txt
1 From: Dax Kelson
2 To: Etherboot users list
3 Subject: [Etherboot-users] Example ISC DHCP v3 dhcpd.conf using conditional operations
4 Date: Wed, 13 Jun 2001 20:22:21 -0600
5
6 Hopefully someone will find this useful.  I spent a long time tracking
7 down and figuring out all the pieces.  To the powers that be, feel free to
8 stick this in contrib if you like it.
9
10 Goal:  Use the vendor-class-identifier and ISC DHCP v3 "match" option to
11 conditionally send proper options only when the DHCP discover/request from
12 etherboot comes in.  We use static-MAC-to-IP mappings for classroom
13 computers, and dynamic dhcp ranges for other clients (student laptops,
14 etc).
15
16 I used Etherboot 5.0.1 and the patch (required) in this email:
17
18 http://www.geocrawler.com/lists/3/SourceForge/5299/0/5952625/
19
20 Furture versions of Etherboot will likely already have this patch
21 included.
22
23 Dax Kelson
24 Guru Labs
25
26 ######### Begin ISC DHCP v3 dhcpd.conf #############
27
28 ddns-update-style ad-hoc;
29
30 # Global default, can be overridden
31 filename "/exports/kickstart/class1-rh7.1.ks";
32
33 # Define options for Etherboot
34 # There are more, these are just the ones I'm using
35 option ebootmagic code 128 = string;
36 option cmdline code 129 = string;
37 option menudflts code 160 = string;
38 option menuline1 code 192 = string;
39 option menuline2 code 193 = string;
40 option menuline3 code 194 = string;
41 option menuline4 code 195 = string;
42 option menuline5 code 196 = string;
43 option menuline6 code 197 = string;
44 option menuline7 code 198 = string;
45 option menuline8 code 199 = string;
46 option menuline9 code 200 = string;
47 option menuline10 code 201 = string;
48 option menuline11 code 202 = string;
49 option menuline12 code 203 = string;
50 option menuline13 code 204 = string;
51 option menuline14 code 205 = string;
52 option menuline15 code 206 = string;
53 option menuline16 code 207 = string;
54 option motdline1 code 184 = string;
55
56 class "Etherboot" {
57     match if substring (option vendor-class-identifier, 0, 9) = "Etherboot";
58
59         option ebootmagic  = E4:45:74:68:00:00;
60
61 # We don't use this here, because different menu items require
62 # different cmdlines.  In our ".nbi" files we specify the cmdlines
63
64 #        option cmdline  = "ks initrd=initrd.img lang= devfs=nomount";
65
66         option motdline1  = "Welcome to Guru Labs classroom";
67
68         option menudflts  = "timeout=30:default=192";
69
70         option menuline1  = "Boot from Hard Drive (Default):::/dev/hda:::";
71         option menuline2  = "Boot from Floppy:::/dev/fd0:::";
72         option menuline3  = "Boot from CDROM::::::";
73         option menuline4  = "Kickstart install Red Hat 7.1:::rh71-ks-etherboot.nbi:::";
74         option menuline5  = "Red Hat 7.1 network rescue:::rh71-rescue-etherboot.nbi:::";
75         option menuline6  = "Boot Win98SE startup floppy:::win98se-startupdisk.nbi:::";
76         option menuline7  = "Jumpstart install Solaris 8 (not working yet):::/dev/hda:::";
77         option menuline8  = "Install Windows 98 SE (not working yet):::/dev/hda:::";
78         option menuline9  = "Install Windows 2000 (not working yet):::/dev/hda:::";
79         option menuline10  = "Install FreeBSD 4.3 (not working yet):::/dev/hda:::";
80         option menuline11  = "Install OpenBSD 2.9 (not working yet):::/dev/hda:::";
81
82         # This is a hidden menu item, it should be password protected too
83         option menuline12  = "^[[3D^[[K^[[1A^M:::/dev/hda:::";
84
85 # We are using the menu, with different bootfiles.  So we don't use this.
86 # If you weren't using a menu, you could use this override the global
87 # default "filename" setting.
88
89 #        filename "rh71-ks-etherboot";
90
91 # Use the following if etherboot compiled with -DREQUIRE_VCI_ETHERBOOT
92
93         option vendor-encapsulated-options 3c:09:45:74:68:65:72:62:6f:6f:74:ff;
94
95 }
96
97 subnet 10.100.0.0 netmask 255.255.255.0 {
98         authoritative;
99         option routers                  10.100.0.254;
100         option subnet-mask              255.255.255.0;
101         option domain-name              "example.com";
102         option domain-name-servers      10.100.0.254;
103         option time-offset              -7; # US/Mountain
104         option ntp-servers              10.100.0.254;
105         range dynamic-bootp 10.100.0.175 10.100.0.250;
106         default-lease-time 21600;
107         max-lease-time 43200;
108         option netbios-name-servers     10.100.0.254;
109         option netbios-node-type 2;
110         use-host-decl-names on;
111         next-server server1.example.com;
112
113 }
114
115 host station1 {
116         hardware ethernet 00:01:03:de:57:e2;
117         fixed-address 10.100.0.1;
118 }
119 host station2 {
120         hardware ethernet 00:01:03:de:57:e7;
121         fixed-address 10.100.0.2;
122 }
123 host station3 {
124         hardware ethernet 00:01:03:de:57:b4;
125         fixed-address 10.100.0.3;
126 }
127 host station4 {
128         hardware ethernet 00:01:03:de:57:38;
129         fixed-address 10.100.0.4;
130 }
131 host station5 {
132         hardware ethernet 00:01:03:de:58:3d;
133         fixed-address 10.100.0.5;
134 }
135
136 #
137 # Etc, etc
138 #
139
140 ############## End ISC DHCP v3 dhcpd.conf #############