dnsjava is an implementation of DNS in Java. It supports all defined record types (including the DNSSEC
types), and unknown types. It can be used for queries, zone transfers, and dynamic updates. It includes a cache
which can be used by clients, and a minimal implementation of a server. It supports TSIG authenticated messages,
partial DNSSEC verification, and EDNS0.