-Peers directory must contain subdirectories with the names of client's
-identities in hexadecimal notation. Each subdirectory has the following
-files:
-
-@table @code
-
-@item verifier
-@strong{Required}. Contains corresponding verifier used to authenticate
-the client in hexadecimal notation. See @ref{Verifier} for how
-to create it.
-
-@item up.sh
-@strong{Required}. up-script executes each time connection with the
-client is established. It's @emph{stdout} output must contain TAP
-interface name on the first string. This script can be simple
-@code{echo tap10}, or maybe more advanced like this:
- @example
- #!/bin/sh
- $tap=$(ifconfig tap create)
- ifconfig $tap inet6 fc00::1/96 mtu 1412 up
- echo $tap
- @end example
-
-@item down.sh
-Optional. Same as @code{up.sh} above, but executes when connection is
-lost.
-
-@item name
-Optional. Contains human readable username. Used to beauty output of
-@ref{Stats}.
-
-@item timeout
-Optional. Contains @ref{Timeout} setting (decimal notation) in seconds.
-Otherwise default minute timeout will be used.
-
-@item noise
-Optional. Contains either "1" (enable @ref{Noise} adding), or "0".
-
-@item cpr
-Optional. Contains @ref{CPR} setting (decimal notation) in KiB/sec.
-
-@end table
-
-Each minute server refreshes peers directory contents and adds newly
-appeared identities, deletes an obsolete ones.
-
-You can use convenient @code{utils/newclient.sh} script for new client
+Configuration file is YAML file with following example structure:
+
+@verbatim
+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
+[...]
+@end verbatim
+
+At least one of either @code{iface} or @code{up} must be specified. If
+you specify @code{iface}, then it will be forcefully used to determine
+what TUN/TAP interface will be used. If it is not specified, then
+up-@ref{Scripts, script} must output interface's name to stdout
+(first output line).
+
+For example up-script can be just @code{echo tap10}, or more advanced
+like the following one:
+
+@verbatim
+#!/bin/sh
+$tap=$(ifconfig tap create)
+ifconfig $tap inet6 fc00::1/96 mtu 1412 up
+echo $tap
+@end verbatim
+
+Each minute server rereads and refreshes peers configuration and adds
+newly appeared identities, deletes an obsolete ones.
+
+You can use convenient @command{utils/newclient.sh} script for new client