d66dcbe067012484a9bcda3ef88a859c8aef0421
CI / test (pull_request) Waiting to run
- Created internal/config/config.go with Config struct containing all 15 CLI flags - Added ParseQueryType() for validating record types (A, AAAA, NS, CNAME, MX, TXT, SOA, PTR, ANY) - Added ParseUDPSize() with validation (512-4096) - Added ParseMaxDepth() with validation (1-100) - Added ParseRetries() with validation (0-10) - Added Validate() for cross-field validation (e.g., --always-tcp requires --allow-tcp) - Added GetDomain() for validating the required positional argument - Added PrintUsage() displaying all flags with --no- variants for display options - Updated cmd/exploredns/main.go with flag definitions using the standard flag package - Proper flag parsing and config population - Manual parsing of debug level (supports -dd) - Support for --no-* display flags (e.g., --no-show-progress) - Config validation before execution - Integration with traversal engine using dns.QueryConfig and traverse.TraverserConfig - Clean error handling with descriptive messages All flags implemented: - --type TYPE (default A) - --root-server HOST - --all-root-servers - --root-aaaa - --follow-aaaa - --udp-size SIZE (default 2048) - --allow-tcp (default true) - --always-tcp - --max-depth DEPTH (default 20) - --retries TIMES (default 2) - --fast (default true) - --verbose, -v - --debug, -d (stackable: -dd) - --quiet, -q - --show-progress, --no-show-progress - --show-resolves, --no-show-resolves - --show-servers, --no-show-servers - --show-versions, --no-show-versions - --show-all-stats, --no-show-all-stats - --show-results, --no-show-results - --show-summary-results, --no-show-summary-results Validation: Invalid inputs produce clear error messages, exploredns --help displays usage with all options, all existing tests pass Co-authored-by: multica-agent <github@multica.ai>
ExploreDNS
DNS reconnaissance and exploration tool.
Build
go build -o bin/exploredns ./cmd/exploredns
Or use the Makefile:
make build
Usage
./bin/exploredns <domain>
Development
make test # run tests
make lint # run go vet
make clean # remove build artifacts
Project Structure
cmd/exploredns/ CLI entry point
internal/dns/ DNS query operations
internal/traverse/ DNS tree traversal
internal/fingerprint/ DNS server fingerprinting
internal/output/ Result formatting and output
internal/config/ Configuration management
License
MIT
Description
ExploreDNS is a comprehensive DNS traversal tool that explores every possible resolution path for a domain — from the root servers all the way down — just like a real iterative resolver, but without stopping at the first answer. It follows every referral exhaustively, collates all results, and presents them in a structured, human-readable (or JSON) report.
https://exploredns.hansenits.com
14 MiB
Releases
2
ExploreDNS v1.1.0
Latest
Languages
Go
84.3%
HTML
14%
Shell
1.5%
Makefile
0.2%