/* Void Main's man pages */

{ phpMan } else { main(); }

Command: man perldoc info search(apropos)  


dhclient(8)                                                                                                          dhclient(8)



NAME
       dhclient - Dynamic Host Configuration Protocol Client

SYNOPSIS
       dhclient  [  -4 | -6 ] [ -S ] [ -N [ -N...  ] ] [ -T [ -T...  ] ] [ -P [ -P...  ] ] [ -D LL|LLT ] [ -p port ] [ -d ] [ -e
       VAR=value ] [ -q ] [ -1 ] [ -r | -x ] [ -lf lease-file ] [ -pf pid-file ] [ -cf config-file ] [ -sf script-file  ]  [  -s
       server  ] [ -g relay ] [ -n ] [ -nc ] [ -nw ] [ -w ] [ -B ] [ -I dhcp-client-identifier ] [ -H host-name ] [ -F fqdn.fqdn
       ] [ -V vendor-class-identifier ] [ -R request-option-list ] [ -timeout timeout ] [ -v ] [ --version ] [ if0 [ ...ifN ] ]

DESCRIPTION
       The Internet Systems Consortium DHCP Client, dhclient, provides a means for configuring one or  more  network  interfaces
       using  the  Dynamic  Host  Configuration Protocol, BOOTP protocol, or if these protocols fail, by statically assigning an
       address.

OPERATION
       The DHCP protocol allows a host to contact a central server which maintains a list of IP addresses which may be  assigned
       on  one  or more subnets.   A DHCP client may request an address from this pool, and then use it on a temporary basis for
       communication on network.   The DHCP protocol also provides a mechanism whereby a  client  can  learn  important  details
       about  the  network to which it is attached, such as the location of a default router, the location of a name server, and
       so on.

       On startup, dhclient reads the dhclient.conf for configuration instructions.   It then gets a list  of  all  the  network
       interfaces  that are configured in the current system.   For each interface, it attempts to configure the interface using
       the DHCP protocol.

       In order to keep track of leases across system reboots and server restarts, dhclient keeps a list of leases it  has  been
       assigned  in  the  dhclient.leases(5)  file.    On  startup,  after  reading  the  dhclient.conf file, dhclient reads the
       dhclient.leases file to refresh its memory about what leases it has been assigned.

       When a new lease is acquired, it is appended to the end of the dhclient.leases file.   In order to prevent the file  from
       becoming  arbitrarily  large,  from time to time dhclient creates a new dhclient.leases file from its in-core lease data-
       base.  The old version of the dhclient.leases file is retained under  the  name  dhclient.leases~  until  the  next  time
       dhclient rewrites the database.

       Old  leases  are  kept around in case the DHCP server is unavailable when dhclient is first invoked (generally during the
       initial system boot process).   In that event, old leases from the dhclient.leases file which have not  yet  expired  are
       tested,  and if they are determined to be valid, they are used until either they expire or the DHCP server becomes avail-
       able.

       A mobile host which may sometimes need to access a network on which no DHCP server exists may be preloaded with  a  lease
       for a fixed address on that network.   When all attempts to contact a DHCP server have failed, dhclient will try to vali-
       date the static lease, and if it succeeds, will use that lease until it is restarted.

       A mobile host may also travel to some networks on which DHCP is not available but BOOTP is.   In that  case,  it  may  be
       advantageous  to  arrange  with  the  network administrator for an entry on the BOOTP database, so that the host can boot
       quickly on that network rather than cycling through the list of old leases.

COMMAND LINE
       The names of the network interfaces that dhclient should attempt to configure may be specified on the command  line.   If
       no  interface names are specified on the command line dhclient will normally identify all network interfaces, eliminating
       non-broadcast interfaces if possible, and attempt to configure each interface.

       It is also possible to specify interfaces by name in the dhclient.conf(5) file.   If interfaces  are  specified  in  this
       way, then the client will only configure interfaces that are either specified in the configuration file or on the command
       line, and will ignore all other interfaces.

OPTIONS
       -4     Use the DHCPv4 protocol to obtain an IPv4 address and configuration parameters (default).


       -6     Use the DHCPv6 protocol to obtain whatever IPv6 addresses are available along with configuration parameters.   The
              functionality of DHCPv6 mode may be modified with the -S , -T , and -N options.


       -S     Perform  an information-only request over DHCPv6 to get stateless configuration parameters.  It is not recommended
              to combine this option with the -N , -P , or -T options or to share lease files between different modes of  opera-
              tion.  Only valid with the -6 option.


       -N     Perform a normal (IA_NA) address query over DHCPv6.  It is not recommended to combine this option with the -P , -S
              , or -T options or to share lease files between different modes of operation.  Only valid with the -6 option.


       -T     Perform a temporary (IA_TA) address query over DHCPv6 (disables normal address query).  It is not  recommended  to
              combine this option with the -N , -P , or -S options or to share lease files between different modes of operation.
              Only valid with the -6 option.


       -P     Enable IPv6 prefix delegation (disables normal address query).  It is not not recommended to combine  this  option
              with  the  -N  , -S , or -T options or to share lease files between different modes of operation.  Only valid with
              the -6 option.


       -D     By default, DHCPv6 dhclient creates an identifier based on the link-layer address (DUID-LL) if it  is  running  in
              stateless  mode  (with -S, not requesting an address), or it creates an identifier based on the link-layer address
              plus a timestamp (DUID-LLT) if it is running in stateful mode (without -S, requesting an address).   -D  overrides
              this default, with a value of either "LL" or "LLT".


       -p <port number>
              The UDP port number the DHCP client should listen and transmit on.  If unspecified, dhclient uses the default port
              68.  This option is mostly useful for debugging purposes.  If a different port is specified for the client to lis-
              ten and transmit on, the client will also use a different destination port - one less than the specified port.


       -d     Force  dhclient  to run as a foreground process.  This is useful when running the client under a debugger, or when
              running it out of inittab on System V systems.


       -e VAR=value
              Define additional environment variables for the environment where dhclient-script executes.  You may specify  mul-
              tiplate -e options on the command line.  For example: -e IF_METRIC=1


       -q     Suppress all terminal and log output except error messages.


       -1     Try once to get a lease.  One failure, exit with code 2.


       -r     Tell dhclient to release the current lease it has from the server.  This is not required by the DHCP protocol, but
              some ISPs require their clients to notify the server if they wish to release an assigned IP address.


       -lf <lease-file>
              Path to the lease database file.  If unspecified, the default /var/lib/dhclient/dhclient.leases is used.


       -pf <pid-file>
              Path to the process ID file.  If unspecified, the default /var/run/dhclient.pid is used.


       -cf <config-file>
              Path to the client configuration file.  If unspecified, the default /etc/dhcp/dhclient.conf is used.


       -sf <script-file>
              Path to the network configuration script invoked by dhclient when it gets a lease.  If  unspecified,  the  default
              /sbin/dhclient-script is used.


       -s <server>
              Specifiy  the  server  IP address or fully qualified domain name to transmit DHCP protocol messages to.  Normally,
              dhclient transmits these messages to 255.255.255.255 (the IP  limited  broadcast  address).   Overriding  this  is
              mostly useful for debugging purposes.


       -g <relay>
              Only  for  debugging.   Set  the  giaddr  field of all packets the client sends to the IP address specified.  This
              should not be expected to work in any consistent or useful way.


       -n     Do not configure any interfaces.  Most useful combined with the -w option.


       -nc    Do not drop capabilities.

              Normally, if dhclient was compiled with libcap-ng support,  dhclient  drops  most  capabilities  immediately  upon
              startup.   While  more secure, this greatly restricts the additional actions that hooks in dhclient-script (8) can
              take.  (For example, any daemons that dhclient-script (8) starts or restarts will inherit the restricted capabili-
              ties  as  well,  which  may  interfere with their correct operation.)  Thus, the -nc option can be used to prevent
              dhclient from dropping capabilities.

              The -nc option is ignored if dhclient was not compiled with libcap-ng support.


       -nw    Become a daemon process immediately (nowait) rather than waiting until an IP address has been acquired.


       -w     Keep running even if no network interfaces are found.  The omshell program can be used to notify the client when a
              network interface has been added or removed so it can attempt to configure an IP address on that interface.


       -B     Set the BOOTP broadcast flag in request packets so servers will always broadcast replies.


       -I <dhcp-client-identifier>
              Specify the dhcp-client-identifier option to send to the DHCP server.


       -H <host-name>
              Specify the host-name option to send to the DHCP server.  The host-name string only contains the client's hostname
              prefix, to which the server will append the ddns-domainname or domain-name options, if any, to  derive  the  fully
              qualified domain name of the client.  The -H option cannot be used with the -F option.


       -F <fqdn.fqdn>
              Specify  the  fqdn.fqdn  option  to  send to the DHCP server.  This option cannot be used with the -H option.  The
              fqdn.fqdn option must specify the complete domain name of the client host, which the server may  use  for  dynamic
              DNS updates.


       -V <vendor-class-identifier>
              Specify the vendor-class-identifier option to send to the DHCP server.


       -R <option>[,<option>...]
              Specify  the  list  of  options the client is to request from the server.  The option list must be a single string
              consisting of option names separated by at least one command and optional space characters.   The  default  option
              list is:


                  subnet-mask, broadcast-address, time-offset, routers,
                  domain-search, domain-name, domain-name-servers, host-name,
                  nis-domain, nis-servers, ntp-servers, interface-mtu

              The -R option does not append options to the default request, it overrides the default request list.  Keep this in
              mind if you want to request an additional option besides the default request list.  You will have to  specify  all
              option names for the -R parameter.


       -timeout <timeout>
              Specify  the  time  after  which dhclient will decide that no DHCP servers can be contacted when no responses have
              been received.


       -v     Enable verbose log messages.


       If the client is killed by a signale (for example at shutdown or reboot), it will not execute the dhclient-script (8)  at
       exit.  However, if you shut the client down gracefully with -r or -x it will execute dhclient-script (8) at shutdown with
       the specific reason for calling the script set in the environment table.

CONFIGURATION
       The syntax of the dhclient.conf(5) file is discussed separately.

OMAPI
       The DHCP client provides some ability to control it while it is running, without stopping it.  This  capability  is  pro-
       vided  using  OMAPI, an API for manipulating remote objects.  OMAPI clients connect to the client using TCP/IP, authenti-
       cate, and can then examine the client's current status and make changes to it.

       Rather than implementing the underlying OMAPI protocol directly, user programs  should  use  the  dhcpctl  API  or  OMAPI
       itself.    Dhcpctl  is  a  wrapper  that  handles  some  of the housekeeping chores that OMAPI does not do automatically.
       Dhcpctl and OMAPI are documented in dhcpctl(3) and omapi(3).   Most things you'd want to do with the client can  be  done
       directly using the omshell(1) command, rather than having to write a special program.

THE CONTROL OBJECT
       The control object allows you to shut the client down, releasing all leases that it holds and deleting any DNS records it
       may have added.  It also allows you to pause the client - this unconfigures any interfaces the client is using.   You can
       then  restart  it,  which causes it to reconfigure those interfaces.   You would normally pause the client prior to going
       into hibernation or sleep on a laptop computer.   You would then resume it after the power comes back.   This  allows  PC
       cards  to be shut down while the computer is hibernating or sleeping, and then reinitialized to their previous state once
       the computer comes out of hibernation or sleep.

       The control object has one attribute - the state attribute.   To shut the client down, set its state attribute to 2.   It
       will automatically do a DHCPRELEASE.   To pause it, set its state attribute to 3.   To resume it, set its state attribute
       to 4.

FILES
       /sbin/dhclient-script,      /etc/dhcp/dhclient.conf,      /var/lib/dhclient/dhclient.leases,       /var/run/dhclient.pid,
       /var/lib/dhclient/dhclient.leases~.

SEE ALSO
       dhcpd(8), dhcrelay(8), dhclient-script(8), dhclient.conf(5), dhclient.leases(5), dhcp-eval(5).

AUTHOR
       dhclient(8)  has  been  written  for  Internet Systems Consortium by Ted Lemon in cooperation with Vixie Enterprises.  To
       learn more about Internet Systems Consortium,  see  https://www.isc.org  To  learn  more  about  Vixie  Enterprises,  see
       http://www.vix.com.

       This  client  was  substantially  modified  and  enhanced  by  Elliot  Poger for use on Linux while he was working on the
       MosquitoNet project at Stanford.

       The current version owes much to Elliot's Linux enhancements, but was substantially reorganized and  partially  rewritten
       by  Ted  Lemon  so  as to use the same networking framework that the Internet Systems Consortium DHCP server uses.   Much
       system-specific configuration code was moved into a shell script so that as support for more operating systems is  added,
       it  will  not  be necessary to port and maintain system-specific configuration code to these operating systems - instead,
       the shell script can invoke the native tools to accomplish the same purpose.

                                                                                                                     dhclient(8)

Valid XHTML 1.0!Valid CSS!