digs 0.4.0

digs many at once
Documentation
<div align="center">
<h1>digs</h1>

dig many at once.

<a href="https://github.com/BiznetGIO/digs/actions/workflows/ci.yml">
<img src="https://github.com/BiznetGIO/digs/actions/workflows/ci.yml/badge.svg">
</a>
<a href="https://crates.io/crates/digs">
<img src="https://img.shields.io/crates/v/digs.svg">
</a>

<p></p>

![A digs demo](docs/demo.gif)

</div>

---

_digs_ is a DNS command-line client that is able to query many DNS servers at once.

## Why?

We work with DNS records a lot. Having a tool that inspects multiple
records across different machines at once is a lifesaver.

## Features

- Prevent invalid input before querying, such as invalid record types or configuration.
- No panics, good error handling.
- [much faster]docs/benchmark.md compared to previous `digs.py`.
- Fancy error messages and colorful output.
- Cross-platform and single binary.

## Usage

Prepare a configuration file that should look like this:

```toml
[[servers]]
address = "8.8.8.8"
name = "Google"

[[servers]]
address = "9.9.9.9:54" # Custom port, default: 53
name = "Quad9"
```

The `servers` blocks can be as many as you want.

Example commands:

```
digs example.net A                         Query a domain using the configuration in the current directory
digs example.net A --config custom.toml    ...using custom configuration
```

Run `digs --help` to see more available options.

## Installation

### From binaries

The [release page](https://github.com/BiznetGIO/digs/releases) includes
pre-compiled binaries for GNU/Linux, macOS, and Windows.

### From source

Using [cargo-binstall](https://github.com/cargo-bins/cargo-binstall)

```bash
cargo binstall digs
```

Using Rust's package manager [cargo](https://github.com/rust-lang/cargo):

```bash
cargo install digs
```

## Development

```bash
git clone https://github.com/BiznetGIO/digs
cd digs

# Run unit tests and integration tests
cargo test

# Install
cargo install --path .
```

## Contributing

To learn more read the [contributing guide](docs/dev/README.md)

## Licence

digs source code is licensed under the [MIT](https://choosealicense.com/licenses/mit/).