adns is a resolver library for C (and C++) programs. In contrast with
the existing interfaces, gethostbyname et al and libresolv, it has the
following features:
* It is reasonably easy to use for simple programs which just want
to translate names to addresses, look up MX records, etc.
* It can be used in an asynchronous, non-blocking, manner. Many
queries can be handled simultaneously.
Technical note: adns requires a real nameserver like BIND or
Dents running on the same system or a nearby one, which must be
willing to provide `recursive service'. I.e., adns is a `stub
resolver'.
DNSCheck is a program that is designed to help people check, measure and
hopefully also understand the workings of the Domain Name System. When
used to check an domain (aka zone) is submitted to DNSCheck, it will
investigate the general health by performing various tests and sanity
checks.
liburcu is a LGPLv2.1 userspace RCU (read-copy-update)
library. This data synchronization library provides
read-side access which scales linearly with the number
of cores. It does so by allowing multiples copies of a
given data structure to live at the same time, and by
monitoring the data structure accesses to detect grace
periods after which memory reclamation is possible.
NSD (Name Server Daemon) is a complete implementation of an
authoritative DNS nameserver.
This port contains a subset of the DJBDNS package.
It includes several useful Domain Name System (DNS) tools:
- dnsfilter: a parallel IP-address-to-host-name converter
- dnsip, dnsipq, dnsname, dnstxt, and dnsmx: simple
command-line interfaces to DNS
- dnsq, dnstrace, dnstracesort: DNS debugging tools
To quote from the SourceForge project description:
gh-tool is a command-line interface to gethostby*, in libresolv/libc.
It allows one to check the local system's notion of an IP->DNS or
DNS->IP mapping, including aliases, directly, rather than digging for
mappings in DNS, which may or may not be relevant.
CurveDNS is a forwarding nameserver adding DNSCurve to DNS,
and it's the first publicly released forwarding implementation
that implements the DNSCurve protocol.
pycares is a Python module which provides an interface to c-ares.
c-ares is a C library that performs DNS requests and name
resolutions asynchronously.