OSINTverse

otlite · Domain and DNS

Install dnsgen on Linux or macOS in one command

dnsgen takes a list of known subdomains and generates plausible permutations: numbers, environments, regions, and common words. It prints candidates for a resolver to check; it does no resolution itself.

dnsgen in three lines

pipx install otlite
otlite install dnsgen
otlite run dnsgen -- --help

Runs AlephNullSK/dnsgen (MIT, ★ 1.1k, otlite 1.2.1, catalog updated Oct 23, 2026). otlite installs and runs it at a tested version; it does not change or verify the tool itself.

What dnsgen is for

  • Expanding ctfr or BBOT output into more names to resolve.
  • Finding staging and dev hosts that follow a naming pattern.

Typed inputs for dnsgen

dnsgen has no typed input. Pass its own arguments after --; otlite info dnsgen shows an example.

Where the results go

Every run lands under ./results/dnsgen/<target>/ as a timestamped output file, a .meta.json sidecar (the exact command, start and end time, exit code, and the SHA-256 of the output), and a .envelope.json with the entities found, in the same shape for every tool. List runs with otlite results, group them with --case, compare the last two with otlite diff dnsgen <target>, and pull indicators out with otlite extract dnsgen.

Before you run it

  • Pipe the output into a resolver such as the one in BBOT or secator; dnsgen only generates.

Update, remove, inspect

otlite info dnsgen      # inputs, keys, an example command
otlite example dnsgen   # sample output, where there is one
otlite update dnsgen    # move to the next tested version
otlite remove dnsgen    # delete its virtualenv

Full reference: the otlite docs, and the tool's own README on GitHub.

Pairs with

ctfr lists the subdomains of a domain by reading Certificate Transparency logs through crt.sh.
BBOT is a recursive scanner that starts from a domain or IP, discovers subdomains, hosts, and services, and feeds each finding back in as a new target.
dnstwist generates lookalike domains for a name you give it, including typos, homoglyphs, and extra TLDs, then checks which ones are registered and what they resolve to.

FAQ

dnsgen with otlite, answered

How do I install dnsgen on Kali, Ubuntu, or macOS?

Install otlite once with pipx install otlite (or the one-line installer on the otlite page), run otlite init, then otlite install dnsgen. The tool lands in its own virtualenv under ~/.otlite/, pinned to a version that was tested, so nothing touches your system Python. otlite doctor prints the command that fixes a missing git or venv module.

Which inputs does dnsgen take through otlite?

dnsgen does not take a typed input; pass its own arguments after --. otlite info dnsgen prints what it accepts and an example command.

Where does otlite save dnsgen results?

Under ./results/dnsgen/<target>/ in the folder you run from, as a timestamped output file plus a .meta.json sidecar (the exact command, timing, exit code, and SHA-256) and a .envelope.json with the entities found. Add --case <name> to group runs, otlite results to list them, and otlite diff dnsgen <target> to compare the last two.

Does dnsgen need an API key or a login?

No key is required for the basic run. Optional keys, where the project supports them, go in with otlite keys set NAME and are passed only to tools that declare them.

Can I run dnsgen together with other tools?

Not through --all, because dnsgen has no typed input. Run it on its own, or put it in a playbook with explicit arguments.