1dhclient.conf(5)              File Formats Manual             dhclient.conf(5)
2
3
4

NAME

6       dhclient.conf - DHCP client configuration file
7

DESCRIPTION

9       The dhclient.conf file contains configuration information for dhclient,
10       the Internet Systems Consortium DHCP Client.
11
12       The dhclient.conf file is a free-form ASCII text file.  It is parsed by
13       the recursive-descent parser built into dhclient.  The file may contain
14       extra tabs and newlines for formatting purposes.  Keywords in the  file
15       are  case-insensitive.  Comments may be placed anywhere within the file
16       (except within quotes).  Comments begin with the # character and end at
17       the end of the line.
18
19       The  dhclient.conf  file  can be used to configure the behaviour of the
20       client in a wide variety of  ways:  protocol  timing,  information  re‐
21       quested  from  the server, information required of the server, defaults
22       to use if the server does not provide certain information, values  with
23       which  to  override  information  provided  by the server, or values to
24       prepend or append to information provided by the server.  The  configu‐
25       ration  file  can  also be preinitialized with addresses to use on net‐
26       works that don't have DHCP servers.
27

PROTOCOL TIMING

29       The timing behaviour of the client need not be configured by the  user.
30       If no timing configuration is provided by the user, a fairly reasonable
31       timing behaviour will be used by default - one which results in  fairly
32       timely updates without placing an inordinate load on the server.
33
34       If  required  the following statements can be used to adjust the timing
35       behaviour of the DHCPv4 client.  The DHCPv6 protocol provides values to
36       use and they are not currently configurable.
37
38       The timeout statement
39
40        timeout time;
41
42       The  timeout statement determines the amount of time that must pass be‐
43       tween the time that the client begins to try to determine  its  address
44       and  the time that it decides that it's not going to be able to contact
45       a server.  By default, this timeout is sixty seconds.  After the  time‐
46       out  has passed, if there are any static leases defined in the configu‐
47       ration file, or any leases remaining in the lease  database  that  have
48       not  yet  expired, the client will loop through these leases attempting
49       to validate them, and if it finds one that appears to be valid, it will
50       use that lease's address.  If there are no valid static leases or unex‐
51       pired leases in the lease database, the client will restart the  proto‐
52       col after the defined retry interval.
53
54       The retry statement
55
56        retry time;
57
58       The retry statement determines the time that must pass after the client
59       has determined that there is no DHCP server  present  before  it  tries
60       again to contact a DHCP server.  By default, this is five minutes.
61
62       The select-timeout statement
63
64        select-timeout time;
65
66       It is possible (some might say desirable) for there to be more than one
67       DHCP server serving any given network.  In this case,  it  is  possible
68       that  a  client may be sent more than one offer in response to its ini‐
69       tial lease discovery message.  It may be that one of  these  offers  is
70       preferable  to  the  other  (e.g.,  one  offer may have the address the
71       client previously used, and the other may not).
72
73       The select-timeout is the time after the client sends its  first  lease
74       discovery  request  at  which it stops waiting for offers from servers,
75       assuming that it has received at least one such offer.   If  no  offers
76       have  been  received  by  the  time the select-timeout has expired, the
77       client will accept the first offer that arrives.
78
79       By default, the select-timeout is zero seconds - that  is,  the  client
80       will take the first offer it sees.
81
82       The reboot statement
83
84        reboot time;
85
86       When  the client is restarted, it first tries to reacquire the last ad‐
87       dress it had.  This is called the INIT-REBOOT state.  If  it  is  still
88       attached  to the same network it was attached to when it last ran, this
89       is the quickest way to get started.  The reboot statement sets the time
90       that  must elapse after the client first tries to reacquire its old ad‐
91       dress before it gives up and tries to discover a new address.   By  de‐
92       fault, the reboot timeout is ten seconds.
93
94       The backoff-cutoff statement
95
96        backoff-cutoff time;
97
98       The  client uses an exponential backoff algorithm with some randomness,
99       so that if many clients try to configure themselves at the  same  time,
100       they  will  not  make  their  requests in lockstep.  The backoff-cutoff
101       statement determines the maximum amount of time that the client is  al‐
102       lowed  to back off, the actual value will be evaluated randomly between
103       1/2 to 1 1/2 times the time specified.  It defaults to fifteen seconds.
104
105       The initial-interval statement
106
107        initial-interval time;
108
109       The initial-interval statement sets the  amount  of  time  between  the
110       first  attempt  to  reach  a  server  and the second attempt to reach a
111       server.  Each time a message is sent, the interval between messages  is
112       incremented by twice the current interval multiplied by a random number
113       between zero and one.  If it is greater than the backoff-cutoff amount,
114       it is set to that amount.  It defaults to ten seconds.
115
116       The initial-delay statement
117
118        initial-delay time;
119
120       initial-delay  parameter  sets  the  maximum time client can wait after
121       start before commencing first transmission.  According to RFC2131  Sec‐
122       tion  4.4.1,  client  should wait a random time between startup and the
123       actual first transmission. Previous versions of ISC DHCP client used to
124       wait  random  time up to 5 seconds, but that was unwanted due to impact
125       on startup time. As such, new versions have the default  initial  delay
126       set to 0. To restore old behavior, please set initial-delay to 5.
127

DHCPv6 LEASE SELECTION

129       In  the  DHCPv6 protocol the client will wait a small amount of time to
130       allow ADVERTISE messages from multiple servers to arrive.  It will then
131       need  to  choose  from all of the messages that may have arrived before
132       proceeding to making a request of the selected server.
133
134       The first selection criteria is the set of options and addresses in the
135       message.   Messages  that don't include an option specified as required
136       will be given a score of 0 and not used.  If the -R option is given  on
137       the command line then messages that don't include the correct number of
138       bindings (IA-NA, IA-TA or IA-PD) will be discarded.
139
140       The next criteria is the preference value from the message.   With  the
141       highest  preference  value  being  used  even if leases with better ad‐
142       dresses or options are available.
143
144       Finally the lease is scored and the lease with the highest score is se‐
145       lected.   A lease's score is based on the number of bindings, number of
146       addresses and number of options it contains:
147            bindings * X + addresses * Y + options
148       By default X = 10000 and Y = 100, this will cause the client to  select
149       a lease with more bindings over a lease with less bindings but more ad‐
150       dresses.  The weightings were changed as part of implementing RFC 7550.
151       Previously  they  were  X  = 50 and Y = 100 meaning more addresses were
152       preferred over more bindings.  If you wish to continue  using  the  old
153       style  you may do so by editing the file includes/site.h and uncomment‐
154       ing the define for USE_ORIGINAL_CLIENT_LEASE_WEIGHTS.
155

LEASE REQUIREMENTS AND REQUESTS

157       The DHCP protocol allows the client to request that the server send  it
158       specific  information, and not send it other information that it is not
159       prepared to accept.  The protocol also allows the client to reject  of‐
160       fers  from  servers if they don't contain information the client needs,
161       or if the information provided is not satisfactory.
162
163       There is a variety of data contained in offers that DHCP  servers  send
164       to  DHCP  clients.  The data that can be specifically requested is what
165       are called DHCP Options.  DHCP Options are defined in
166        dhcp-options(5).
167
168       The request statement
169
170        [ also ] request [ [ option-space . ] option ] [, ... ];
171
172       The request statement causes the client to request that any server  re‐
173       sponding to the client send the client its values for the specified op‐
174       tions.  Only the option names should be specified in the request state‐
175       ment  -  not option parameters.  By default, the DHCPv4 client requests
176       the  subnet-mask,  broadcast-address,  time-offset,  routers,   domain-
177       search,  domain-name,  domain-name-servers, host-name, nis-domain, nis-
178       servers, ntp-servers and interface-mtu options while the DHCPv6  client
179       requests  the  dhcp6 name-servers and domain-search options.  Note that
180       if you enter a ´request´ statement, you over-ride  these  defaults  and
181       these options will not be requested.
182
183       In some cases, it may be desirable to send no parameter request list at
184       all.  To do this, simply write the request statement but specify no pa‐
185       rameters:
186
187            request;
188
189       In  most cases, it is desirable to simply add one option to the request
190       list which is of interest to the client in question.  In this case,  it
191       is best to ´also request´ the additional options:
192
193            also request domain-search, dhcp6.sip-servers-addresses;
194
195       The require statement
196
197        [ also ] require [ [ option-space . ] option ] [, ... ];
198
199       The  require  statement lists options that must be sent in order for an
200       offer to be accepted.  Offers that do not contain all  the  listed  op‐
201       tions will be ignored.  There is no default require list.
202
203            require name-servers;
204
205            interface eth0 {
206                 also require domain-search;
207            }
208
209       The send statement
210
211        send [ option declaration ] ;
212
213       The  send  statement  causes the client to send the specified option to
214       the server with the specified value.  This is a full option declaration
215       as  described  in dhcp-options(5).  Options that are always sent in the
216       DHCP protocol should not be specified here, except that the client  can
217       specify  a  requested dhcp-lease-time option other than the default re‐
218       quested lease time, which is two hours.  The other obvious use for this
219       statement  is  to  send information to the server that will allow it to
220       differentiate between  this  client  and  other  clients  or  kinds  of
221       clients.
222

DYNAMIC DNS

224       The client now has some very limited support for doing DNS updates when
225       a lease is acquired.  This is prototypical,  and  probably  doesn't  do
226       what  you  want.  It also only works if you happen to have control over
227       your DNS server, which isn't very likely.
228
229       Note that everything in this section is  true  whether  you  are  using
230       DHCPv4 or DHCPv6.  The exact same syntax is used for both.
231
232       To  make  it  work,  you  have to declare a key and zone as in the DHCP
233       server (see dhcpd.conf(5) for details).  You also need to configure the
234       fqdn option on the client, as follows:
235
236         send fqdn.fqdn "grosse.example.com.";
237         send fqdn.encoded on;
238         send fqdn.server-update off;
239         also request fqdn, dhcp6.fqdn;
240
241       The  fqdn.fqdn  option MUST be a fully-qualified domain name.  You MUST
242       define a zone statement for the zone to be updated.   The  fqdn.encoded
243       option  may  need  to be set to on or off, depending on the DHCP server
244       you are using.
245
246       The do-forward-updates statement
247
248        do-forward-updates [ flag ] ;
249
250       If you want to do DNS updates in the DHCP client script (see  dhclient-
251       script(8))  rather  than  having the DHCP client do the update directly
252       (for example, if you want to use SIG(0) authentication,  which  is  not
253       supported  directly by the DHCP client, you can instruct the client not
254       to do the update using the do-forward-updates statement.   Flag  should
255       be  true if you want the DHCP client to do the update, and false if you
256       don't want the DHCP client to do the  update.   By  default,  the  DHCP
257       client will do the DNS update.
258

OPTION MODIFIERS

260       In  some  cases, a client may receive option data from the server which
261       is not really appropriate for that client, or may not receive  informa‐
262       tion  that  it  needs, and for which a useful default value exists.  It
263       may also receive information which is useful, but  which  needs  to  be
264       supplemented  with  local  information.  To handle these needs, several
265       option modifiers are available.
266
267       The default statement
268
269        default [ option declaration ] ;
270
271       If for some option the client should use  the  value  supplied  by  the
272       server, but needs to use some default value if no value was supplied by
273       the server, these values can be defined in the default statement.
274
275       The supersede statement
276
277        supersede [ option declaration ] ;
278
279       If for some option the client should always  use  a  locally-configured
280       value  or  values rather than whatever is supplied by the server, these
281       values can be defined in the supersede statement.
282
283       The prepend statement
284
285        prepend [ option declaration ] ;
286
287       If for some set of options the client should use a  value  you  supply,
288       and  then  use  the values supplied by the server, if any, these values
289       can be defined in the prepend statement.   The  prepend  statement  can
290       only  be  used for options which allow more than one value to be given.
291       This restriction is not enforced - if you ignore it, the behaviour will
292       be unpredictable.
293
294       The append statement
295
296        append [ option declaration ] ;
297
298       If  for some set of options the client should first use the values sup‐
299       plied by the server, if any, and then use values you supply, these val‐
300       ues  can  be defined in the append statement.  The append statement can
301       only be used for options which allow more than one value to  be  given.
302       This restriction is not enforced - if you ignore it, the behaviour will
303       be unpredictable.
304

LEASE DECLARATIONS

306       The lease declaration
307
308        lease { lease-declaration [ ... lease-declaration ] }
309
310       The DHCP client may decide after some period of time (see PROTOCOL TIM‐
311       ING)  that  it is not going to succeed in contacting a server.  At that
312       time, it consults its own database of old leases  and  tests  each  one
313       that  has not yet timed out by pinging the listed router for that lease
314       to see if that lease could work.  It is possible to define one or  more
315       fixed  leases in the client configuration file for networks where there
316       is no DHCP or BOOTP service, so that the client can still automatically
317       configure its address.  This is done with the lease statement.
318
319       NOTE:  the  lease statement is also used in the dhclient.leases file in
320       order to record leases that have been received from DHCP servers.  Some
321       of  the  syntax  for  leases  as  described below is only needed in the
322       dhclient.leases file.  Such syntax is documented here for completeness.
323
324       A lease statement consists of the lease keyword,  followed  by  a  left
325       curly brace, followed by one or more lease declaration statements, fol‐
326       lowed by a right curly brace.  The  following  lease  declarations  are
327       possible:
328
329        bootp;
330
331       The bootp statement is used to indicate that the lease was acquired us‐
332       ing the BOOTP protocol rather than the DHCP protocol.  It is never nec‐
333       essary  to  specify  this in the client configuration file.  The client
334       uses this syntax in its lease database file.
335
336        interface "string";
337
338       The interface lease statement is used  to  indicate  the  interface  on
339       which  the  lease is valid.  If set, this lease will only be tried on a
340       particular interface.  When the client receives a lease from a  server,
341       it always records the interface number on which it received that lease.
342       If predefined leases are specified in the dhclient.conf file,  the  in‐
343       terface should also be specified, although this is not required.
344
345        fixed-address ip-address;
346
347       The fixed-address statement is used to set the ip address of a particu‐
348       lar lease.  This is required for all lease statements.  The IP  address
349       must be specified as a dotted quad (e.g., 12.34.56.78).
350
351        filename "string";
352
353       The  filename statement specifies the name of the boot filename to use.
354       This is not used by the standard client configuration  script,  but  is
355       included for completeness.
356
357        server-name "string";
358
359       The server-name statement specifies the name of the boot server name to
360       use.  This is also  not  used  by  the  standard  client  configuration
361       script.
362
363        option option-declaration;
364
365       The option statement is used to specify the value of an option supplied
366       by the server, or,  in  the  case  of  predefined  leases  declared  in
367       dhclient.conf,  the value that the user wishes the client configuration
368       script to use if the predefined lease is used.
369
370        script "script-name";
371
372       The script statement is used to specify the pathname of the dhcp client
373       configuration  script.   This  script is used by the dhcp client to set
374       each interface's initial configuration prior to requesting an  address,
375       to  test  the  address  once it has been offered, and to set the inter‐
376       face's final configuration once a lease has been acquired.  If no lease
377       is  acquired, the script is used to test predefined leases, if any, and
378       also called once if no valid lease can be identified.  For more  infor‐
379       mation, see dhclient-script(8).
380
381        vendor option space "name";
382
383       The vendor option space statement is used to specify which option space
384       should be used for decoding the  vendor-encapsulate-options  option  if
385       one  is  received.  The dhcp-vendor-identifier can be used to request a
386       specific class of vendor options from the server.  See  dhcp-options(5)
387       for details.
388
389        medium "media setup";
390
391       The  medium  statement  can be used on systems where network interfaces
392       cannot automatically determine the type of network to  which  they  are
393       connected.   The  media  setup  string  is a system-dependent parameter
394       which is passed to the dhcp client configuration script when initializ‐
395       ing  the  interface.   On  Unix  and Unix-like systems, the argument is
396       passed on the ifconfig command line when configuring the interface.
397
398       The dhcp client automatically declares this parameter if it uses a  me‐
399       dia  type  (see  the media statement) when configuring the interface in
400       order to obtain a lease.  This statement should be used  in  predefined
401       leases only if the network interface requires media type configuration.
402
403        renew date;
404
405        rebind date;
406
407        expire date;
408
409       The  renew  statement  defines the time at which the dhcp client should
410       begin trying to contact its server to renew a lease that it  is  using.
411       The  rebind  statement defines the time at which the dhcp client should
412       begin to try to contact any dhcp server in order to  renew  its  lease.
413       The  expire  statement  defines  the time at which the dhcp client must
414       stop using a lease if it has not been able to contact a server in order
415       to renew it.
416
417       These declarations are automatically set in leases acquired by the DHCP
418       client, but must also be configured in predefined leases - a predefined
419       lease whose expiry time has passed will not be used by the DHCP client.
420
421       Dates are specified in one of two ways.  The software will output times
422       in these two formats depending on if the  db-time-format  configuration
423       parameter has been set to default or local.
424
425       If it is set to default, then date values appear as follows:
426
427        <weekday> <year>/<month>/<day> <hour>:<minute>:<second>
428
429       The weekday is present to make it easy for a human to tell when a lease
430       expires - it's specified as a number from zero to six, with zero  being
431       Sunday.   When declaring a predefined lease, it can always be specified
432       as zero.  The year is specified with the century, so it  should  gener‐
433       ally be four digits except for really long leases.  The month is speci‐
434       fied as a number starting with 1 for January.  The day of the month  is
435       likewise specified starting with 1.  The hour is a number between 0 and
436       23, the minute a number between 0 and 59, and the second also a  number
437       between 0 and 59.
438
439       If  the  db-time-format  configuration  was set to local, then the date
440       values appear as follows:
441
442        epoch <seconds-since-epoch>; #  <day-name>  <month-name>  <day-number>
443       <hours>:<minutes>:<seconds> <year>
444
445       The  seconds-since-epoch  is  as  according to the system's local clock
446       (often referred to as "unix time").  The # symbol  supplies  a  comment
447       that  describes  what  actual time this is as according to the system's
448       configured timezone, at the time the value was written.  It is provided
449       only for human inspection, the epoch time is the only recommended value
450       for machine inspection.
451
452       Note that when defining a static lease, one may use either time  format
453       one wishes, and need not include the comment or values after it.
454
455       If  the time is infinite in duration, then the date is never instead of
456       an actual date.
457

ALIAS DECLARATIONS

459        alias {  declarations ... }
460
461       Some DHCP clients running TCP/IP roaming protocols may require that  in
462       addition  to  the lease they may acquire via DHCP, their interface also
463       be configured with a predefined IP alias so that they can have a perma‐
464       nent  IP  address  even while roaming.  The Internet Systems Consortium
465       DHCP client doesn't support roaming with fixed addresses directly,  but
466       in order to facilitate such experimentation, the dhcp client can be set
467       up to configure an IP alias using the alias declaration.
468
469       The alias declaration resembles a lease declaration,  except  that  op‐
470       tions  other  than  the  subnet-mask option are ignored by the standard
471       client configuration script, and expiry times are ignored.   A  typical
472       alias  declaration  includes  an interface declaration, a fixed-address
473       declaration for the IP alias address, and a subnet-mask option declara‐
474       tion.  A medium statement should never be included in an alias declara‐
475       tion.
476

OTHER DECLARATIONS

478        db-time-format [ default | local ] ;
479
480       The db-time-format option determines which of two  output  methods  are
481       used  for  printing times in leases files.  The default format provides
482       day-and-time in UTC, whereas local uses a seconds-since-epoch to  store
483       the time value, and helpfully places a local timezone time in a comment
484       on the same line.  The formats are described in detail in this manpage,
485       within the LEASE DECLARATIONS section.
486
487       The lease-id-format parameter
488
489         lease-id-format format;
490
491         The  format  parameter  must  be either octal or hex.  This parameter
492         governs the format used to write certain values to lease files.  With
493         the  default  format,  octal, values are written as quoted strings in
494         which non-printable characters are represented as octal escapes  -  a
495         backslash  character  followed  by  three octal digits.  When the hex
496         format is specified, values are written  as  an  unquoted  series  of
497         hexadecimal digit pairs, separated by colons.
498
499         Currently,  the  values  written out based on lease-id-format are the
500         default-duid and the IAID value (DHCPv6 only).  The client  automati‐
501         cally  reads  the values in either format.  Note that when the format
502         is octal, rather than as an octal string, IAID is output as hex if it
503         contains  no  printable  characters  or  as a string if contains only
504         printable characters. This is done to maintain  backward  compatibil‐
505         ity.
506
507          reject cidr-ip-address [, ... cidr-ip-address ] ;
508
509         The  reject  statement  causes  the DHCP client to reject offers from
510         servers whose server identifier matches any of the specified hosts or
511         subnets.  This can be used to avoid being configured by rogue or mis‐
512         configured dhcp servers, although it should be a last resort - better
513         to track down the bad DHCP server and fix it.
514
515         The   cidr-ip-address  configuration  type  is  of  the  form  ip-ad‐
516         dress[/prefixlen], where ip-address is a dotted quad IP address,  and
517         prefixlen  is the CIDR prefix length of the subnet, counting the num‐
518         ber of significant bits in the netmask  starting  from  the  leftmost
519         end.  Example configuration syntax:
520
521         reject 192.168.0.0/16, 10.0.0.5;
522
523         The  above  example  would cause offers from any server identifier in
524         the entire RFC 1918 "Class C" network 192.168.0.0/16, or the specific
525         single address 10.0.0.5, to be rejected.
526
527          interface "name" { declarations ...  }
528
529         A  client  with more than one network interface may require different
530         behaviour depending on which interface is being configured.  All tim‐
531         ing  parameters  and declarations other than lease and alias declara‐
532         tions can be enclosed in an interface declaration, and those  parame‐
533         ters will then be used only for the interface that matches the speci‐
534         fied name.  Interfaces for which there is  no  interface  declaration
535         will  use  the  parameters declared outside of any interface declara‐
536         tion, or the default settings.
537
538         Note well: ISC dhclient only maintains one list of interfaces,  which
539         is  either determined at startup from command line arguments, or oth‐
540         erwise is autodetected.  If you supplied the list  of  interfaces  on
541         the command line, this configuration clause will add the named inter‐
542         face to the list in such a way that will cause it to be configured by
543         DHCP.   Which may not be the result you had intended.  This is an un‐
544         desirable side effect that will be addressed in a future release.
545
546          pseudo "name" "real-name" { declarations ...  }
547
548         Under some circumstances it can be useful to declare a  pseudo-inter‐
549         face and have the DHCP client acquire a configuration for that inter‐
550         face.  Each interface that the DHCP client is supporting normally has
551         a DHCP client state machine running on it to acquire and maintain its
552         lease.  A pseudo-interface is just another state machine  running  on
553         the  interface named real-name, with its own lease and its own state.
554         If you use this feature, you must provide  a  client  identifier  for
555         both the pseudo-interface and the actual interface, and the two iden‐
556         tifiers must be different.  You must also provide a  separate  client
557         script  for  the pseudo-interface to do what you want with the IP ad‐
558         dress.  For example:
559
560              interface "ep0" {
561                   send dhcp-client-identifier "my-client-ep0";
562              }
563              pseudo "secondary" "ep0" {
564                   send dhcp-client-identifier "my-client-ep0-secondary";
565                   script "/etc/dhclient-secondary";
566              }
567
568         The client script for the pseudo-interface should not  configure  the
569         interface  up  or  down - essentially, all it needs to handle are the
570         states where a lease has been acquired or  renewed,  and  the  states
571         where  a lease has expired.  See dhclient-script(8) for more informa‐
572         tion.
573
574          media "media setup" [ , "media setup", ... ];
575
576         The media statement defines one or more media  configuration  parame‐
577         ters  which  may  be tried while attempting to acquire an IP address.
578         The dhcp client will cycle through each media  setup  string  on  the
579         list,  configuring  the  interface using that setup and attempting to
580         boot, and then trying the next one.  This can be used for network in‐
581         terfaces  which  aren't  capable  of sensing the media type unaided -
582         whichever media type succeeds in getting a request to the server  and
583         hearing the reply is probably right (no guarantees).
584
585         The  media setup is only used for the initial phase of address acqui‐
586         sition (the DHCPDISCOVER and DHCPOFFER packets).  Once an address has
587         been  acquired,  the dhcp client will record it in its lease database
588         and will record the media type used to acquire the address.  Whenever
589         the  client  tries  to  renew  the lease, it will use that same media
590         type.  The lease must expire before the client will go  back  to  cy‐
591         cling through media types.
592
593          hardware link-type mac-address;
594
595         The  hardware  statement  defines the hardware MAC address to use for
596         this interface, for DHCP servers or relays to direct  their  replies.
597         dhclient will determine the interface's MAC address automatically, so
598         use of this parameter is not recommended.  The link-type  corresponds
599         to  the  interface's link layer type (example: ´ethernet´), while the
600         mac-address is a string of  colon-separated  hexadecimal  values  for
601         octets.
602
603          anycast-mac link-type mac-address;
604
605         The  anycast-mac  statement over-rides the all-ones broadcast MAC ad‐
606         dress dhclient will use when it is transmitting packets to  the  all-
607         ones limited broadcast IPv4 address.  This configuration parameter is
608         useful to reduce the number of broadcast packets transmitted by  DHCP
609         clients,  but  is only useful if you know the DHCP service(s) anycast
610         MAC address prior to configuring your client.  The link-type and mac-
611         address parameters are configured in a similar manner to the hardware
612         statement.
613
614          bootp-broadcast-always;
615
616         The bootp-broadcast-always statement instructs dhclient to always set
617         the bootp broadcast flag in request packets, so that servers will al‐
618         ways broadcast replies.  This is equivalent to supplying the dhclient
619         -B argument, and has the same effect as specifying 'always-broadcast'
620         in the server's dhcpd.conf.  This option is provided as an  extension
621         to enable dhclient to work on IBM s390 Linux guests.
622

SAMPLE

624       The  following  configuration  file was used on a laptop running NetBSD
625       1.3, though the domains have been modified.  The laptop has an IP alias
626       of  192.5.5.213,  and  has one interface, ep0 (a 3com 3C589C).  Booting
627       intervals have been shortened somewhat from the  default,  because  the
628       client  is known to spend most of its time on networks with little DHCP
629       activity.  The laptop does roam to multiple networks.
630
631
632       timeout 60;
633       retry 60;
634       reboot 10;
635       select-timeout 5;
636       initial-interval 2;
637       reject 192.33.137.209;
638
639       interface "ep0" {
640           send host-name "andare.example.com";
641           hardware ethernet 00:a0:24:ab:fb:9c;
642           send dhcp-client-identifier 1:0:a0:24:ab:fb:9c;
643           send dhcp-lease-time 3600;
644           supersede domain-search "example.com", "rc.isc.org", "home.isc.org";
645           prepend domain-name-servers 127.0.0.1;
646           request subnet-mask, broadcast-address, time-offset, routers,
647                domain-name, domain-name-servers, host-name;
648           require subnet-mask, domain-name-servers;
649           script "/usr/sbin/dhclient-script";
650           media "media 10baseT/UTP", "media 10base2/BNC";
651       }
652
653       alias {
654         interface "ep0";
655         fixed-address 192.5.5.213;
656         option subnet-mask 255.255.255.255;
657       }
658       This is a very complicated  dhclient.conf  file  -  in  general,  yours
659       should  be much simpler.  In many cases, it's sufficient to just create
660       an empty dhclient.conf file - the defaults are usually fine.
661

SEE ALSO

663       dhcp-options(5),    dhcp-eval(5),     dhclient.leases(5),     dhcpd(8),
664       dhcpd.conf(5), RFC2132, RFC2131.
665

AUTHOR

667       dhclient(8)  Information about Internet Systems Consortium can be found
668       at https://www.isc.org.
669
670
671
672                                                              dhclient.conf(5)
Impressum