Next: , Previous: , Up: User  


Server part

Except for common -stats, -egd, -syslog options server has the following ones:

-proto

Network protocol to use. Can be udp (default), tcp or all.

-bind

Address (host:port format) we must bind to.

-conf

Path to YAML file with the configuration.

-proxy

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

Next: , Previous: , Up: User