More documentation and daemon improvements

This commit is contained in:
Dennis Schwerdel 2016-02-03 10:21:20 +01:00
parent 1db4fea091
commit 5fe64853f7
3 changed files with 53 additions and 1 deletions

View File

@ -4,8 +4,10 @@ This project follows [semantic versioning](http://semver.org).
### UNRELEASED
- [added] Added documentation for daemon config files
- [added] Script for performance measurements
- [added] Added more tests
- [changed] Daemon now detects network config files on its own
- [changed] Using display format for addresses
- [changed] Updated dependencies
- [changed] New measurements

View File

@ -23,7 +23,7 @@ USER=root
GROUP=root
UMASK=022
NETWORKS="default"
NETWORKS=$(for net in $(ls $NETCONFIGS); do basename $net .net; done);
DAEMON=$(which $NAME)

View File

@ -1,20 +1,70 @@
# Whether this VPN should be started with the daemon.
ENABLED=0
# The address to listen for data. [default: `0.0.0.0:3210`]
# Note: Every VPN needs a different listen address.
LISTEN=''
# Address of a peer to connect to. The address should be in the form
# `addr:port`. If the node is not started, the connection will be retried
# periodically. This parameter can be repeated to connect to multiple peers.
# Note: Several entries can be separated by spaces.
PEERS=''
# Peer timeout in seconds. The peers will exchange information periodically
# and drop peers that are silent for this period of time. [default: `1800`]
PEER_TIMEOUT=''
# Switch table entry timeout in seconds. This parameter is only used in switch
# mode. Addresses that have not been seen for the given period of time will
# be forgot. [default: `300`]
DST_TIMEOUT=''
# An optional token that identifies the network and helps to distinguish it
# from other networks.
NETWORK_ID=''
# An optional shared key to encrypt the VPN data. If this option is not set,
# the traffic will be sent unencrypted.
SHARED_KEY=''
# The encryption method to use ("aes256", or "chacha20"). Most current CPUs
# have special support for AES256 so this should be faster. For older
# computers lacking this support, only CHACHA20 is supported.
# [default: `chacha20`]
CRYPTO=''
# Name of the virtual device. Any `%d` will be filled with a free number.
# [default: `vpncloud%d`]
DEVICE=''
# Set the type of network. There are two options: **tap** devices process
# Ethernet frames **tun** devices process IP packets. [default: `tap`]
TYPE=''
# The mode of the VPN. The VPN can like a router, a switch or a hub. A **hub**
# will send all data always to all peers. A **switch** will learn addresses
# from incoming data and only send data to all peers when the address is
# unknown. A **router** will send data according to known subnets of the
# peers and ignore them otherwise. The **normal** mode is switch for tap
# devices and router for tun devices. [default: `normal`]
MODE=''
# The local subnets to use. This parameter should be in the form
# `address/prefixlen` where address is an IPv4 address, an IPv6 address, or a
# MAC address. The prefix length is the number of significant front bits that
# distinguish the subnet from other subnets. Example: `10.1.1.0/24`.
# Note: Several entries can be separated by spaces.
SUBNETS=''
# A command to setup the network interface. The command will be run (as
# parameter to `sh -c`) when the device has been created to configure it.
# The name of the allocated device will be available via the environment
# variable `IFNAME`.
IFUP=''
# A command to bring down the network interface. The command will be run (as
# parameter to `sh -c`) to remove any configuration from the device.
# The name of the allocated device will be available via the environment
# variable `IFNAME`.
IFDOWN=''