Home Man
Today's Posts

Linux & Unix Commands - Search Man Pages

Linux 2.6 - man page for dhclient (linux section 8)

dhclient(8)			     System Manager's Manual			      dhclient(8)

       dhclient - Dynamic Host Configuration Protocol Client

       dhclient  [  -4	|  -6 ] [ -S ] [ -N [ -N...  ] ] [ -T [ -T...  ] ] [ -P [ -P...  ] ] [ -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 ] [ -nw ] [ -w ]
       [ -v ] [ --version ] [ if0 [ ...ifN ] ]

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

       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.

       If  given the -4 command line argument (default), dhclient will use the DHCPv4 protocol to
       obtain an IPv4 address and configuration parameters.

       If given the -6 command line argument, dhclient will use the  DHCPv6  protocol  to  obtain
       whatever  IPv6 addresses are available along with configuration parameters. But with -S it
       uses Information-request to get	only  (i.e.,  without  address)  stateless  configuration

       The  default  DHCPv6  behavior  is  modified  too  with	-T  which asks for IPv6 temporary
       addresses, one set per -T flag.	-P enables the	IPv6  prefix  delegation.   As	temporary
       addresses  or prefix delegation disables the normal address query, -N restores it. Note it
       is not recommended to mix queries of different types together, or even to share the  lease
       file between them.

       If  given  the --version command line argument, dhclient will print its version number and

       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 cre-
       ates  a	new dhclient.leases file from its in-core lease database.  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

       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 validate 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.

       The names of the network interfaces that dhclient should attempt to configure may be spec-
       ified on the command line.  If no interface  names  are	specified  on  the  command  line
       dhclient  will  normally identify all network interfaces, eliminating non-broadcast inter-
       faces 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.

       If the DHCP client should listen and transmit on a port other than the standard (port 68),
       the -p flag may used.  It should be followed by the udp port number that  dhclient  should
       use.   This is mostly useful for debugging purposes.  If a different port is specified for
       the client to listen on and transmit on, the client will also use a different  destination
       port - one less than the specified port.

       The  DHCP  client normally transmits any protocol messages it sends before acquiring an IP
       address to,, the IP limited broadcast address.	For  debugging	purposes,
       it  may be useful to have the server transmit these messages to some other address.   This
       can be specified with the -s flag, followed by the IP address or domain name of the desti-
       nation.	This feature is not supported by DHCPv6.

       For  testing  purposes,	the  giaddr field of all packets that the client sends can be set
       using the -g flag, followed by the IP address to send.	This is only useful for  testing,
       and should not be expected to work in any consistent or useful way.

       The  DHCP client will normally run in the foreground until it has configured an interface,
       and then will revert to running in the background.   To run force dhclient to  always  run
       as a foreground process, the -d flag should be specified.  This is useful when running the
       client under a debugger, or when running it out of inittab on System V systems.

       The dhclient daemon creates its own environment when executing the dhclient-script  to  do
       the  grunt  work  of  interface	configuration.	To define extra environment variables and
       their values, use the -e flag, followed by the environment variable name and value assign-
       ment, just as one would assign a variable in a shell.  Eg: -e IF_METRIC=1

       The  client normally prints no output during its startup sequence.  It can be made to emit
       verbose messages displaying the startup sequence events until it has acquired  an  address
       by supplying the -v command line argument.  In either case, the client logs messages using
       the syslog (3) facility.  A -q command line argument is provided for backwards compatibil-
       ity, but since dhclient is quiet by default, it has no effect.

       The  client  normally  doesn't release the current lease as it is not required by the DHCP
       protocol.  Some cable ISPs require their clients to notify the  server  if  they  wish  to
       release	an  assigned  IP address.  The -r flag explicitly releases the current lease, and
       once the lease has been released, the client exits.

       The -x flag tells any currently running client to exit gracefully without releasing leases

       If  the	client is killed by a signal (for example at shutdown or reboot) it won't 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.

       The -1 flag will cause dhclient to try once to get a lease.  If it fails,  dhclient  exits
       with exit code two. In DHCPv6 the -1 flag sets the max duration of the initial exchange to
       timeout (from dhclient.conf, default sixty seconds).

       The DHCP client normally gets its configuration information from ETCDIR/dhclient.conf, its
       lease  database	from  DBDIR/dhclient.leases,  stores  its  process  ID	in  a file called
       RUNDIR/dhclient.pid, and configures the	network  interface  using  CLIENTBINDIR/dhclient-
       script  To specify different names and/or locations for these files, use the -cf, -lf, -pf
       and -sf flags, respectively, followed by the name of the file.	This can be  particularly
       useful  if,  for example, DBDIR or RUNDIR has not yet been mounted when the DHCP client is

       The DHCP client normally exits if it isn't able to identify any network interfaces to con-
       figure.	 On laptop computers and other computers with hot-swappable I/O buses, it is pos-
       sible that a broadcast interface may be added after system startup.   The -w flag  can  be
       used  to  cause	the  client  not  to exit when it doesn't find any such interfaces.   The
       omshell (1) program can then be used to notify the client when  a  network  interface  has
       been  added  or removed, so that the client can attempt to configure an IP address on that

       The DHCP client can be directed not to attempt to configure any interfaces  using  the  -n
       flag.   This is most likely to be useful in combination with the -w flag.

       The  client  can  also  be  instructed to become a daemon immediately, rather than waiting
       until it has acquired an IP address.   This can be done by supplying the -nw flag.

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

       The DHCP client provides some ability to control it while it is running, without  stopping
       it.   This  capability  is  provided  using OMAPI, an API for manipulating remote objects.
       OMAPI clients connect to the client using TCP/IP, authenticate, 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  house-
       keeping 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 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.

       CLIENTBINDIR/dhclient-script,	     ETCDIR/dhclient.conf,	   DBDIR/dhclient.leases,
       RUNDIR/dhclient.pid, DBDIR/dhclient.leases~.

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

       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 reor-
       ganized 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 configura-
       tion 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  accom-
       plish the same purpose.


All times are GMT -4. The time now is 05:39 AM.

Unix & Linux Forums Content Copyrightę1993-2018. All Rights Reserved.
Show Password