Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

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 ] [ -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 ] [ -s subscriber-id	] -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
       ``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.

COMMAND	LINE
       Protocol	selection options:

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

       -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  re-
       layed.

       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 de-
	      bugging 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.

       --no-pid
	      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 re-
	      sponses 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	 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 re-
	      sponse to	a query	that came via a	 different  relay  agent.   If
	      this  option is not specified, such packets will be relayed any-
	      way.

       -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 gi-
	      addr 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 au-
	      tomatically 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.

       -s subscriber-id
	      Add  an option with the specified	subscriber-id into the packet.
	      This feature is for testing rather than production  as  it  will
	      put the same subscriber-id into the packet for all clients.

       -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 in-
	      cluded in	the command line when running in DHCPv6	mode.  The in-
	      terface  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 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  in-
	      cluded in	the command line when running in DHCPv6	mode.  The in-
	      terface 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.

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)

NAME | SYNOPSIS | DESCRIPTION | OPERATION | COMMAND LINE | SEE ALSO | BUGS | AUTHOR

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=dhcrelay&sektion=8&manpath=FreeBSD+10.1-RELEASE+and+Ports>

home | help