]> git.ipfire.org Git - thirdparty/dhcp.git/blame - server/dhcpd.8
- RFC3942 compliance, site-local option spaces start at 224 now, not 128.
[thirdparty/dhcp.git] / server / dhcpd.8
CommitLineData
08fe7cdb
TL
1.\" dhcpd.8
2.\"
98311e4b
DH
3.\" Copyright (c) 2004 by Internet Systems Consortium, Inc. ("ISC")
4.\" Copyright (c) 1996-2003 by Internet Software Consortium
08fe7cdb 5.\"
98311e4b
DH
6.\" Permission to use, copy, modify, and distribute this software for any
7.\" purpose with or without fee is hereby granted, provided that the above
8.\" copyright notice and this permission notice appear in all copies.
08fe7cdb 9.\"
98311e4b
DH
10.\" THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES
11.\" WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
12.\" MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR
13.\" ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
14.\" WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
15.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT
16.\" OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
08fe7cdb 17.\"
98311e4b
DH
18.\" Internet Systems Consortium, Inc.
19.\" 950 Charter Street
20.\" Redwood City, CA 94063
21.\" <info@isc.org>
22.\" http://www.isc.org/
23.\"
24.\" This software has been written for Internet Systems Consortium
69c620f2 25.\" by Ted Lemon in cooperation with Vixie Enterprises and Nominum, Inc.
98311e4b 26.\" To learn more about Internet Systems Consortium, see
69c620f2
TL
27.\" ``http://www.isc.org/''. To learn more about Vixie Enterprises,
28.\" see ``http://www.vix.com''. To learn more about Nominum, Inc., see
29.\" ``http://www.nominum.com''.
f49473ba 30.\"
98311e4b 31.\" $Id: dhcpd.8,v 1.22 2005/03/17 20:15:27 dhankins Exp $
f49473ba 32.\"
ee0cda4d
TL
33.TH dhcpd 8
34.SH NAME
5e6b52dc 35dhcpd - Dynamic Host Configuration Protocol Server
ee0cda4d
TL
36.SH SYNOPSIS
37.B dhcpd
38[
39.B -p
40.I port
41]
d27562c7
TL
42[
43.B -f
44]
45[
5e6b52dc
TL
46.B -d
47]
48[
6edb572b
TL
49.B -q
50]
51[
897065dc
TL
52.B -t
53|
54.B -T
55]
56[
e2ac5814
TL
57.B -cf
58.I config-file
59]
60[
61.B -lf
62.I lease-file
63]
64[
51fe0cce
TL
65.B -tf
66.I trace-output-file
67]
68[
69.B -play
70.I trace-playback-file
71]
72[
d27562c7
TL
73.I if0
74[
75.I ...ifN
76]
77]
ee0cda4d 78.SH DESCRIPTION
98311e4b 79The Internet Systems Consortium DHCP Server, dhcpd, implements the
5e6b52dc
TL
80Dynamic Host Configuration Protocol (DHCP) and the Internet Bootstrap
81Protocol (BOOTP). DHCP allows hosts on a TCP/IP network to request
82and be assigned IP addresses, and also to discover information about
83the network to which they are attached. BOOTP provides similar
84functionality, with certain restrictions.
f21a7b4a
TL
85.SH CONTRIBUTIONS
86.PP
46a65180
TL
87This software is free software. At various times its development has
88been underwritten by various organizations, including the ISC and
89Vixie Enterprises. The development of 3.0 has been funded almost
90entirely by Nominum, Inc.
91.PP
92At this point development is being shepherded by Ted Lemon, and hosted
93by the ISC, but the future of this project depends on you. If you
94have features you want, please consider implementing them.
ee0cda4d
TL
95.SH OPERATION
96.PP
08fe7cdb
TL
97The DHCP protocol allows a host which is unknown to the network
98administrator to be automatically assigned a new IP address out of a
99pool of IP addresses for its network. In order for this to work, the
100network administrator allocates address pools in each subnet and
ee0cda4d
TL
101enters them into the dhcpd.conf(5) file.
102.PP
08fe7cdb 103On startup, dhcpd reads the
ee0cda4d 104.IR dhcpd.conf
5e6b52dc
TL
105file and stores a list of available addresses on each subnet in
106memory. When a client requests an address using the DHCP protocol,
107dhcpd allocates an address for it. Each client is assigned a lease,
108which expires after an amount of time chosen by the administrator (by
109default, one day). Before leases expire, the clients to which leases
110are assigned are expected to renew them in order to continue to use
111the addresses. Once a lease has expired, the client to which that
112lease was assigned is no longer permitted to use the leased IP
113address.
ee0cda4d 114.PP
08fe7cdb 115In order to keep track of leases across system reboots and server
ee0cda4d
TL
116restarts, dhcpd keeps a list of leases it has assigned in the
117dhcpd.leases(5) file. Before dhcpd grants a lease to a host, it
118records the lease in this file and makes sure that the contents of the
119file are flushed to disk. This ensures that even in the event of a
120system crash, dhcpd will not forget about a lease that it has
121assigned. On startup, after reading the dhcpd.conf file, dhcpd
122reads the dhcpd.leases file to refresh its memory about what leases
123have been assigned.
124.PP
125New leases are appended to the end of the dhcpd.leases
08fe7cdb 126file. In order to prevent the file from becoming arbitrarily large,
ee0cda4d
TL
127from time to time dhcpd creates a new dhcpd.leases file from its
128in-core lease database. Once this file has been written to disk, the
129old file is renamed
130.IR dhcpd.leases~ ,
131and the new file is renamed dhcpd.leases. If the system crashes in
132the middle of this process, whichever dhcpd.leases file remains will
133contain all the lease information, so there is no need for a special
134crash recovery process.
135.PP
5e6b52dc
TL
136BOOTP support is also provided by this server. Unlike DHCP, the BOOTP
137protocol does not provide a protocol for recovering
138dynamically-assigned addresses once they are no longer needed. It is
139still possible to dynamically assign addresses to BOOTP clients, but
140some administrative process for reclaiming addresses is required. By
141default, leases are granted to BOOTP clients in perpetuity, although
142the network administrator may set an earlier cutoff date or a shorter
143lease length for BOOTP leases if that makes sense.
144.PP
145BOOTP clients may also be served in the old standard way, which is to
146simply provide a declaration in the dhcpd.conf file for each
147BOOTP client, permanently assigning an address to each client.
ee0cda4d
TL
148.PP
149Whenever changes are made to the dhcpd.conf file, dhcpd must be
150restarted. To restart dhcpd, send a SIGTERM (signal 15) to the
151process ID contained in
5e6b52dc
TL
152.IR RUNDIR/dhcpd.pid ,
153and then re-invoke dhcpd. Because the DHCP server database is not as
154lightweight as a BOOTP database, dhcpd does not automatically restart
155itself when it sees a change to the dhcpd.conf file.
4e19a6df
TL
156.PP
157Note: We get a lot of complaints about this. We realize that it would
158be nice if one could send a SIGHUP to the server and have it reload
159the database. This is not technically impossible, but it would
160require a great deal of work, our resources are extremely limited, and
161they can be better spent elsewhere. So please don't complain about
162this on the mailing list unless you're prepared to fund a project to
163implement this feature, or prepared to do it yourself.
d27562c7
TL
164.SH COMMAND LINE
165.PP
5e6b52dc
TL
166The names of the network interfaces on which dhcpd should listen for
167broadcasts may be specified on the command line. This should be done
168on systems where dhcpd is unable to identify non-broadcast interfaces,
169but should not be required on other systems. If no interface names
170are specified on the command line dhcpd will identify all network
98311e4b 171interfaces which are up, eliminating non-broadcast interfaces if
5e6b52dc 172possible, and listen for DHCP broadcasts on each interface.
d27562c7 173.PP
5e6b52dc
TL
174If dhcpd should listen on a port other than the standard (port 67),
175the
d27562c7 176.B -p
5e6b52dc
TL
177flag may used. It should be followed by the udp port number on which
178dhcpd should listen. This is mostly useful for debugging purposes.
d27562c7 179.PP
5e6b52dc
TL
180To run dhcpd as a foreground process, rather than allowing it to run
181as a daemon in the background, the
d27562c7 182.B -f
5e6b52dc
TL
183flag should be specified. This is useful when running dhcpd under a
184debugger, or when running it out of inittab on System V systems.
185.PP
186To have dhcpd log to the standard error descriptor, specify the
187.B -d
188flag. This can be useful for debugging, and also at sites where a
189complete log of all dhcp activity must be kept but syslogd is not
190reliable or otherwise cannot be used. Normally, dhcpd will log all
191output using the syslog(3) function with the log facility set to
192LOG_DAEMON.
e2ac5814
TL
193.PP
194Dhcpd can be made to use an alternate configuration file with the
195.B -cf
196flag, or an alternate lease file with the
197.B -lf
198flag. Because of the importance of using the same lease database at
199all times when running dhcpd in production, these options should be
200used \fBonly\fR for testing lease files or database files in a
201non-production environment.
6edb572b
TL
202.PP
203When starting dhcpd up from a system startup script (e.g., /etc/rc),
204it may not be desirable to print out the entire copyright message on
205startup. To avoid printing this message, the
206.B -q
207flag may be specified.
897065dc
TL
208.PP
209The DHCP server reads two files on startup: a configuration file, and
210a lease database. If the
211.B -t
212flag is specified, the server will simply test the configuration file
213for correct syntax, but will not attempt to perform any network
214operations. This can be used to test the a new configuration file
215automatically before installing it.
216.PP
217The
218.B -T
219flag can be used to test the lease database file in a similar way.
51fe0cce
TL
220.PP
221The \fB-tf\fR and \fB-play\fR options allow you to specify a file into
222which the entire startup state of the server and all the transactions
223it processes are either logged or played back from. This can be
224useful in submitting bug reports - if you are getting a core dump
225every so often, you can start the server with the \fB-tf\fR option and
226then, when the server dumps core, the trace file will contain all the
227transactions that led up to it dumping core, so that the problem can
228be easily debugged with \fB-play\fR.
229.PP
230The \fB-play\fR option must be specified with an alternate lease file,
231using the \fB-lf\fR switch, so that the DHCP server doesn't wipe out
232your existing lease file with its test data. The DHCP server will
233refuse to operate in playback mode unless you specify an alternate
234lease file.
ee0cda4d 235.SH CONFIGURATION
98311e4b 236The syntax of the dhcpd.conf(5) file is discussed separately. This
ee0cda4d 237section should be used as an overview of the configuration process,
ba7ed239 238and the dhcpd.conf(5) documentation should be consulted for detailed
ee0cda4d
TL
239reference information.
240.PP
241.SH Subnets
242dhcpd needs to know the subnet numbers and netmasks of all subnets for
243which it will be providing service. In addition, in order to
244dynamically allocate addresses, it must be assigned one or more ranges
245of addresses on each subnet which it can in turn assign to client
246hosts as they boot. Thus, a very simple configuration providing DHCP
08fe7cdb
TL
247support might look like this:
248.nf
249.sp 1
5e6b52dc 250 subnet 239.252.197.0 netmask 255.255.255.0 {
08fe7cdb 251 range 239.252.197.10 239.252.197.250;
98311e4b 252 }
08fe7cdb 253.fi
ee0cda4d 254.PP
08fe7cdb
TL
255Multiple address ranges may be specified like this:
256.nf
257.sp 1
5e6b52dc
TL
258 subnet 239.252.197.0 netmask 255.255.255.0 {
259 range 239.252.197.10 239.252.197.107;
08fe7cdb 260 range 239.252.197.113 239.252.197.250;
5e6b52dc 261 }
08fe7cdb 262.fi
ee0cda4d 263.PP
08fe7cdb
TL
264If a subnet will only be provided with BOOTP service and no dynamic
265address assignment, the range clause can be left out entirely, but the
266subnet statement must appear.
ee0cda4d
TL
267.PP
268.SH Lease Lengths
08fe7cdb
TL
269DHCP leases can be assigned almost any length from zero seconds to
270infinity. What lease length makes sense for any given subnet, or for
271any given installation, will vary depending on the kinds of hosts
272being served.
ee0cda4d 273.PP
08fe7cdb
TL
274For example, in an office environment where systems are added from
275time to time and removed from time to time, but move relatively
276infrequently, it might make sense to allow lease times of a month of
277more. In a final test environment on a manufacturing floor, it may
278make more sense to assign a maximum lease length of 30 minutes -
279enough time to go through a simple test procedure on a network
280appliance before packaging it up for delivery.
ee0cda4d 281.PP
08fe7cdb
TL
282It is possible to specify two lease lengths: the default length that
283will be assigned if a client doesn't ask for any particular lease
284length, and a maximum lease length. These are specified as clauses
285to the subnet command:
286.nf
287.sp 1
5e6b52dc
TL
288 subnet 239.252.197.0 netmask 255.255.255.0 {
289 range 239.252.197.10 239.252.197.107;
290 default-lease-time 600;
08fe7cdb 291 max-lease-time 7200;
98311e4b 292 }
08fe7cdb 293.fi
ee0cda4d 294.PP
08fe7cdb
TL
295This particular subnet declaration specifies a default lease time of
296600 seconds (ten minutes), and a maximum lease time of 7200 seconds
297(two hours). Other common values would be 86400 (one day), 604800
298(one week) and 2592000 (30 days).
ee0cda4d 299.PP
08fe7cdb
TL
300Each subnet need not have the same lease\(emin the case of an office
301environment and a manufacturing environment served by the same DHCP
302server, it might make sense to have widely disparate values for
303default and maximum lease times on each subnet.
ee0cda4d
TL
304.SH BOOTP Support
305Each BOOTP client must be explicitly declared in the dhcpd.conf
08fe7cdb
TL
306file. A very basic client declaration will specify the client
307network interface's hardware address and the IP address to assign to
308that client. If the client needs to be able to load a boot file from
309the server, that file's name must be specified. A simple bootp
310client declaration might look like this:
311.nf
312.sp 1
fc5aedc9
TL
313 host haagen {
314 hardware ethernet 08:00:2b:4c:59:23;
5e6b52dc 315 fixed-address 239.252.197.9;
08fe7cdb 316 filename "/tftpboot/haagen.boot";
5e6b52dc 317 }
08fe7cdb 318.fi
ee0cda4d 319.SH Options
08fe7cdb
TL
320DHCP (and also BOOTP with Vendor Extensions) provide a mechanism
321whereby the server can provide the client with information about how
322to configure its network interface (e.g., subnet mask), and also how
323the client can access various network services (e.g., DNS, IP routers,
324and so on).
ee0cda4d 325.PP
08fe7cdb
TL
326These options can be specified on a per-subnet basis, and, for BOOTP
327clients, also on a per-client basis. In the event that a BOOTP
328client declaration specifies options that are also specified in its
329subnet declaration, the options specified in the client declaration
98311e4b 330take precedence. A reasonably complete DHCP configuration might
08fe7cdb
TL
331look something like this:
332.nf
333.sp 1
5e6b52dc
TL
334 subnet 239.252.197.0 netmask 255.255.255.0 {
335 range 239.252.197.10 239.252.197.250;
336 default-lease-time 600 max-lease-time 7200;
337 option subnet-mask 255.255.255.0;
338 option broadcast-address 239.252.197.255;
339 option routers 239.252.197.1;
340 option domain-name-servers 239.252.197.2, 239.252.197.3;
08fe7cdb 341 option domain-name "isc.org";
5e6b52dc 342 }
08fe7cdb 343.fi
ee0cda4d 344.PP
08fe7cdb
TL
345A bootp host on that subnet that needs to be in a different domain and
346use a different name server might be declared as follows:
347.nf
348.sp 1
ba7ed239
TL
349 host haagen {
350 hardware ethernet 08:00:2b:4c:59:23;
5e6b52dc
TL
351 fixed-address 239.252.197.9;
352 filename "/tftpboot/haagen.boot";
353 option domain-name-servers 192.5.5.1;
08fe7cdb 354 option domain-name "vix.com";
5e6b52dc 355 }
08fe7cdb 356.fi
ee0cda4d 357.PP
5e6b52dc
TL
358A more complete description of the dhcpd.conf file syntax is provided
359in dhcpd.conf(5).
90e0ef94
TL
360.SH OMAPI
361The DHCP server provides the capability to modify some of its
362configuration while it is running, without stopping it, modifying its
363database files, and restarting it. This capability is currently
364provided using OMAPI - an API for manipulating remote objects. OMAPI
365clients connect to the server using TCP/IP, authenticate, and can then
366examine the server's current status and make changes to it.
367.PP
368Rather than implementing the underlying OMAPI protocol directly, user
369programs should use the dhcpctl API or OMAPI itself. Dhcpctl is a
370wrapper that handles some of the housekeeping chores that OMAPI does
371not do automatically. Dhcpctl and OMAPI are documented in \fBdhcpctl(3)\fR
372and \fBomapi(3)\fR.
373.PP
374OMAPI exports objects, which can then be examined and modified. The
375DHCP server exports the following objects: lease, host,
376failover-state and group. Each object has a number of methods that
377are provided: lookup, create, and destroy. In addition, it is
378possible to look at attributes that are stored on objects, and in some
379cases to modify those attributes.
380.SH THE LEASE OBJECT
381Leases can't currently be created or destroyed, but they can be looked
382up to examine and modify their state.
383.PP
384Leases have the following attributes:
385.PP
386.B state \fIinteger\fR lookup, examine
387.RS 0.5i
388.nf
3891 = free
3902 = active
3913 = expired
3924 = released
3935 = abandoned
3946 = reset
3957 = backup
3968 = reserved
3979 = bootp
398.fi
399.RE
400.PP
401.B ip-address \fIdata\fR lookup, examine
402.RS 0.5i
403The IP address of the lease.
404.RE
405.PP
406.B dhcp-client-identifier \fIdata\fR lookup, examine, update
407.RS 0.5i
408The
409client identifier that the client used when it acquired the lease.
410Not all clients send client identifiers, so this may be empty.
411.RE
412.PP
413.B client-hostname \fIdata\fR examine, update
414.RS 0.5i
415The value the client sent in the host-name option.
416.RE
417.PP
418.B host \fIhandle\fR examine
419.RS 0.5i
420the host declaration associated with this lease, if any.
421.RE
422.PP
423.B subnet \fIhandle\fR examine
424.RS 0.5i
425the subnet object associated with this lease (the subnet object is not
426currently supported).
427.RE
428.PP
429.B pool \fIhandle\fR examine
430.RS 0.5i
431the pool object associted with this lease (the pool object is not
432currently supported).
433.RE
434.PP
435.B billing-class \fIhandle\fR examine
436.RS 0.5i
437the handle to the class to which this lease is currently billed, if
438any (the class object is not currently supported).
439.RE
440.PP
441.B hardware-address \fIdata\fR examine, update
442.RS 0.5i
443the hardware address (chaddr) field sent by the client when it
444acquired its lease.
445.RE
446.PP
447.B hardware-type \fIinteger\fR examine, update
448.RS 0.5i
449the type of the network interface that the client reported when it
450acquired its lease.
451.RE
452.PP
453.B ends \fItime\fR examine
454.RS 0.5i
455the time when the lease's current state ends, as understood by the
456client.
457.RE
458.PP
459.B tstp \fItime\fR examine
460.RS 0.5i
461the time when the lease's current state ends, as understood by the
462server.
463.RE
464.B tsfp \fItime\fR examine
465.RS 0.5i
466the time when the lease's current state ends, as understood by the
467failover peer (if there is no failover peer, this value is
468undefined).
469.RE
470.PP
471.B cltt \fItime\fR examine
472.RS 0.5i
473The time of the last transaction with the client on this lease.
474.RE
475.SH THE HOST OBJECT
476Hosts can be created, destroyed, looked up, examined and modified.
477If a host declaration is created or deleted using OMAPI, that
478information will be recorded in the dhcpd.leases file. It is
479permissible to delete host declarations that are declared in the
480dhcpd.conf file.
481.PP
482Hosts have the following attributes:
483.PP
484.B name \fIdata\fR lookup, examine, modify
485.RS 0.5i
486the name of the host declaration. This name must be unique among all
487host declarations.
488.RE
489.PP
490.B group \fIhandle\fR examine, modify
491.RS 0.5i
492the named group associated with the host declaration, if there is one.
493.RE
494.PP
495.B hardware-address \fIdata\fR lookup, examine, modify
496.RS 0.5i
497the link-layer address that will be used to match the client, if any.
498Only valid if hardware-type is also present.
499.RE
500.PP
501.B hardware-type \fIinteger\fR lookup, examine, modify
502.RS 0.5i
503the type of the network interface that will be used to match the
504client, if any. Only valid if hardware-address is also present.
505.RE
506.PP
507.B dhcp-client-identifier \fIdata\fR lookup, examine, modify
508.RS 0.5i
509the dhcp-client-identifier option that will be used to match the
510client, if any.
511.RE
512.PP
513.B ip-address \fIdata\fR examine, modify
514.RS 0.5i
515a fixed IP address which is reserved for a DHCP client that matches
516this host declaration. The IP address will only be assigned to the
517client if it is valid for the network segment to which the client is
518connected.
519.RE
520.PP
521.B statements \fIdata\fR modify
522.RS 0.5i
523a list of statements in the format of the dhcpd.conf file that will be
524executed whenever a message from the client is being processed.
525.RE
526.PP
527.B known \fIinteger\fR examine, modify
528.RS 0.5i
529if nonzero, indicates that a client matching this host declaration
530will be treated as \fIknown\fR in pool permit lists. If zero, the
531client will not be treated as known.
532.RE
533.SH THE GROUP OBJECT
534Named groups can be created, destroyed, looked up, examined and
535modified. If a group declaration is created or deleted using OMAPI,
536that information will be recorded in the dhcpd.leases file. It is
537permissible to delete group declarations that are declared in the
538dhcpd.conf file.
539.PP
540Named groups currently can only be associated with
541hosts - this allows one set of statements to be efficiently attached
542to more than one host declaration.
543.PP
544Groups have the following attributes:
545.PP
546.B name \fIdata\fR
547.RS 0.5i
548the name of the group. All groups that are created using OMAPI must
549have names, and the names must be unique among all groups.
550.RE
551.PP
552.B statements \fIdata\fR
553.RS 0.5i
554a list of statements in the format of the dhcpd.conf file that will be
555executed whenever a message from a client whose host declaration
556references this group is processed.
557.RE
d758ad8c
TL
558.SH THE CONTROL OBJECT
559The control object allows you to shut the server down. If the server
560is doing failover with another peer, it will make a clean transition
561into the shutdown state and notify its peer, so that the peer can go
562into partner down, and then record the "recover" state in the lease
563file so that when the server is restarted, it will automatically
564resynchronize with its peer.
565.PP
566On shutdown the server will also attempt to cleanly shut down all
567OMAPI connections. If these connections do not go down cleanly after
568five seconds, they are shut down pre-emptively. It can take as much
569as 25 seconds from the beginning of the shutdown process to the time
570that the server actually exits.
571.PP
572To shut the server down, open its control object and set the state
573attribute to 2.
0db87765
TL
574.SH THE FAILOVER-STATE OBJECT
575The failover-state object is the object that tracks the state of the
576failover protocol as it is being managed for a given failover peer.
577The failover object has the following attributes (please see
578.B dhcpd.conf (5)
579for explanations about what these attributes mean):
580.PP
581.B name \fIdata\fR examine
582.RS 0.5i
583Indicates the name of the failover peer relationship, as described in
584the server's \fBdhcpd.conf\fR file.
585.RE
586.PP
587.B partner-address \fIdata\fR examine
588.RS 0.5i
589Indicates the failover partner's IP address.
590.RE
591.PP
592.B local-address \fIdata\fR examine
593.RS 0.5i
594Indicates the IP address that is being used by the DHCP server for
595this failover pair.
596.RE
597.PP
598.B partner-port \fIdata\fR examine
599.RS 0.5i
600Indicates the TCP port on which the failover partner is listening for
601failover protocol connections.
602.RE
603.PP
604.B local-port \fIdata\fR examine
605.RS 0.5i
606Indicates the TCP port on which the DHCP server is listening for
607failover protocol connections for this failover pair.
608.RE
609.PP
610.B max-outstanding-updates \fIinteger\fR examine
611.RS 0.5i
612Indicates the number of updates that can be outstanding and
613unacknowledged at any given time, in this failover relationship.
614.RE
615.PP
616.B mclt \fIinteger\fR examine
617.RS 0.5i
618Indicates the maximum client lead time in this failover relationship.
619.RE
620.PP
621.B load-balance-max-secs \fIinteger\fR examine
622.RS 0.5i
623Indicates the maximum value for the secs field in a client request
624before load balancing is bypassed.
625.RE
626.PP
627.B load-balance-hba \fIdata\fR examine
628.RS 0.5i
629Indicates the load balancing hash bucket array for this failover
630relationship.
631.RE
632.PP
633.B local-state \fIinteger\fR examine, modify
634.RS 0.5i
635Indicates the present state of the DHCP server in this failover
636relationship. Possible values for state are:
637.RE
638.RS 1i
639.PP
640.nf
6411 - partner down
6422 - normal
6433 - communications interrupted
6444 - resolution interrupted
6455 - potential conflict
6466 - recover
6477 - recover done
6488 - shutdown
6499 - paused
65010 - startup
65111 - recover wait
652.fi
653.RE
654.PP
655.RS 0.5i
656In general it is not a good idea to make changes to this state.
657However, in the case that the failover partner is known to be down, it
658can be useful to set the DHCP server's failover state to partner
659down. At this point the DHCP server will take over service of the
660failover partner's leases as soon as possible, and will give out
661normal leases, not leases that are restricted by MCLT. If you do put
662the DHCP server into the partner-down when the other DHCP server is
663not in the partner-down state, but is not reachable, IP address
664assignment conflicts are possible, even likely. Once a server has
665been put into partner-down mode, its failover partner must not be
666brought back online until communication is possible between the two
667servers.
668.RE
669.PP
670.B partner-state \fIinteger\fR examine
671.RS 0.5i
672Indicates the present state of the failover partner.
673.RE
674.PP
675.B local-stos \fIinteger\fR examine
676.RS 0.5i
677Indicates the time at which the DHCP server entered its present state
678in this failover relationship.
679.RE
680.PP
681.B partner-stos \fIinteger\fR examine
682.RS 0.5i
683Indicates the time at which the failover partner entered its present state.
684.RE
685.PP
686.B hierarchy \fIinteger\fR examine
687.RS 0.5i
688Indicates whether the DHCP server is primary (0) or secondary (1) in
689this failover relationship.
690.RE
691.PP
692.B last-packet-sent \fIinteger\fR examine
693.RS 0.5i
694Indicates the time at which the most recent failover packet was sent
695by this DHCP server to its failover partner.
696.RE
697.PP
698.B last-timestamp-received \fIinteger\fR examine
699.RS 0.5i
700Indicates the timestamp that was on the failover message most recently
701received from the failover partner.
702.RE
703.PP
704.B skew \fIinteger\fR examine
705.RS 0.5i
706Indicates the skew between the failover partner's clock and this DHCP
707server's clock
708.RE
709.PP
710.B max-response-delay \fIinteger\fR examine
711.RS 0.5i
712Indicates the time in seconds after which, if no message is received
713from the failover partner, the partner is assumed to be out of
714communication.
715.RE
716.PP
717.B cur-unacked-updates \fIinteger\fR examine
718.RS 0.5i
719Indicates the number of update messages that have been received from
720the failover partner but not yet processed.
721.RE
ee0cda4d
TL
722.SH FILES
723.B ETCDIR/dhcpd.conf, DBDIR/dhcpd.leases, RUNDIR/dhcpd.pid,
724.B DBDIR/dhcpd.leases~.
725.SH SEE ALSO
66b01364 726dhclient(8), dhcrelay(8), dhcpd.conf(5), dhcpd.leases(5)
ee0cda4d
TL
727.SH AUTHOR
728.B dhcpd(8)
90e0ef94 729was originally written by Ted Lemon under a contract with Vixie Labs.
98311e4b 730Funding for this project was provided by Internet Systems
90e0ef94 731Consortium. Version 3 of the DHCP server was funded by Nominum, Inc.
98311e4b
DH
732Information about Internet Systems Consortium is available at
733.B http://www.isc.org/\fR.
734Information about Nominum can be found at \fBhttp://www.nominum.com/\fR.