]>
Commit | Line | Data |
---|---|---|
da411127 | 1 | Internet Software Consortium DHCP Distribution |
490eb5e7 TL |
2 | Version 3, Beta 2, Patchlevel 4 |
3 | September 14, 2000 | |
4650dc25 TL |
4 | |
5 | README FILE | |
6 | ||
7 | You should read this file carefully before trying to install or use | |
8 | the ISC DHCP Distribution. | |
9 | ||
10 | TABLE OF CONTENTS | |
11 | ||
12 | 1 WHERE TO FIND DOCUMENTATION | |
13 | 2 RELEASE STATUS | |
14 | 3 BUILDING THE DHCP DISTRIBUTION | |
986bf898 TL |
15 | 3.1 UNPACKING IT |
16 | 3.2 CONFIGURING IT | |
17 | 3.2.1 DYNAMIC DNS UPDATES | |
18 | 3.3 BUILDING IT | |
4650dc25 TL |
19 | 4 INSTALLING THE DHCP DISTRIBUTION |
20 | 5 USING THE DHCP DISTRIBUTION | |
da411127 TL |
21 | 5.1 FIREWALL RULES |
22 | 5.2 LINUX | |
23 | 5.2.1 IF_TR.H NOT FOUND | |
24 | 5.2.2 SO_ATTACH_FILTER UNDECLARED | |
25 | 5.2.3 PROTOCOL NOT CONFIGURED | |
26 | 5.2.4 BROADCAST | |
27 | 5.2.6 IP BOOTP AGENT | |
28 | 5.2.7 MULTIPLE INTERFACES | |
29 | 5.3 SCO | |
30 | 5.4 HP-UX | |
31 | 5.5 ULTRIX | |
32 | 5.6 FreeBSD | |
33 | 5.7 NeXTSTEP | |
34 | 5.8 SOLARIS | |
4650dc25 | 35 | 6 SUPPORT |
986bf898 | 36 | 6.1 HOW TO REPORT BUGS |
4650dc25 TL |
37 | |
38 | WHERE TO FIND DOCUMENTATION | |
2d1b06e0 TL |
39 | |
40 | Documentation for this software includes this README file, the | |
41 | RELNOTES file, and the manual pages, which are in the server, common, | |
da411127 TL |
42 | client and relay subdirectories. The README file (this file) includes |
43 | late-breaking operational and system-specific information that you | |
44 | should read even if you don't want to read the manual pages, and that | |
45 | you should *certainly* read if you run into trouble. Internet | |
46 | standards relating to the DHCP protocol are stored in the doc | |
47 | subdirectory. You will have the best luck reading the manual pages if | |
48 | you build this software and then install it, although you can read | |
49 | them directly out of the distribution if you need to. | |
2d1b06e0 TL |
50 | |
51 | DHCP server documentation is in the dhcpd man page. Information about | |
52 | the DHCP server lease database is in the dhcpd.leases man page. | |
53 | Server configuration documentation is in the dhcpd.conf man page as | |
54 | well as the dhcp-options man page. A sample DHCP server | |
4650dc25 TL |
55 | configuration is in the file server/dhcpd.conf. The source for the |
56 | dhcpd, dhcpd.leases and dhcpd.conf man pages is in the server/ sub- | |
57 | directory in the distribution. The source for the dhcp-options.5 | |
58 | man page is in the common/ subdirectory. | |
2d1b06e0 TL |
59 | |
60 | DHCP Client documentation is in the dhclient man page. DHCP client | |
61 | configuration documentation is in the dhclient.conf man page and the | |
62 | dhcp-options man page. The DHCP client configuration script is | |
63 | documented in the dhclient-script man page. The format of the DHCP | |
64 | client lease database is documented in the dhclient.leases man page. | |
4650dc25 TL |
65 | The source for all these man pages is in the client/ subdirectory in |
66 | the distribution. In addition, the dhcp-options man page should be | |
67 | referred to for information about DHCP options. | |
2d1b06e0 | 68 | |
4650dc25 TL |
69 | DHCP relay agent documentation is in the dhcrelay man page, the source |
70 | for which is distributed in the relay/ subdirectory. | |
2d1b06e0 TL |
71 | |
72 | To read installed manual pages, use the man command. Type "man page" | |
4650dc25 TL |
73 | where page is the name of the manual page. This will only work if |
74 | you have installed the ISC DHCP distribution using the ``make install'' | |
75 | command (described later). | |
2d1b06e0 TL |
76 | |
77 | If you want to read manual pages that aren't installed, you can type | |
78 | ``nroff -man page |more'' where page is the filename of the | |
79 | unformatted manual page. The filename of an unformatted manual page | |
80 | is the name of the manual page, followed by '.', followed by some | |
81 | number - 5 for documentation about files, and 8 for documentation | |
4650dc25 TL |
82 | about programs. For example, to read the dhcp-options man page, |
83 | you would type ``nroff -man common/dhcp-options.5 |more'', assuming | |
84 | your current working directory is the top level directory of the ISC | |
85 | DHCP Distribution. | |
2d1b06e0 TL |
86 | |
87 | If you do not have the nroff command, you can type ``more catpage'' | |
88 | where catpage is the filename of the catted man page. Catted man | |
89 | pages names are the name of the manual page followed by ".cat" | |
90 | followed by 5 or 8, as with unformatted manual pages. | |
91 | ||
92 | Please note that until you install the manual pages, the pathnames of | |
93 | files to which they refer will not be correct for your operating | |
94 | system. | |
95 | ||
96 | RELEASE STATUS | |
97 | ||
da411127 TL |
98 | This is the second beta release of version 3.0 of the ISC DHCP |
99 | Distribution. Development of this release is approaching the point at | |
100 | which it will be frozen, and no significant new features will be | |
4650dc25 TL |
101 | added. |
102 | ||
da411127 TL |
103 | In this release, the server and relay agent are currently fully |
104 | functional on NetBSD, Linux systems with kernel version 2.2 or later, | |
105 | FreeBSD, OpenBSD, BSD/OS, Digital Tru64 Unix and Solaris. The | |
106 | software will also run on HP-UX, but only supports a single network | |
107 | interface. Ports also exist for QNX, SCO, NeXTStep, and MacOS X, but | |
108 | are not in wide use, with all that implies. We are not aware of an | |
109 | easy way to get this software running on HP-UX. | |
26833160 | 110 | |
cd977bed | 111 | The DHCP client currently only knows how to configure the network on |
da411127 TL |
112 | NetBSD, FreeBSD, OpenBSD, BSD/os, Linux, Solaris and NextStep. The |
113 | client depends on a system-dependent shell script to do network | |
cd977bed TL |
114 | configuration - support for other operating systems is simply a matter |
115 | of porting this shell script to the new platform. | |
26833160 | 116 | |
da411127 TL |
117 | If you are running the DHCP distribution on a machine which is a |
118 | firewall, or if there is a firewall between your DHCP server(s) and | |
119 | DHCP clients, please read the section on firewalls which appears later | |
120 | in this document. | |
121 | ||
26833160 | 122 | If you wish to run the DHCP Distribution on Linux, please see the |
3dcbf508 | 123 | Linux-specific notes later in this document. If you wish to run on an |
26833160 TL |
124 | SCO release, please see the SCO-specific notes later in this document. |
125 | You particularly need to read these notes if you intend to support | |
126 | Windows 95 clients. If you are running a version of FreeBSD prior to | |
127 | 2.2, please read the note on FreeBSD. If you are running HP-UX or | |
da411127 TL |
128 | Ultrix, please read the notes for those operating systems below. If |
129 | you are running NeXTSTEP, please see the notes on NeXTSTEP below. | |
26833160 | 130 | |
aa857ee0 TL |
131 | If you start dhcpd and get a message, "no free bpf", that means you |
132 | need to configure the Berkeley Packet Filter into your operating | |
133 | system kernel. On NetBSD, FreeBSD and BSD/os, type ``man bpf'' for | |
134 | information. On Digital Unix, type ``man pfilt''. | |
135 | ||
a8f3586f | 136 | |
26833160 TL |
137 | BUILDING THE DHCP DISTRIBUTION |
138 | ||
986bf898 TL |
139 | UNPACKING IT |
140 | ||
1409f290 TL |
141 | To build the DHCP Distribution, unpack the compressed tar file using |
142 | the tar utility and the gzip command - type something like: | |
143 | ||
490eb5e7 | 144 | zcat dhcp-3.0b2pl3.tar.gz |tar xvf - |
1409f290 | 145 | |
70e3642f TL |
146 | On BSD/OS, you have to type gzcat, not zcat, and you may run into |
147 | similar problems on other operating systems. | |
148 | ||
986bf898 TL |
149 | CONFIGURING IT |
150 | ||
490eb5e7 | 151 | Now, cd to the dhcp-3.0b2pl3 subdirectory that you've just |
ce53cc84 | 152 | created and configure the source tree by typing: |
1409f290 TL |
153 | |
154 | ./configure | |
155 | ||
156 | If the configure utility can figure out what sort of system you're | |
157 | running on, it will create a custom Makefile for you for that | |
158 | system; otherwise, it will complain. If it can't figure out what | |
159 | system you are using, that system is not supported - you are on | |
160 | your own. | |
161 | ||
986bf898 TL |
162 | DYNAMIC DNS UPDATES |
163 | ||
da411127 TL |
164 | A fully-featured implementation of dynamic DNS updates is included in |
165 | this release. There are no build dependencies with any BIND version | |
166 | - this version can and should just use the resolver in your C library. | |
986bf898 | 167 | |
6b3d9544 TL |
168 | There is documentation for the DDNS support in the dhcpd.conf manual |
169 | page - see the beginning of this document for information on finding | |
170 | manual pages. | |
986bf898 TL |
171 | |
172 | BUILDING IT | |
173 | ||
1409f290 TL |
174 | Once you've run configure, just type ``make'', and after a while |
175 | you should have a dhcp server. If you get compile errors on one | |
176 | of the supported systems mentioned earlier, please let us know. | |
177 | If you get warnings, it's not likely to be a problem - the DHCP | |
178 | server compiles completely warning-free on as many architectures | |
179 | as we can manage, but there are a few for which this is difficult. | |
180 | If you get errors on a system not mentioned above, you will need | |
181 | to do some programming or debugging on your own to get the DHCP | |
182 | Distribution working. | |
26833160 | 183 | |
4650dc25 TL |
184 | INSTALLING THE DHCP DISTRIBUTION |
185 | ||
68c039d3 TL |
186 | Once you have successfully gotten the DHCP Distribution to build, you |
187 | can install it by typing ``make install''. If you already have an old | |
188 | version of the DHCP Distribution installed, you may want to save it | |
189 | before typing ``make install''. | |
3dcbf508 | 190 | |
4650dc25 TL |
191 | USING THE DHCP DISTRIBUTION |
192 | ||
da411127 TL |
193 | FIREWALL RULES |
194 | ||
195 | If you are running the DHCP server or client on a computer that's also | |
196 | acting as a firewall, you must be sure to allow DHCP packets through | |
197 | the firewall. In particular, your firewall rules _must_ allow packets | |
198 | from IP address 0.0.0.0 to IP address 255.255.255.255 from UDP port 68 | |
199 | to UDP port 67 through. They must also allow packets from your local | |
200 | firewall's IP address and UDP port 67 through to any address your DHCP | |
201 | server might serve on UDP port 68. Finally, packets from relay agents | |
202 | on port 67 to the DHCP server on port 67, and vice versa, must be | |
203 | permitted. | |
204 | ||
205 | We have noticed that on some systems where we are using a packet | |
206 | filter, if you set up a firewall that blocks UDP port 67 and 68 | |
207 | entirely, packets sent through the packet filter will not be blocked. | |
208 | However, unicast packets will be blocked. This can result in strange | |
209 | behaviour, particularly on DHCP clients, where the initial packet | |
210 | exchange is broadcast, but renewals are unicast - the client will | |
211 | appear to be unable to renew until it starts broadcasting its | |
212 | renewals, and then suddenly it'll work. The fix is to fix the | |
213 | firewall rules as described above. | |
214 | ||
215 | PARTIAL SERVERS | |
216 | ||
217 | If you have a server that is connected to two networks, and you only | |
218 | want to provide DHCP service on one of those networks (e.g., you are | |
219 | using a cable modem and have set up a NAT router), if you don't write | |
220 | any subnet declaration for the network you aren't supporting, the DHCP | |
221 | server will ignore input on that network interface if it can. If it | |
222 | can't, it will refuse to run - some operating systems do not have the | |
223 | capability of supporting DHCP on machines with more than one | |
224 | interface, and ironically this is the case even if you don't want to | |
225 | provide DHCP service on one of those interfaces. | |
226 | ||
26833160 TL |
227 | LINUX |
228 | ||
6da19769 TL |
229 | There are three big LINUX issues: the all-ones broadcast address, |
230 | Linux 2.1 ip_bootp_agent enabling, and operations with more than one | |
3dcbf508 TL |
231 | network interface. There are also two potential compilation/runtime |
232 | problems for Linux 2.1/2.2: the "SO_ATTACH_FILTER undeclared" problem | |
233 | and the "protocol not configured" problem. | |
234 | ||
986bf898 TL |
235 | LINUX: IF_TR.H NOT FOUND |
236 | ||
237 | When you compile the distribution on Linux, you may get an error | |
238 | message indicating that the include file if_tr.h could not be found. | |
239 | If this happens, go into includes/cf/linux.h and delete the line that | |
240 | defined HAVE_TR_SUPPORT, or look into installing a new version of libc | |
241 | that includes the if_tr.h file. We will be working on removing this | |
242 | problem in the future, but for now, if you run into it, this should be | |
243 | a viable workaround. | |
244 | ||
3dcbf508 TL |
245 | LINUX: SO_ATTACH_FILTER UNDECLARED |
246 | ||
247 | In addition, there is a minor issue that we will mention here because | |
248 | this release is so close on the heels of the Linux 2.2 release: there | |
249 | is a symlink in /usr/include that points at the linux asm headers. It | |
250 | appears to be not uncommon that this link won't be updated correctly, | |
251 | in which case you'll get the following error when you try to build: | |
252 | ||
253 | lpf.c: In function `if_register_receive': | |
254 | lpf.c:152: `SO_ATTACH_FILTER' undeclared (first use this function) | |
255 | lpf.c:152: (Each undeclared identifier is reported only once | |
256 | lpf.c:152: for each function it appears in.) | |
257 | ||
258 | The line numbers may be different, of course. If you see this | |
259 | header, your linux asm header link is probably bad, and you should | |
260 | make sure it's pointing to correct linux source directory. | |
261 | ||
262 | LINUX: PROTOCOL NOT CONFIGURED | |
263 | ||
264 | One additional Linux 2.1/2.2 issue: if you get the following message, | |
4650dc25 TL |
265 | it's because your kernel doesn't have the linux packetfilter or raw |
266 | packet socket configured: | |
3dcbf508 | 267 | |
c87fcde1 TL |
268 | Make sure CONFIG_PACKET (Packet socket) and CONFIG_FILTER (Socket |
269 | Filtering) are enabled in your kernel configuration | |
270 | ||
271 | If this happens, you need to configure your Linux kernel to support | |
272 | Socket Filtering and the Packet socket. You can do this by typing | |
273 | ``make config'', ``make menuconfig'' or ``make xconfig'', and then | |
274 | enabling the Packet socket and Socket Filtering options that you'll | |
275 | see displayed on the menu or in the questionnaire. You can also edit | |
276 | your linux kernel .config file directly: set CONFIG_FILTER=y and | |
277 | CONFIG_PACKET=y. If you do this, make sure you run ``make oldconfig'' | |
278 | afterwards, so that the changes you've made are propogated to the | |
279 | kernel header files. After you've reconfigured, you need to type | |
280 | ``make'' to build a new Linux kernel, and then install it in the | |
281 | appropriate place (probably /linux). Make sure to save a copy of your | |
282 | old /linux. | |
283 | ||
284 | If the preceding paragraph made no sense to you, ask your Linux | |
285 | vendor/guru for help - please don't ask us. | |
4650dc25 TL |
286 | |
287 | If you set CONFIG_PACKET=m or CONFIG_FILTER=m, then you must tell the | |
288 | kernel module loader to load the appropriate modules. If this doesn't | |
289 | make sense to you, don't use CONFIG_whatever=m - use CONFIG_whatever=y. | |
290 | Don't ask for help with this on the DHCP mailing list - it's a Linux | |
c87fcde1 TL |
291 | kernel issue. This is probably not a problem with the most recent |
292 | Linux 2.2.x kernels. | |
2a1ebeee | 293 | |
3dcbf508 | 294 | LINUX: BROADCAST |
2a1ebeee | 295 | |
da411127 TL |
296 | If you are running a recent version of Linux, this won't be a problem, |
297 | but on older versions of Linux (kernel versions prior to 2.2), there | |
298 | is a potential problem with the broadcast address being sent | |
299 | incorrectly. | |
300 | ||
26833160 TL |
301 | In order for dhcpd to work correctly with picky DHCP clients (e.g., |
302 | Windows 95), it must be able to send packets with an IP destination | |
4650dc25 TL |
303 | address of 255.255.255.255. Unfortunately, Linux changes an IP |
304 | destination of 255.255.255.255 into the local subnet broadcast address | |
da411127 TL |
305 | (here, that's 192.5.5.223). |
306 | ||
307 | This isn't generally a problem on Linux 2.2 and later kernels, since | |
308 | we completely bypass the Linux IP stack, but on old versions of Linux | |
309 | 2.1 and all versions of Linux prior to 2.1, it is a problem - pickier | |
310 | DHCP clients connected to the same network as the ISC DHCP server or | |
311 | ISC relay agent will not see messages from the DHCP server. It *is* | |
312 | possible to run into trouble with this on Linux 2.2 and later if you | |
313 | are running a verson of the DHCP server that was compiled on a Linux | |
314 | 2.0 system, though. | |
7751e60d | 315 | |
26833160 TL |
316 | It is possible to work around this problem on some versions of Linux |
317 | by creating a host route from your network interface address to | |
318 | 255.255.255.255. The command you need to use to do this on Linux | |
319 | varies from version to version. The easiest version is: | |
7751e60d | 320 | |
26833160 | 321 | route add -host 255.255.255.255 dev eth0 |
7751e60d | 322 | |
26833160 TL |
323 | On some older Linux systems, you will get an error if you try to do |
324 | this. On those systems, try adding the following entry to your | |
325 | /etc/hosts file: | |
7751e60d | 326 | |
26833160 | 327 | 255.255.255.255 all-ones |
7751e60d | 328 | |
26833160 | 329 | Then, try: |
7751e60d | 330 | |
26833160 | 331 | route add -host all-ones dev eth0 |
7751e60d | 332 | |
26833160 | 333 | Another route that has worked for some users is: |
7751e60d | 334 | |
26833160 | 335 | route add -net 255.255.255.0 dev eth0 |
471fe68c | 336 | |
26833160 TL |
337 | If you are not using eth0 as your network interface, you should |
338 | specify the network interface you *are* using in your route command. | |
a8b53b42 | 339 | |
3dcbf508 | 340 | LINUX: IP BOOTP AGENT |
6da19769 TL |
341 | |
342 | Some versions of the Linux 2.1 kernel apparently prevent dhcpd from | |
343 | working unless you enable it by doing the following: | |
344 | ||
345 | echo 1 >/proc/sys/net/ipv4/ip_bootp_agent | |
346 | ||
347 | ||
3dcbf508 | 348 | LINUX: MULTIPLE INTERFACES |
2a1ebeee | 349 | |
4650dc25 TL |
350 | Very old versions of the Linux kernel do not provide a networking API |
351 | that allows dhcpd to operate correctly if the system has more than one | |
352 | broadcast network interface. However, Linux 2.0 kernels with version | |
353 | numbers greater than or equal to 2.0.31 add an API feature: the | |
354 | SO_BINDTODEVICE socket option. If SO_BINDTODEVICE is present, it is | |
355 | possible for dhcpd to operate on Linux with more than one network | |
cd977bed | 356 | interface. In order to take advantage of this, you must be running a |
3dcbf508 TL |
357 | 2.0.31 or greater kernel, and you must have 2.0.31 or later system |
358 | headers installed *before* you build the DHCP Distribution. | |
2a1ebeee | 359 | |
cd977bed TL |
360 | We have heard reports that you must still add routes to 255.255.255.255 |
361 | in order for the all-ones broadcast to work, even on 2.0.31 kernels. | |
362 | In fact, you now need to add a route for each interface. Hopefully | |
363 | the Linux kernel gurus will get this straight eventually. | |
364 | ||
4650dc25 TL |
365 | Linux 2.1 and later kernels do not use SO_BINDTODEVICE or require the |
366 | broadcast address hack, but do support multiple interfaces, using the | |
367 | Linux Packet Filter. | |
368 | ||
26833160 | 369 | SCO |
a8b53b42 | 370 | |
26833160 TL |
371 | SCO has the same problem as Linux (described earlier). The thing is, |
372 | SCO *really* doesn't want to let you add a host route to the all-ones | |
373 | broadcast address. One technique that has been successful on some | |
374 | versions of SCO is the very bizarre command: | |
a8b53b42 | 375 | |
26833160 | 376 | ifconfig net0 alias 10.1.1.1 netmask 8.0.0.0 |
a8b53b42 | 377 | |
26833160 TL |
378 | Apparently this works because of an interaction between SCO's support |
379 | for network classes and the weird netmask. The 10.* network is just a | |
380 | dummy that can generally be assumed to be safe. Don't ask why this | |
381 | works. Just try it. If it works for you, great. If not, SCO is | |
382 | supposedly adding hooks to support real DHCP service in a future | |
383 | release - I have this on good authority from the people at SCO who do | |
384 | *their* DHCP server and client. | |
a8b53b42 | 385 | |
26833160 TL |
386 | HP-UX |
387 | ||
388 | HP-UX has the same problem with the all-ones broadcast address that | |
aa857ee0 TL |
389 | SCO and Linux have. One user reported that adding the following to |
390 | /etc/rc.config.d/netconf helped (you may have to modify this to suit | |
391 | your local configuration): | |
392 | ||
393 | INTERFACE_NAME[0]=lan0 | |
394 | IP_ADDRESS[0]=1.1.1.1 | |
395 | SUBNET_MASK[0]=255.255.255.0 | |
396 | BROADCAST_ADDRESS[0]="255.255.255.255" | |
397 | LANCONFIG_ARGS[0]="ether" | |
398 | DHCP_ENABLE[0]=0 | |
26833160 TL |
399 | |
400 | ULTRIX | |
401 | ||
402 | Now that we have Ultrix packet filter support, the DHCP Distribution | |
403 | on Ultrix should be pretty trouble-free. However, one thing you do | |
404 | need to be aware of is that it now requires that the pfilt device be | |
405 | configured into your kernel and present in /dev. If you type ``man | |
406 | packetfilter'', you will get some information on how to configure your | |
407 | kernel for the packet filter (if it isn't already) and how to make an | |
408 | entry for it in /dev. | |
409 | ||
410 | FreeBSD | |
411 | ||
412 | Versions of FreeBSD prior to 2.2 have a bug in BPF support in that the | |
413 | ethernet driver swaps the ethertype field in the ethernet header | |
414 | downstream from BPF, which corrupts the output packet. If you are | |
415 | running a version of FreeBSD prior to 2.2, and you find that dhcpd | |
416 | can't communicate with its clients, you should #define BROKEN_FREEBSD_BPF | |
417 | in site.h and recompile. | |
a8b53b42 | 418 | |
a8f3586f TL |
419 | NeXTSTEP |
420 | ||
421 | The NeXTSTEP support uses the NeXTSTEP Berkeley Packet Filter | |
cd977bed TL |
422 | extension, which is not included in the base NextStep system. You |
423 | must install this extension in order to get dhcpd or dhclient to work. | |
a8f3586f | 424 | |
3dcbf508 TL |
425 | SOLARIS |
426 | ||
ce53cc84 TL |
427 | One problem which has been observed and is not fixed in this |
428 | patchlevel has to do with using DLPI on Solaris machines. The symptom | |
429 | of this problem is that the DHCP server never receives any requests. | |
35eb3023 TL |
430 | This has been observed with Solaris 2.6 and Solaris 7 on Intel x86 |
431 | systems, although it may occur with other systems as well. If you | |
432 | encounter this symptom, and you are running the DHCP server on a | |
433 | machine with a single broadcast network interface, you may wish to | |
434 | edit the includes/site.h file and uncomment the #define USE_SOCKETS | |
435 | line. Then type ``make clean; make''. | |
ce53cc84 TL |
436 | |
437 | The DHCP client on Solaris will only work with DLPI. If you run it | |
438 | and it just keeps saying it's sending DHCPREQUEST packets, but never | |
439 | gets a response, you may be having DLPI trouble as described above. | |
35eb3023 TL |
440 | If so, we have no solution to offer at this time. Also, because |
441 | Solaris requires you to "plumb" an interface before it can be detected | |
442 | by the DHCP client, you must either specify the name(s) of the | |
443 | interface(s) you want to configure on the command line, or must plumb | |
444 | the interfaces prior to invoking the DHCP client. This can be done | |
445 | with ``ifconfig iface plumb'', where iface is the name of the | |
446 | interface (e.g., ``ifconfig hme0 plumb''). | |
ce53cc84 TL |
447 | |
448 | It should be noted that Solaris versions from 2.6 onward include a | |
449 | DHCP client that you can run with ``/sbin/ifconfig iface dhcp start'' | |
450 | rather than using the ISC DHCP client. The feature set of the Solaris | |
451 | client is different (not necessarily better or worse) than that of the | |
452 | ISC client, but in most cases it will be a lot easier for you to just | |
453 | use that. Please do not ask for help in using the Solaris DHCP client | |
454 | on Internet Software Consortium mailing lists - that's why you're | |
455 | paying Sun the big bucks. If you're having a problem with the | |
456 | Solaris client interoperating with the ISC dhcp server, that's another | |
457 | matter, but please check with Sun first. | |
3dcbf508 | 458 | |
f76ebbfd TL |
459 | SUPPORT |
460 | ||
cd977bed | 461 | The Internet Software Consortium DHCP server is not a commercial |
da411127 TL |
462 | product, and is not supported by the ISC. However, it has attracted a |
463 | fairly sizable following on the Internet, which means that there are a | |
464 | lot of knowledgable users who may be able to help you if you get | |
465 | stuck. These people generally read the dhcp-server@isc.org mailing | |
466 | list. | |
26833160 TL |
467 | |
468 | If you are going to use dhcpd, you should probably subscribe to the | |
469 | dhcp-server and dhcp-announce mailing lists. If you will be using | |
cd977bed | 470 | dhclient, you should subscribe to the dhcp-client mailing list. |
0cd69353 TL |
471 | |
472 | If you need help, you should ask on the dhcp-server or dhcp-client | |
da411127 TL |
473 | mailing list - whichever is appropriate to your application. Support |
474 | requests for the ISC DHCP client should go to dhcp-client@isc.org. | |
475 | Support requests for the DHCP server should go to dhcp-server@isc.org. | |
476 | If you are having trouble with a combination of the client and server, | |
477 | send the request to dhcp-server@isc.org. Please do not cross-post to | |
478 | both lists under any circumstances. | |
479 | ||
e021ce5c TL |
480 | WHERE TO REPORT BUGS: If you want the act of sending in a bug report |
481 | to result in you getting help in the form of a fixed piece of | |
482 | software, you are asking for help. Your bug report is helpful to us, | |
483 | but fundamentally you are making a support request, so please use the | |
484 | addresses described in the previous paragraphs. If your bug report | |
485 | includes a patch, or if you don't care about getting a response to it, | |
486 | you can send it to dhcp-bugs@isc.org without subscribing. | |
487 | ||
da411127 TL |
488 | PLEASE DO NOT REPORT BUGS IN OLD SOFTWARE RELEASES! Fetch the latest |
489 | release and see if the bug is still in that version of the software, | |
490 | and if it's not, _then_ report it. It's okay to report bugs in the | |
491 | latest patchlevel of a major version that's not the most recent major | |
492 | version, though - for example, if you're running 2.0, you don't have | |
493 | to upgrade to 3.0 before you can report bugs. | |
494 | ||
495 | PLEASE DO NOT REPORT BUGS IF YOU ARE NOT RUNNING A VERSION OF THE ISC | |
496 | DHCP DISTRIBUTION THAT YOU DIDN'T GET FROM THE ISC! Free operating | |
497 | system distributions are notorious for including outdated versions of | |
498 | software, and also versions of software that were not compiled on your | |
499 | particular version of the operating system. These versions | |
500 | frequently do not work. Getting a source distribution from the ISC | |
501 | and installing it frequently *does* work. Please try this *before* | |
502 | asking for help. | |
0cd69353 | 503 | |
e021ce5c TL |
504 | PLEASE READ THIS README FILE CAREFULLY BEFORE REPORTING BUGS, |
505 | PARTICULARLY THE SECTION BELOW ON WHAT TO INCLUDE IN A BUG REPORT OR | |
506 | HELP REQUEST. | |
507 | ||
508 | PLEASE DO NOT SEND REQUESTS FOR SUPPORT DIRECTLY TO THE ENGINEERS WHO | |
509 | WORK ON THE ISC DHCP DISTRIBUTION! *PARTICULARLY*, DO NOT SEND MAIL | |
510 | TO THE ENGINEERS BECAUSE YOU AREN'T SURE TO WHOM YOU SHOULD SEND MAIL | |
511 | - if you aren't sure, *ask* on the dhcp-server@isc.org or | |
512 | dhcp-client@isc.org mailing list. | |
513 | ||
514 | The number of people using the DHCP Distribution is sufficiently large | |
515 | that if we take interrupts every time any one of those people runs | |
516 | into trouble, we will never get any more coding done. If you send a | |
517 | support request directly to any ISC or Nominum engineer, we will | |
518 | forward it to the mailing list, or possibly ignore it, depending on | |
519 | how much stress we are under at the time. | |
520 | ||
521 | Please do not Cc: us on mail you send to these lists - we read both | |
522 | mailing lists, so this just means we get two copies! | |
523 | ||
524 | If your question can only be answered by one of the engineers, send it | |
525 | to the appropriate public mailing list anyway - we will answer it | |
526 | there. When we have time. | |
527 | ||
528 | Please do not think "Oh, I don't want to bother the whole mailing list | |
529 | with this question." If you are too embarrassed to ask publically, | |
530 | get a support contract. | |
531 | ||
532 | If you are concerned about bothering everybody on the list, that's | |
533 | great, but that's what the list is there for. When you send mail to | |
534 | one of the engineers, you are taking resources away from everybody on | |
535 | the mailing list *anyway* - they just don't know it. | |
536 | ||
537 | We're not writing this because we don't respect you - we really do | |
538 | want to help you, and we appreciate your bug reports and comments. | |
539 | But please use the mechanisms we have in place to provide you with | |
540 | help, because otherwise you are almost certainly depriving someone | |
541 | else of our help. | |
542 | ||
543 | PLEASE DO NOT CALL US ON THE PHONE FOR HELP! Answering the phone | |
544 | takes a lot more of our time and attention than answering email. If | |
545 | you do call us on the phone, we will tell you to send email to the | |
546 | mailing list or buy a support contract, so please don't waste your | |
547 | time or ours. If you have a support contract, please use the support | |
548 | channel mentioned in the support contract - otherwise you probably | |
549 | won't get timely support unless you happen to ask an interesting | |
550 | question and we happen to have some time to kill, because we can't | |
551 | tell you're a support customer if you send mail to the public mailing | |
552 | lists. | |
0cd69353 | 553 | |
e021ce5c | 554 | HOW TO REPORT BUGS OR REQUEST HELP |
4650dc25 | 555 | |
da411127 TL |
556 | When you report bugs or ask for help, please provide us complete |
557 | information. A list of information we need follows. Please read it | |
558 | carefully, and put all the information you can into your initial bug | |
559 | report, so that we don't have to ask you any questions in order to | |
560 | figure out your problem. If you need handholding support, please | |
561 | consider contacting a commercial provider of the ISC DHCP | |
562 | Distribution. | |
0cd69353 TL |
563 | |
564 | - The specific operating system name and version of the | |
565 | machine on which the DHCP server or client is running. | |
566 | - The specific operating system name and version of the | |
567 | machine on which the client is running, if you are having | |
568 | trouble getting a client working with the server. | |
569 | - If you're running Linux, the version number we care about is | |
570 | the kernel version and maybe the library version, not the | |
571 | distribution version - e.g., while we don't mind knowing | |
572 | that you're running Redhat version mumble.foo, we must know | |
573 | what kernel version you're running, and it helps if you can | |
574 | tell us what version of the C library you're running, | |
575 | although if you don't know that off the top of your head it | |
576 | may be hard for you to figure it out, so don't go crazy | |
577 | trying. | |
578 | - The specific version of the DHCP distribution you're | |
2aa36519 | 579 | running, for example "2.0b1pl19", not "2.0". |
0cd69353 TL |
580 | - Please explain the problem carefully, thinking through what |
581 | you're saying to ensure that you don't assume we know | |
582 | something about your situation that we don't know. | |
583 | - Include your dhcpd.conf and dhcpd.leases file if they're not | |
584 | huge (if they are huge, we may need them anyway, but don't | |
da411127 TL |
585 | send them until you're asked). Huge means more than 100 |
586 | kilobytes each. | |
0cd69353 TL |
587 | - Include a log of your server or client running until it |
588 | encounters the problem - for example, if you are having | |
589 | trouble getting some client to get an address, restart the | |
590 | server with the -d flag and then restart the client, and | |
591 | send us what the server prints. Likewise, with the client, | |
592 | include the output of the client as it fails to get an | |
593 | address or otherwise does the wrong thing. Do not leave | |
594 | out parts of the output that you think aren't interesting. | |
595 | - If the client or server is dumping core, please run the | |
596 | debugger and get a stack trace, and include that in your | |
597 | bug report. For example, if your debugger is gdb, do the | |
598 | following: | |
599 | ||
600 | gdb dhcpd dhcpd.core | |
601 | (gdb) where | |
602 | [...] | |
603 | (gdb) quit | |
604 | ||
605 | This assumes that it's the dhcp server you're debugging, and | |
606 | that the core file is in dhcpd.core. | |
607 | ||
cd977bed TL |
608 | PLEASE DO NOT send queries about non-isc clients to the dhcp-client |
609 | mailing list. If you're asking about them on an ISC mailing list, | |
610 | it's probably because you're using the ISC DHCP server, so ask there. | |
0cd69353 TL |
611 | If you are having problems with a client whose executable is called |
612 | dhcpcd, this is _not_ the ISC DHCP client, and we probably can't help | |
613 | you with it. | |
cd977bed | 614 | |
da411127 TL |
615 | Please see http://www.isc.org/services/public/lists/dhcp-lists.html |
616 | for details on how to subscribe to the ISC DHCP mailing lists. | |
617 | ||
da411127 | 618 |