DNSao¶
DNSao is a high-performance multi-upstream DNS forwarder
- DNS Sinkhole: blocks domains based on lists, acting as a DNS sinkhole, preventing access to unwanted content, invasive advertising, and hindering trackers
- DNS over TLS Support: performs queries to upstream servers using traditional UDP or DoT, ensuring greater privacy in resolutions
- Parallel Querying to Multiple Upstreams: sends the same query to multiple upstream servers in parallel and returns the fastest response, reducing browsing latency
- High-Performance Cache: stores responses respecting their original TTL, includes negative caching, and a rewarm (pre-heating) mechanism to keep frequently used entries always available
- DNSSEC-Aware Policies: requests DNSSEC data from upstream resolvers and applies configurable policies (off/simple/rigid) based on the AD flag
- YAML Configuration: all server configuration is centralized in a single .yaml file, easy to version and replicate across multiple instances for high availability
- Local DNS Mapping: allows defining local domain resolutions for specific IPs — ideal for homelabs, self-hosting, and internal networks
- Metrics Dashboard: provides a metrics dashboard to monitor operation and performance
- Low Resource Usage: runs comfortably with 256 MB of RAM, even on older hardware or compact devices
- Free and Open Source: free software, openly maintained on GitHub, allowing unrestricted auditing and use
- Stateless Runtime: does not rely on databases or peripheral systems, enabling fast cold starts
- Low Number of Dependencies: only 5 — dnsjava, logback, javalin, minimal-json, and snakeyaml
Purpose¶
Other DNS software acts as a DNS Sinkhole, or supports multiple DoT upstreams, or performs recursive DNS resolution, but it’s always necessary to combine solutions to achieve a satisfactory level of privacy or speed. DNSao exists to be the only DNS tool your network needs.
All source code is available on the project’s GitHub, including the latest releases and development documentation.
Screenshots¶
Query Summary¶
Graph with queries timeline¶
Upstream distribution¶