Crates.io | dnsi |
lib.rs | dnsi |
version | 0.2.0 |
source | src |
created_at | 2024-05-06 10:35:14.175998 |
updated_at | 2024-06-20 15:05:27.734844 |
description | A tool for investigating the DNS. |
homepage | |
repository | https://github.com/nlnetlabs/dnsi/ |
max_upload_size | |
id | 1231045 |
size | 107,865 |
dnsi
is a command line tool to investigate various aspects of the
Domain Name System (DNS).
It is currently in a very early state and will expand over the coming months.
The tool contains a number of commands. Currently, these are:
dnsi query
sends a query to a name server or the system’s default
resolver,
dnsi lookup
looks up the IP addresses for domain names or the domain
names for IP addresses,
dnsi help
displays the man page for any command.
Getting started with dnsi
is really easy by installing a binary package
for either Debian and Ubuntu or for Red Hat Enterprise Linux (RHEL) and
compatible systems such as Rocky Linux.
You can also build dnsi
from the source code using Cargo, Rust's build
system and package manager. Refer to the building section to
get started.
To install the dnsi
package, you need the 64-bit version of one of these
Debian versions:
Packages for the amd64
and x86_64
architectures are available for
all listed versions. In addition, we offer armhf
architecture
packages for Debian/Raspbian Bullseye, and arm64
for Buster.
First update the apt
package index:
sudo apt update
Then install packages to allow apt
to use a repository over HTTPS:
sudo apt install \
ca-certificates \
curl \
gnupg \
lsb-release
Add the GPG key from NLnet Labs:
curl -fsSL https://packages.nlnetlabs.nl/aptkey.asc | sudo gpg --dearmor -o /usr/share/keyrings/nlnetlabs-archive-keyring.gpg
Now, use the following command to set up the main repository:
echo \
"deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/nlnetlabs-archive-keyring.gpg] https://packages.nlnetlabs.nl/linux/debian \
$(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/nlnetlabs.list > /dev/null
Update the apt
package index once more:
sudo apt update
You can now install dnsi
with:
sudo apt install dnsi
To install a dnsi
package, you need the 64-bit version of one of these
Ubuntu versions:
Packages are available for the amd64
/x86_64
architecture only.
First update the apt
package index:
sudo apt update
Then install packages to allow apt
to use a repository over HTTPS:
sudo apt install \
ca-certificates \
curl \
gnupg \
lsb-release
Add the GPG key from NLnet Labs:
curl -fsSL https://packages.nlnetlabs.nl/aptkey.asc | sudo gpg --dearmor -o /usr/share/keyrings/nlnetlabs-archive-keyring.gpg
Now, use the following command to set up the main repository:
echo \
"deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/nlnetlabs-archive-keyring.gpg] https://packages.nlnetlabs.nl/linux/ubuntu \
$(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/nlnetlabs.list > /dev/null
Update the apt
package index once more:
sudo apt update
You can now install dnsi
with:
sudo apt install dnsi
To install the dnsi
package, you need Red Hat Enterprise Linux (RHEL) 7,
8 or 9, or compatible operating system such as Rocky Linux. Packages are
available for the amd64
/x86_64
architecture only.
First create a file named /etc/yum.repos.d/nlnetlabs.repo
, enter this
configuration and save it:
[nlnetlabs]
name=NLnet Labs
baseurl=https://packages.nlnetlabs.nl/linux/centos/$releasever/main/$basearch
enabled=1
Add the GPG key from NLnet Labs:
sudo rpm --import https://packages.nlnetlabs.nl/aptkey.asc
You can now install dnsi
with:
sudo yum install -y dnsi
dnsi
is written in Rust. The Rust compiler runs on, and compiles to, a
great number of platforms, though not all of them are equally supported. The
official Rust Platform
Support page
provides an overview of the various support levels.
While some system distributions include Rust as system packages, dnsi
relies on a relatively new version of Rust, currently 1.74 or newer.
We therefore suggest to use the canonical Rust installation via a tool called
rustup
.
Assuming you already have curl
installed, you can install rustup
and Rust
by simply entering:
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
Alternatively, visit the Rust website for other installation methods. Also refer to this page for notes
on updating Rust, and configuring the PATH
environment variable.
dnsi
After successfully installing Rust, installing dnsi
is as simple as
entering:
cargo install --locked dnsi
If you want to update to the latest version of dnsi
, it’s recommended
to update Rust itself as well, using:
rustup update
Use the --force
option to overwrite an existing version with the latest
dnsi
release:
cargo install --locked --force dnsi
If you want to install a specific version of dnsi
using Cargo, explicitly
use the --version
option. If needed, use the --force
option to
overwrite an existing version:
cargo install --locked --force dnsi --version 0.1.0