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

FreeBSD Manual Pages


home | help
RELAYD(8)		  BSD System Manager's Manual		     RELAYD(8)

     relayd -- relay daemon

     relayd [-dnv] [-D macro=value] [-f	file]

     relayd is a daemon	to relay and dynamically redirect incoming connections
     to	a target host.	Its main purposes are to run as	a load-balancer, ap-
     plication layer gateway, or transparent proxy.  The daemon	is able	to
     monitor groups of hosts for availability, which is	determined by checking
     for a specific service common to a	host group.  When availability is con-
     firmed, layer 3 and/or layer 7 forwarding services	are set	up by relayd.

     Layer 3 redirection happens at the	packet level; to configure it, relayd
     communicates with pf(4).  To allow	relayd to properly set up pf(4)	rules,
     the following line	is required in the filter section of pf.conf(5):

	   anchor "relayd/*"

     Layer 7 relaying happens at the application level and is handled by
     relayd itself.  Various application level filtering and protocol-specific
     load-balancing options are	available for relays.

     relayd works in terms of the following entities: relays, protocols, redi-
     rections, and tables.  A relay represents a layer 7 load-balancing	in-
     stance.  Each instance translates to a listening TCP or UDP port.	A
     protocol defines which actions, if	any, are taken on the packet payload
     as	data crosses a relay.  A redirection represents	a layer	3 load-balanc-
     ing instance.  Each instance translates to	a pf(4)	rdr-to rule being
     added.  A table represents	a group	of hosts which can be checked for
     availability using	the same method.  Each table contains at least one
     host.  If a table is used in a layer 3 load-balancing instance, it	will
     be	mapped to a pf(4) table	containing only	those hosts which are up.

     All these entities	can be configured in relayd.conf(5), and relayctl(8)
     can be used to alter or report on the status of each entity.

     The options are as	follows:

     -D	macro=value
	     Define macro to be	set to value on	the command line.  Overrides
	     the definition of macro in	the configuration file.

     -d	     Do	not daemonize.	If this	option is specified, relayd will run
	     in	the foreground and log to stderr.

     -f	file
	     Specify an	alternative configuration file.	 The default is

     -n	     Configtest	mode.  Only check the configuration file for validity.

     -v	     Produce more verbose output.

			     Default configuration file.
     /var/run/relayd.sock    UNIX-domain socket	used for communication with

     relayd.conf(5), relayctl(8)

     The relayd	program, formerly known	as hoststated, first appeared in
     OpenBSD 4.1.  It was renamed to relayd in OpenBSD 4.3.

     The relayd	program	was written by Pierre-Yves Ritschard <>
     and Reyk Floeter <>.

BSD				 July 16, 2013				   BSD


Want to link to this manual page? Use this URL:

home | help