MassDNS is a high-performance DNS stub resolver designed for bulk lookups and subdomain enumeration at massive scale.
The tool addresses the challenge of resolving millions or billions of domain names efficiently. It works as a DNS stub resolver that can process over 350,000 names per second using publicly available resolvers without special configuration. The resolver accepts a list of domain names and a list of DNS resolvers, then performs lookups in parallel, outputting results in text format that includes the resolver IP address for filtering purposes.
MassDNS suits security researchers and reconnaissance teams performing subdomain enumeration and infrastructure mapping. It is particularly valuable when you need to resolve enormous volumes of domains quickly. The tool includes helper scripts for common reconnaissance tasks: a Python script for PTR record resolution that avoids sudden load spikes by randomizing query order, a subdomain brute-forcing script similar to subbrute, and a certificate transparency log scraper. The custom DNS implementation is malloc-free and currently supports only the most common record types. Users should be aware that the included resolver list is outdated with many dysfunctional entries, and that using the tool can generate significant load on resolvers and potentially trigger abuse complaints from ISPs.
The project shows minimal ongoing development activity with infrequent commits and limited recent updates to core functionality. The resolver list included in the repository is acknowledged as outdated and no longer actively maintained. The custom DNS implementation remains incomplete, supporting only common record types with a note that contributions are welcome to expand this coverage. Documentation is provided through a man page rather than extensive README examples.