This section defines a "Home Server" which is another RADIUS server that gets sent proxied requests.
##### `secret`
The shared secret use to "encrypt" and "sign" packets between FreeRADIUS and the home server.
##### `type`
Home servers can be sent Access-Request packets or Accounting-Request packets. Allowed values are:
*`auth` Handles Access-Request packets
*`acct` Handles Accounting-Request packets
*`auth+acct` Handles Access-Request packets at "port" and Accounting-Request packets at "port + 1"
*`coa` Handles CoA-Request and Disconnect-Request packets.
Default: `auth`
##### `ipaddr`
IPv4 address or hostname of the home server. Specify one of `ipaddr`, `ipv6addr` or `virtual_server`
##### `ipv6addr`
IPv6 address or hostname of the home server. Specify one of `ipaddr`, `ipv6addr` or `virtual_server`
##### `virtual_server`
If you specify a virtual_server here, then requests will be proxied internally to that virtual server.
These requests CANNOT be proxied again, however. The intent is to have the local server handle packets
when all home servers are dead. Specify one of `ipaddr`, `ipv6addr` or `virtual_server`
##### `port`
The port to which packets are sent. Usually 1812 for type "auth", and 1813 for type "acct".
Older servers may use 1645 and 1646. Use 3799 for type "coa" Default: `1812`
##### `proto`
The transport protocol. If unspecified, defaults to "udp", which is the traditional
RADIUS transport. It may also be "tcp", in which case TCP will be used to talk to
this home server. Default: `udp`
#### `freeradius::home_server_pool`
##### `home_server`
An array of one or more home servers. The names of the home servers are NOT the hostnames, but the names
of the sections. (e.g. `home_server foo {...}` has name "foo".
Note that ALL home servers listed here have to be of the same type. i.e. they all have to be "auth", or they all have to
be "acct", or they all have to be "auth+acct".
##### `type`
The type of this pool controls how home servers are chosen.
*`fail-over` the request is sent to the first live home server in the list. i.e. If the first home server is marked "dead", the second one is chosen, etc.
*`load-balance` the least busy home server is chosen For non-EAP auth methods, and for acct packets, we recommend using "load-balance". It will ensure the highest availability for your network.
*`client-balance` the home server is chosen by hashing the source IP address of the packet. This configuration is most useful to do simple load balancing for EAP sessions
*`client-port-balance` the home server is chosen by hashing the source IP address and source port of the packet.
*`keyed-balance` the home server is chosen by hashing (FNV) the contents of the Load-Balance-Key attribute from the control items.
The default type is `fail-over`.
##### `virtual_server`
A `virtual_server` may be specified here. If so, the "pre-proxy" and "post-proxy" sections are called when
the request is proxied, and when a response is received.
##### `fallback`
If ALL home servers are dead, then this "fallback" home server is used. If set, it takes precedence over any realm-based
fallback, such as the DEFAULT realm.
For reasons of stability, this home server SHOULD be a virtual server. Otherwise, the fallback may itself be dead!