s6-dns
What is it ?
s6-dns is a suite of DNS client programs and libraries for Unix systems, as an alternative to the BIND, djbdns or other DNS clients.
s6-dns may include its own series of DNS caches and servers at some point in the future.
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 is a requirement for s6-networking, which provides useful networking utilities often used with s6, so keeping the prefix makes some kind of sense; you can see s6-dns as an extension to the s6 ecosystem.
- Why a separate client library ? Why not just use getaddrinfo() ?
- What is wrong with libresolv, BIND's client library ?
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.
Licensing
s6-dns is free software. It is available under the ISC license.
Download
- The current released version of s6-dns is 2.4.1.2. You can access its checksum here.
- Alternatively, you can checkout a copy of the
s6-dns
git repository:
git clone git://git.skarnet.org/s6-dns
- There's also a Codeberg mirror, or a GitHub mirror, or a SourceHut mirror of the s6-dns git repository.
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-dns 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.
Command-line DNS clients programs
- The s6-dnsip program
- The s6-dnsip4 program
- The s6-dnsip6 program
- The s6-dnsname program
- The s6-dnsmx program
- The s6-dnsns program
- The s6-dnssoa program
- The s6-dnssrv program
- The s6-dnstxt program
Filtering tools
Command-line qualification
DNS analysis and debug tools
Miscellaneous utilities
Libraries
Protocol implementation and synchronous resolution
Asynchronous resolution
Related resources
s6-dns discussion
- s6-dns is discussed on the skaware mailing-list.
- It can also be discussed on the cr.yp.to dns mailing-list.
Similar work
- BIND is the most widely used DNS software suite on the Internet. It's also arguably the most buggy, convoluted and impossible to understand.
- djbdns is DJB's DNS suite. It works very well, but is unfortunately unmaintained by the author. s6-dns follows the same design principles.
