dnsjava - DNS implementation in Java

  •        1453

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. A cache is used to reduce the number of DNS queries sent. A simple tool for doing DNS lookups, a 'dig' clone and a dynamic update client are included, as well as a simple authoritative-only server.

http://www.xbill.org/dnsjava/

Tags
Implementation
License
Platform

   




Related Projects

trust-dns - A Rust based DNS client, server, and resolver

  •    Rust

A Rust based DNS client and server, built to be safe and secure from the ground up. Using the ClientFuture is safe. ClientFuture is a brand new rewrite of the old Client. It has all the same features as the old Client, but is written with the wonderful futures-rs library. Please send feedback! It currently does not cache responses, if this is a feature you'd like earlier rather than later, post a request. The validation of DNSSec is complete including NSEC. As of now NSEC3 is broken, and I may never plan to support it. I have some alternative ideas for private data in the zone. The old Client has been deprecated, so please use the ClientFuture. If this is an inconvenience, I may add a convenience wrapper around ClientFuture that would match the old Client; if this is something you would like to see, please file an issue.

skydock - Service discovery via DNS for docker

  •    Go

Docker supports DNS based service discovery now. You should use the Docker implementation instead of this project. Skydock was built at a time when Docker did not support DNS discovery or auto registration. I'll keep the repo up for past years and as reference for others but don't use it if you have a recent version of Docker.Skydock monitors docker events when containers start, stop, die, kill, etc and inserts records into a dynamic DNS server skydns. This allows standard DNS queries for services running inside docker containers. Because lets face it, if you have to modify your application code to work with other service discovery solutions you might as well just give up. DNS just works and it works well. Also you cannot be expected to modify application code that you don't own. Passing service urls via the cli or in static config files (nginx) will not be possible if your service discovery solution requires a client library just to fetch an IP.

doggo - Command-line DNS client for human

  •    Go

doggo is a modern command-line DNS client (like dig) written in Golang. It outputs information in a neat concise manner and supports protocols like DoH (DNS over HTTPS), DoT (DNS over TLS) and DNSCrypt as well. It supports multiple resolvers at once, Reverse DNS Lookups, Shell completions for zsh and fish.

dingo - A DNS client in Go that supports Google DNS over HTTPS

  •    Go

A DNS client (stub resolver) implemented in Go for the Google DNS-over-HTTPS. It effectively encrypts all your DNS traffic. It also supports OpenResolve by OpenDNS. The ultimate goal for the project is to provide a secure, caching DNS client that communicates with recursive DNS resolvers over encrypted channels only. For now, it resolves DNS queries over HTTP/2 in independent threads. The plans for future include better caching and support for QUIC.

nextdns - NextDNS CLI client (DoH Proxy)

  •    Go

NextDNS CLI is a DNS53 to DNS-over-HTTPS (DoH) proxy with advanced capabilities to get the most out of the NextDNS service. Although the most advanced features will only work with NextDNS, this program can work as a client for any DoH provider or a mix of NextDNS + another DNS (split horizon). The CLI is mostly aimed at routers and UNIX based systems, but it is also a great client for windows and macOS for people who prefer a fully open-source clients and don't mind the lack of GUI.


dog - A command-line DNS client

  •    Rust

dog is a command-line DNS client, like dig. It has colourful output, understands normal command-line argument syntax, supports the DNS-over-TLS and DNS-over-HTTPS protocols, and can emit JSON.

rethink-app - DNS over HTTPS / DNS over Tor / DNSCrypt client, firewall, and connection tracker for Android

  •    Kotlin

An OpenSnitch-inspired firewall and network monitor + a pi-hole-inspired DNS over HTTPS client with blocklists. In other words, RethinkDNS has two primary modes, DNS and Firewall. The DNS mode routes all DNS traffic generated by apps to one of two DNS over HTTPS resolvers (Cloudflare and RethinkDNS). The Firewall mode lets the user deny internet-access to entire applications based on events like screen-on / screen-off, app-foreground / app-background, connected to unmetered-connection / metered-connection / always; or based on play-store defined categories like Social, Games, Utility, Productivity; or additionally, based on user-defined blacklists.

MaraDNS - A small open-source DNS server

  •    C

MaraDNS is a package that implements the Domain Name Service (DNS), an essential internet service. People like MaraDNS because it's small, lightweight, easy to set up, and remarkably secure. It's also cross platform -- the program runs both in Windows and in UNIX clones.

inadyn-mt - dynamic DNS client

  •    C

inadyn-mt - inadyn, inadyn-advanced fork. A multi-OS (*NIX, BSD, NT,

dnsx - dnsx is a fast and multi-purpose DNS toolkit allow to run multiple DNS queries of your choice with a list of user-supplied resolvers

  •    Go

dnsx is a fast and multi-purpose DNS toolkit allow to run multiple probes using retryabledns library, that allows you to perform multiple DNS queries of your choice with a list of user supplied resolvers, additionally supports DNS wildcard filtering like shuffledns. This will display help for the tool. Here are all the switches it supports.

dns - DNS library in Go

  •    Go

Complete and usable DNS library. All widely used Resource Records are supported, including the DNSSEC types. It follows a lean and mean philosophy. If there is stuff you should know as a DNS programmer there isn't a convenience function for it. Server side and client side programming is supported, i.e. you can build servers and resolvers with it.

wagl - :bee: DNS Service Discovery for Docker Swarm

  •    Go

wagl runs inside your Docker Swarm cluster and provides DNS-based service discovery (using DNS A and SRV records) and simple load balancing by rotating the list of IP addresses in DNS records. other containers in the cluster will be able to reach this container using URL http://api.swarm. It is a minimalist solution, yet handles most of the basic DNS service discovery functionality well ––but we're open to pull requests.

ddclient

  •    Perl

Ddclient is a Perl client used to update dynamic DNS entries for accounts on 'Dynamic DNS Network Services' free DNS service. It currently supports a lot of different routers and a few different services.

statsd - A Ruby Statsd client that isn't a direct port of the Python example code

  •    Ruby

A short note about DNS: If you use a dns name for the host option, then you will want to use a local caching dns service for optimial performance (e.g. nscd).

ARSoft.Tools.Net - C#/.Net DNS client/server, SPF and SenderID Library

  •    CSharp

This project contains a complete managed .Net SPF validation, SenderID validation and a dns client and dns server implementation written in C#.

lexicon - Manipulate DNS records on various DNS providers in a standardized way.

  •    Python

Manipulate DNS records on various DNS providers in a standardized/agnostic way. Lexicon provides a way to manipulate DNS records on multiple DNS providers in a standardized way. Lexicon has a CLI but it can also be used as a python library.

DnDns and PocketDnDns - A .NET DNS Client Resolver Library

  •    CSharp

A DNS protocol library written completely in managed code (C#). Supports common DNS records types like A, CNAME, MX, SRV, and more. Works on Windows .NET 2.0, 3., Mono 2.0, and .NET CF 2.0 for Pocket PC / Windows Mobile. Supports DNS resoluiton using both UDP and TCP protocols.

jitsu - A DNS server that automatically starts unikernels on demand

  •    OCaml

Jitsu is experimental software. See LICENSE for conditions. Jitsu is a forwarding DNS server that automatically boots unikernels on demand. When a DNS query is received, Jitsu first checks for a local unikernel that is mapped to the requested domain. If a unikernel is found, the unikernel is started and its IP is returned to the client. Otherwise, the request is forwarded to the next DNS server. If no DNS requests are received for the unikernel within a given timeout period it is automatically stopped.

Pi-hole - A black hole for Internet advertisements

  •    Shell

The Pi-hole is a DNS sinkhole that protects your devices from unwanted content, without installing any client-side software. Once the installer has been run, you will need to configure your router to have DHCP clients use Pi-hole as their DNS server which ensures that all devices connecting to your network will have content blocked without any further intervention.






We have large collection of open source products. Follow the tags from Tag Cloud >>


Open source products are scattered around the web. Please provide information about the open source projects you own / you use. Add Projects.