What is it ?
s6-networking is a suite of small networking utilities for Unix systems.
It includes command-line client and server management, TCP access
control, privilege escalation across UNIX domain sockets, IDENT
protocol management and clock synchronization.
Optionally, it also includes command-line TLS/SSL tools for
If the underlying
skalibs has been
compiled with IPv6 support, s6-networking is IPv6-ready.
- A POSIX-compliant system with a standard C development environment
- GNU make, version 3.81 or later
- skalibs version
184.108.40.206 or later. It's a build-time requirement. It's also a run-time
requirement if you link against the shared version of the skalibs
- execline version
220.127.116.11 or later. It's a build-time and run-time requirement.
- s6 version
18.104.22.168 or later. It's a build-time and run-time requirement.
- s6-dns version
22.214.171.124 or later. It's a build-time requirement. It's also a run-time
requirement if you link against the shared version of the s6-dns
- If you want to build the secure communication tools:
The chosen library is a build-time requirement, and also a
run-time requirement if you link against its shared version.
- Either LibreSSL version 2.4.5
- Or BearSSL version 0.3
or later. This is experimental.
s6-networking is free software. It is available under the
- See the enclosed INSTALL file for installation details.
- This page lists the differences to be aware of between
the previous versions of s6-networking and the current one.
All these commands exit 111 if they encounter a temporary error or
hardware error, and
100 if they encounter a permanent error - such as a misuse. Short-lived
commands exit 0 on success. Other exit codes are documented in the
System clock synchronization
UCSPI TCP implementation
UCSPI tools for secure communication (TLS protocol) over TCP
TCP access control
IDENT protocol implementation
- s6-networking is discussed on the