aboutsummaryrefslogtreecommitdiffstats
s6-networking - small networking utilities

Software
www.skarnet.org

s6-networking

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 secure communications.

If the underlying skalibs has been compiled with IPv6 support, s6-networking is IPv6-ready.

The s6- prefix is slightly misleading, and probably a naming mistake. This package is not, stricto sensu, a part of the s6 ecosystem, and it is nowhere near a requirement for a s6-based installation. However, it provides useful networking utilities often used with s6, so keeping the prefix makes some kind of sense; you can see s6-networking, as well as its dependency s6-dns, as extensions to the s6 ecosystem.


Installation

Requirements

  • A POSIX-compliant system with a standard C development environment
  • GNU make, version 3.81 or later
  • skalibs version 2.15.0.0 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 library.
  • (Optional, but recommended) execline version 2.9.9.0 or later. It's a build-time and run-time requirement.
  • s6 version 2.15.0.0 or later. It's a build-time and run-time requirement.
  • s6-dns version 2.4.1.2 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 libraries.
  • 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.

Licensing

s6-networking is free software. It is available under the ISC license.

Download

Compilation

  • See the enclosed INSTALL file for installation details.

Upgrade notes

  • This page lists the differences to be aware of between the previous versions of s6-networking and the current one.

Reference

Commands

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 relevant page.

System clock synchronization

UCSPI TCP implementation

UCSPI tools for secure communication (TLS protocol) over TCP

TCP access control

PROXY protocol implementation

IDENT protocol implementation

Miscellaneous utilities

Libraries


Related resources

s6-networking manual pages

s6-networking discussion

  • s6-networking is discussed on the skaware mailing-list.

s6-networking manual pages

Similar work

  • ucspi-tcp is the original inspiration for s6-networking. It works, but is unfortunately unmaintained by the author. s6-networking follows the same design principles.
  • ipsvd is a similar program suite.