home | help
dhcrelay(8)		     System Manager's Manual		     dhcrelay(8)

NAME
     dhcrelay - Dynamic Host Configuration Protocol Relay Agent

SYNOPSIS
     dhcrelay  [  -4 ] [ -dqaD ] [ -p port ] [ -c count ] [ -A length ] [ -m ap-
     pend | replace | forward | discard ] [ -i interface0 [ ...  -i interfaceN ]
     ] server0 [ ...serverN ]

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

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

OPERATION
     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 ``up-
     stream'' 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.

COMMAND LINE
     Protocol selection options:

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

     -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 specified on
     the command line, to which DHCP/BOOTP queries should be relayed.

     Options available for both DHCPv4 and DHCPv6:

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

     -d     Force  dhcrelay to run as a foreground process.  Useful when running
	    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 debug-
	    ging purposes.  Default is port 67 for DHCPv4/BOOTP, or port 547 for
	    DHCPv6.

     -q     Quiet mode.  Prevents dhcrelay6 from printing its network configura-
	    tion on startup.

     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 contain 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 addition  of  relay
	    agent options while still fitting into the Ethernet MTU size.

     -D     Drop  packets  from upstream servers if they contain Relay Agent In-
	    formation 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 anyway.

     -i ifname
	    Listen  for  DHCPv4/BOOTP queries on interface ifname.  Multiple in-
	    terfaces 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 pos-
	    sible, and attempt to listen on all of them.

     -m append|replace|forward|discard
	    Control  the  handling of incoming DHCPv4 packets which already con-
	    tain relay agent options.  If such a packet does not have giaddr set
	    in its header, the DHCP standard requires that the	packet	be  dis-
	    carded.   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 re-
	    place the existing agent option field; it may forward the packet un-
	    changed; or, it may discard it.

     Options available in DHCPv6 mode only:

     -I     Force use of the DHCPv6 Interface-ID option.  This option  is  auto-
	    matically  sent  when there are two or more downstream interfaces 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  ad-
	    dress%;  if it isn't, dhcrelay will use the first non-link-local ad-
	    dress configured on the interface.	The  optional  #index  parameter
	    specifies the interface index.

     -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  ad-
	    dress  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.

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

BUGS
     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 value.

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

AUTHOR
     dhcrelay(8)   To	learn	more  about  Internet  Systems	Consortium,  see
     https://www.isc.org

								     dhcrelay(8)

home | help