Except for common -stats, -egd, -syslog options server has the following ones:
Network protocol to use. Can be udp (default), tcp or all.
Address (host:port
format) we must bind to.
Path to YAML file with the configuration.
Start trivial HTTP Proxy server on specified host:port.
Configuration file is YAML file with following example structure:
stargrave: <-- Peer human readable name iface: tap10 <-- OPTIONAL TUN/TAP interface name mtu: 1515 <-- OPTIONAL overriden MTU up: ./stargrave-up.sh <-- OPTIONAL up-script down: ./stargrave-down.sh <-- OPTIONAL down-script timeout: 60 <-- OPTIONAL overriden timeout timesync: 0 <-- OPTIONAL time synchronization requirement noise: No <-- OPTIONAL noise enabler cpr: 64 <-- OPTIONAL constant packet rate, KiB/sec encless: No <-- OPTIONAL Encryptionless mode verifier: $baloon... <-- verifier received from client [...]
At least one of either iface
or up
must be specified. If
you specify iface
, then it will be forcefully used to determine
what TUN/TAP interface will be used. If it is not specified, then
up-script must output interface’s name to stdout
(first output line).
For example up-script can be just echo tap10
, or more advanced
like the following one:
#!/bin/sh $tap=$(ifconfig tap create) ifconfig $tap inet6 fc00::1/96 mtu 1412 up echo $tap
Each minute server rereads and refreshes peers configuration and adds newly appeared identities, deletes an obsolete ones.
You can use convenient utils/newclient.sh
script for new client
creation:
$ ./utils/newclient.sh Alice [...] Your client verifier is: $balloon$s=32768,t=16,p=2$bwR5VjeCYIQaa8SeaI3rqg Place the following YAML configuration entry on the server's side: Alice: up: /path/to/up.sh iface: or TUN/TAP interface name verifier: $balloon$s=32768,t=16,p=2$bwR5VjeCYIQaa8SeaI3rqg$KCNIqfS4DGsBTtVytamAzcISgrlEWvNxan1UfBrFu10
Example configuration file:
stargrave: iface: tap0 verifier: $balloon$s=32768,t=16,p=2$VMirzcshcHuG2V4jhUsEjw$X5fC07L8k61h3S1Oro/rC76+m0oGDTA9Bq+aWJ1uOgY slow: iface: tap1 encless: Yes mtu: 9000 cpr: 384 verifier: $balloon$s=32768,t=16,p=2$YbIA5garDqCOhtI/2EZVNg$gOo5vcEGynmpeepNscwclicfZsWxzgYFRLbgG21EZ1U