dhcrelay(8)                                                        dhcrelay(8)

       dhcrelay - Dynamic Host Configuration Protocol Relay Agent

       dhcrelay  [ -4 ] [ -dqaD ] [ -p port ] [ -c count ] [ -A length ] [ -pf
       pid-file ] [ --no-pid ] [ -m append | replace | forward | discard  ]  [
       -i interface0 [ ...  -i interfaceN ] ] server0 [ ...serverN ]

       dhcrelay  -6 [ -dqI ] [ -p port ] [ -c count ] [ -pf pid-file ] [ --no-
       pid ] -l lower0 [ ...  -l lowerN ] -u upper0 [ ...  -u upperN ]

       The Internet Systems Consortium DHCP Relay Agent, dhcrelay, provides  a
       means  for  relaying  DHCP and BOOTP requests from a subnet to which no
       DHCP server is directly connected to one or more DHCP servers on  other
       subnets.  It supports both DHCPv4/BOOTP and DHCPv6 protocols.

       The  DHCP Relay Agent listens for DHCPv4 or DHCPv6 queries from clients
       or other relay agents on one or more interfaces, passing them along  to
       ``upstream''  servers or relay agents as specified on the command line.
       When a reply is received from upstream, it is multicast or unicast back
       downstream to the source of the original request.

       Protocol selection options:

       -6     Run  dhcrelay as a DHCPv6 relay agent.  Incompatible with the -4

       -4     Run dhcrelay as a DHCPv4/BOOTP relay agent.  This is the default
              mode  of operation, so the argument is not necessary, but may be
              specified for clarity.  Incompatible with -6.

       Specifying DHCPv4/BOOTP servers

       In DHCPv4 mode, a list of one or more server addresses must  be  speci-
       fied  on  the  command  line,  to  which  DHCP/BOOTP  queries should be

       Options available for both DHCPv4 and DHCPv6:

       -c COUNT
              Maximum hop count.  When forwarding packets,  dhcrelay  discards
              packets which have reached a hop count of COUNT.  Default is 10.
              Maximum is 255.

       -d     Force dhcrelay to run as a foreground process.  Useful when run-
              ning  dhcrelay  under  a  debugger, or running out of inittab on
              System V systems.

       -p PORT
              Listen and transmit on port PORT.  This  is  mostly  useful  for
              debugging  purposes.   Default  is  port 67 for DHCPv4/BOOTP, or
              port 547 for DHCPv6.

       -q     Quiet mode.  Prevents dhcrelay6 from printing its  network  con-
              figuration on startup.

       -pf pid-file
              Path to alternate pid file.

              Option  to  disable  writing  pid files.  By default the program
              will write a pid file.

       Options available in DHCPv4 mode only:

       -a     Append an agent option field to each request  before  forwarding
              it  to  the  server.  Agent option fields in responses sent from
              servers to clients  will  be  stripped  before  forwarding  such
              responses  back to the client.  The agent option field will con-
              tain two agent options: the Circuit ID suboption and the  Remote
              ID  suboption.   Currently, the Circuit ID will be the printable
              name of the interface on which the client request was  received.
              The  client supports inclusion of a Remote ID suboption as well,
              but this is not used by default.

       -A LENGTH
              Specify the maximum  packet  size  to  send  to  a  DHCPv4/BOOTP
              server.   This might be done to allow sufficient space for addi-
              tion of relay agent options while still fitting into the  Ether-
              net MTU size.

       -D     Drop  packets  from upstream servers if they contain Relay Agent
              Information  options  that  indicate  they  were  generated   in
              response  to  a query that came via a different relay agent.  If
              this option is not specified, such packets will be relayed  any-

       -i ifname
              Listen  for  DHCPv4/BOOTP queries on interface ifname.  Multiple
              interfaces may be specified by using more than  one  -i  option.
              If  no  interfaces  are  specified on the command line, dhcrelay
              will identify all network interfaces, eliminating  non-broadcast
              interfaces if possible, and attempt to listen on all of them.

       -m append|replace|forward|discard
              Control  the  handling  of incoming DHCPv4 packets which already
              contain relay agent options.  If such a  packet  does  not  have
              giaddr  set  in  its header, the DHCP standard requires that the
              packet be discarded.  However, if giaddr is set, the relay agent
              may  handle  the  situation in four ways:  It may append its own
              set of relay options to the packet, leaving the supplied  option
              field intact; it may replace the existing agent option field; it
              may forward the packet unchanged; or, it may discard it.

              To use this option you must also enable the -a option.

       Options available in DHCPv6 mode only:

       -I     Force use of the DHCPv6 Interface-ID  option.   This  option  is
              automatically  sent when there are two or more downstream inter-
              faces in use, to  disambiguate  between  them.   The  -I  option
              causes  dhcrelay  to  send  the option even if there is only one
              downstream interface.

       -l [address%]ifname[#index]
              Specifies the ``lower'' network interface for DHCPv6 relay mode:
              the  interface on which queries will be received from clients or
              from other relay  agents.   At  least  one  -l  option  must  be
              included  in  the command line when running in DHCPv6 mode.  The
              interface name  ifname  is  a  mandatory  parameter.   The  link
              address can be specified by address%; if it isn't, dhcrelay will
              use the first non-link-local address configured  on  the  inter-
              face.   The  optional  #index  parameter specifies the interface

       -u [address%]ifname
              Specifies the ``upper'' network interface for DHCPv6 relay mode:
              the  interface  to  which  queries  from clients and other relay
              agents should be forwarded.  At least  one  -u  option  must  be
              included  in  the command line when running in DHCPv6 mode.  The
              interface name ifname is a mandatory parameter. The  destination
              unicast  or  multicast  address can be specified by address%; if
              not specified, the  relay  agent  will  forward  to  the  DHCPv6
              All_DHCP_Relay_Agents_and_Servers multicast address.

       It  is  possible to specify the same interface with different addresses
       more than once, and even, when the system supports it, to use the  same
       interface as both upper and lower interfaces.

       dhclient(8), dhcpd(8), RFC3315, RFC2132, RFC2131.

       Using the same interface on both upper and lower sides may cause loops,
       so when running this way, the maximum hop count should be set to a  low

       The loopback interface is not (yet) recognized as a valid interface.

       dhcrelay(8)  To  learn  more  about  Internet  Systems  Consortium, see


You can also request any man page by name and (optionally) by section:


Use the DEFAULT collection to view manual pages for third-party software.

©1994 Man-cgi 1.15, Panagiotis Christias <christia@softlab.ntua.gr>
©1996-2014 Modified for NetBSD by Kimmo Suominen