DNSDmpstr is an unofficial Python-based API and command-line client designed to gather domain and network information from services such as DNSDumpster and HackerTarget IP Tools.
DNSDumpster is a domain-research service that can help identify hosts associated with a domain. During an authorized security assessment, this type of reconnaissance helps security teams understand their externally visible infrastructure, review DNS records, and identify systems that may need further investigation.
DNSDmpstr provides a programmatic way to access several information-gathering functions, including host searches, DNS lookups, reverse DNS lookups, page-link extraction, and HTTP-header retrieval. Its results depend on the underlying services, their availability, and the version of the project being used.
Also Read: Metaforge: An OSINT Metadata Analysis Tool That Filters Tags and Creates Reports
--all option to request all information supported by the tool.These capabilities can support asset discovery and passive reconnaissance. Results should be verified against authoritative DNS records and other reliable sources before being used to make security decisions.
DNSDmpstr’s original installation instructions use Git to download the source code and pip to install its Python dependencies.
git clone https://github.com/zeropwn/dnsdmpstr cd dnsdmpstr pip3 install -r requirements.txt chmod +x ddump.py
Repository: DNSDmpstr on GitHub
Compatibility note: These are the project’s historical setup commands. Before installing dependencies, review the repository and its requirements file. If the project does not support your current Python environment, consider using an isolated virtual environment rather than changing system-wide Python packages.
DNSDmpstr can be run as a command-line utility. The -u option specifies the target domain, while --all requests all information exposed by the tool.
For example, during an authorized assessment of a domain you are permitted to investigate:
target="example.com" python3 ddump.py -u "$target" --all
Replace example.com with a domain you own or have explicit permission to assess. The amount and type of returned information depend on the supported functions and the responses from the upstream services.
The original command-line help describes the following arguments:
usage: ddump.py [-h] [-u U] [-a] [-r] [-d] [-dd] [--links] [--headers] [--all] optional arguments: -h, --help show this help message and exit -u U target domain -a host search (DNS A record lookup) -r reverse DNS lookup (accepts IP, IP range or domain name) -d DNS lookup -dd classical DNS dump format --links grab page links from URL --headers grab HTTP headers from URL --all grab all information available
-h: Displays the available command-line arguments.-u: Specifies the domain to investigate.-a: Requests the host-search function described in the original help text.-r: Runs the reverse DNS function.-d: Requests DNS lookup information.-dd: Uses the traditional DNS-dump format.--links: Retrieves links from a supplied URL.--headers: Retrieves HTTP headers from a supplied URL.--all: Requests all information available through the tool.Option names and behavior are based on the original project documentation. Run python3 ddump.py --help in your installed copy to confirm the arguments supported by that version.
In addition to command-line use, the original project describes a Python interface for accessing its data-collection functions. The following example illustrates the documented method names. It assumes the installed version exposes the same interface and that the required imports and initialization are configured according to the project’s source code.
import json import dnsdmpstr target = "example.com" dnsdump = dnsdmpstr() print(json.dumps(dnsdump.dump(target), indent=1)) print(dnsdump.hostsearch(target)) print(dnsdump.reversedns(target)) print(dnsdump.dnslookup(target)) print(dnsdump.pagelinks(target)) print(dnsdump.httpheaders(target))
The example calls the following methods:
dump(target): Requests the combined dump result.hostsearch(target): Retrieves host-search results.reversedns(target): Requests reverse DNS information.dnslookup(target): Retrieves DNS lookup results.pagelinks(target): Collects links from the supplied target.httpheaders(target): Retrieves HTTP-header information.The json.dumps() call formats the combined result for easier reading when the returned data is JSON-serializable. If the installed version uses a different import pattern or constructor, consult the repository’s current source code and examples.
DNSDmpstr can be useful during the initial information-gathering stage of an authorized security review.
DNS records and third-party reconnaissance results can be incomplete, stale, or ambiguous. Confirm important findings with authoritative sources and the organization’s own inventory before reporting an asset as exposed or vulnerable.
Visit the project’s GitHub repository for the source code and any available documentation:
Download DNSDmpstr from GitHub
DNSDmpstr offers a compact way to access several domain-reconnaissance functions from Python or the command line. For reliable results, verify its compatibility with current upstream services and treat collected information as leads for further authorized investigation rather than definitive security findings.