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

FreeBSD Manual Pages

  
 
  

home | help
MLVPN.CONF(5)							 MLVPN.CONF(5)

NAME
       mlvpn.conf - MLVPN configuration

DESCRIPTION
       mlvpn(1)	configuration file

SYNTAX
       mlvpn.conf(5)  is a "ini	style" config file. settings are stores	within
       sections, surrounded by []. Comments can	be inserted anyware,  starting
       with  #.	 Key / values are plain	ascii separated	by "=".	Strings	should
       be escaped using	double quotes '"'

   GENERAL
       The general section is reserved for global configuration.

       o   statuscommand = "/path/to/secure.script.sh"

	   MANDATORY

	   statuscommand path is called	with  two  parameters  when  a	status
	   changed  within mlvpn. First	argument is the	interface name.	Second
	   argument is the status name that changed.

       o   tuntap_up: at least one tunnel is up	and running

       o   tuntap_down:	all tunnels are	down

       o   rtun_up: one	tunnel changed status to up ($3	is the tunnel name)

       o   rtun_down: one tunnel changed status	to  down  ($3  is  the	tunnel
	   name)

       See the example file mlvpn_updown.sh for	more informations

       o   mode	= "server"

	   MANDATORY

       o   "server": listen on bind_address, bind_port for every tunnel

       o   "client": connects to remote_address, remote_port for every tunnel

       o   timeout = 30	Timeout, expressed in seconds.

	   Triggered  when the other side does not responds to keepalive pack-
	   ets.	Keepalive are send every timeout/2 seconds.

       o   interface_name = "mlvpn0"  Set  interface  name  to	the  specified
	   value. (LINUX ONLY)

       o   password

	   MANDATORY

	   The	password  string  is used to generate a	key used by libsodium.
	   Password is mandatory and must be the same on the client and	on the
	   server.

       o   cleartext_data If set to 1, data packets will NOT be	encrypted.

	   Use with cautions.

       o   control_unix_path = "" Path to the unix socket for remote control.

       o   control_bind_host  =	 "" Bind address of the	remote control.	(HTTP)
	   (url: http://[control_bind_host]:[control_bind_port]/status)

       o   control_bind_port = "" Bind port of the remote control. (HTTP)

       o   reorder_buffer_size = 0 mlvpn includes a reordering	algorithm  for
	   it's	 aggregation.  This  variable  defines how many	packets	can be
	   held	in case	one end	of the tunnel does receive data	ouf ot order.

	   Experiment to know what value is best for you. Good starting	 point
	   can be as small as 64 packets.

	   0 disables the reordering.

       o   loss_tolerence = 0 mlvpn monitors packet loss on every link.	If the
	   packet loss ratio on	a link exceed the specified value in  percent,
	   the	link changes state to MLVPN_LOSSY and is removed from aggrega-
	   tion.

	   Lossy links ARE used	anyway if no other choices are	available  (if
	   all links are lossy)

	   100 or more disables	the loss tolerence system.

   ^A TUNNELS
       Each tunnel must	be declared in it's own	section.

       The  section  name  is  mapped  to the tunnel name. Example: "[adsl1]",
       "[adsl2]".

       o   bindhost = "0.0.0.0"	 Bind  on  a  specific	address.  (IPv4	 only)
	   (client/server)

       o   bindport = 5080 Bind	on a specific port. (client/server)

       o   remotehost =	"1.2.3.4" Address of the remote	host. (client)

       o   remoteport =	5080 Port of the remote	host. (client)

       o   bandwidth_upload  =	61440  Maximum	upload bandwidth, in bytes for
	   this	link.

	   Bandwidth is	specified in Bytes (1 KiB is 1024 Bytes).

	   This	is used	to setup the weight round-robin	 balancing  algorithm.
	   Set 0 if both links are similar. (client/server)

       o   timeout   =	 25   Override	 general   timeout   for   this	 link.
	   (client/server)

       o   fallback_only = 0 Links defined with	 fallback_only	will  be  con-
	   nected at all times,	but will only be used if all other tunnels are
	   down. (client)

   ^A FILTERS
       [filters] section associate a bpf(4) filter to  a  specific  interface.
       Filters	are  used  when	 aggregation is	used but you want to pass some
       traffic specifically through only one interface,	 without  re-ordering.
       (Like for using VoIP)

       Example filters:

       [filters]

       sdsl = udp port 5060

       adsl = udp port 5060

RELOADING
       The  configuration  can	be reloaded at any moment by sending SIGHUP to
       the child mlvpn process.

REORDERING
       The reorder buffer will be sent "as is" on the network  if  the	buffer
       can't be	reconstructed in time, ie: packet loss.	(SRTT *	2)

STATUS
       MLVPN  status  can  be monitored	by using ps. mlvpn prints it's --name,
       then the	status of each tunnel prefixed by the status.

       Status availables: !: down, @: up, ~: lossy

       Example:	mlvpn: adsl3g !3g @adsl	~wifi

       3g is down, adsl	is up and wifi is lossy	(up, but above	loss_tolerence
       threshold).

EXAMPLE
       See examples/mlvpn.conf

SEE ALSO
       mlvpn(1)

				 November 2015			 MLVPN.CONF(5)

NAME | DESCRIPTION | SYNTAX | RELOADING | REORDERING | STATUS | EXAMPLE | SEE ALSO

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

home | help