resolverx 0.1.0

A fast, async DNS + RDAP resolver with bulk mode, caching, and JSON/NDJSON or table output.
resolverx-0.1.0 is not a library.

resolverx ๐Ÿง โšก

Build Crates.io License: MIT Rust

A fast, async DNS + RDAP resolver written in Rust โ€” supporting single and bulk queries with output in table, JSON, or NDJSON formats.


๐Ÿ”ง Installation

From crates.io (once published)

cargo install resolverx

From source (current dev build)

git clone https://github.com/evozeus/resolverx.git
cd resolverx
cargo build --release
./target/release/resolverx --help

๐Ÿš€ Usage

Single query

resolverx query example.com
resolverx query example.com --format json
resolverx query example.com --rdap
resolverx query 1.1.1.1 --rdap

Bulk mode

Create a file of targets:

printf "example.com\ncloudflare.com\n1.1.1.1\nAS13335\n" > targets.txt

Run in bulk:

resolverx bulk targets.txt --rdap --format ndjson -v

๐Ÿงฉ Features

  • โšก Asynchronous DNS resolution (A, AAAA, MX, NS, TXT, CNAME)
  • ๐ŸŒ Integrated RDAP client with caching
  • ๐Ÿง  Automatic type detection (domain, IP, ASN)
  • ๐Ÿ“ฆ Multi-target bulk mode with concurrency control
  • ๐Ÿงพ Multiple output formats: table / JSON / NDJSON
  • ๐Ÿ” Verbose diagnostics for tracing queries
  • ๐Ÿงฐ CI-ready project: fmt, clippy, build, and smoke tests on every push

๐Ÿง  Example Outputs

Table

resolverx query example.com
resolverx โ€” DNS results
Name: example.com
Elapsed: 89 ms
A: 23.215.0.138, 23.220.75.245, 23.192.228.84, 23.192.228.80, 23.215.0.136
AAAA: 2600:1408:ec00:36::1736:7f24, 2600:1406:bc00:53::b81e:94c8, ...

JSON

resolverx query example.com --rdap --format json
{
  "name": "example.com",
  "a": ["23.215.0.138", "23.215.0.136"],
  "ns": ["a.iana-servers.net.", "b.iana-servers.net."],
  "rdap": {
    "handle": "2336799_DOMAIN_COM-VRSN",
    "events": [
      {"eventAction": "registration", "eventDate": "1995-08-14T04:00:00Z"}
    ]
  }
}

๐Ÿง‘โ€๐Ÿ’ป Development

cargo fmt
cargo clippy -- -D warnings
cargo run -- query example.com
cargo test

CI

ResolverX uses GitHub Actions (.github/workflows/ci.yml) to:

  • enforce formatting and linting
  • build and run smoke tests on push/PR
  • prepare for automated releases

๐Ÿ“ฆ Publishing (maintainers only)

cargo publish --dry-run
git tag v0.1.0
git push origin v0.1.0

๐Ÿงญ Roadmap

v2.0 ideas

  • Recursive / authoritative path tracing
  • DNSSEC validation indicators
  • DNS + HTTP timing correlation
  • Interactive TUI mode (with ratatui)

๐Ÿง‘โ€๐Ÿคโ€๐Ÿง‘ Contributing

Contributions, issues, and feature requests are welcome!
Open a PR or discussion at github.com/evozeus/resolverx.


๐Ÿ“œ License

MIT ยฉ 2025 Evozeus