awl

command module
v0.6.12 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 17, 2024 License: BSD-3-Clause Imports: 10 Imported by: 0

README

awl

awl (noun): A pointed tool for making small holes in wood or leather

A command-line DNS lookup tool that supports DNS queries over UDP, TCP, TLS, HTTPS, DNSCrypt, and QUIC.

Gitea Release Last Commit Go Report License

Awl is designed to be a drop-in replacement for dig.

Examples

# Query a domain over UDP
awl example.com

# Query a domain over HTTPS, print only the results
awl example.com +https --short

# Query a domain over TLS, print as JSON
awl example.com +tls +json

For more and the usage, see the manpage.

Installing

On any platform, with Go installed, run the following command to install:

go install dns.froth.zone/awl@latest

Alternatively, many package managers are supported:

Linux
Alpine Linux

Provided by Gitea packages
Any distro that uses apk should also work

# Add the repository
echo "https://git.froth.zone/api/packages/sam/alpine/edge/main" | tee -a /etc/apk/repositories
# Get the signing key
curl -JO https://git.froth.zone/api/packages/sam/alpine/key --output-dir /etc/apk/keys
# Install
apk add awl-dns
Arch

AUR package available as awl-dns-git

yay -S awl-dns-git ||
paru -S awl-dns-git
Debian / Ubuntu

Provided by Gitea packages
Any distro that uses deb/dpkg should also work

# Add PGP key
sudo curl https://git.froth.zone/api/packages/sam/debian/repository.key -o /usr/share/keyrings/git-froth-zone-sam.asc
# Add repo
echo "deb [signed-by=/usr/share/keyrings/git-froth-zone-sam.asc]  https://git.froth.zone/api/packages/sam/debian sid main" | sudo tee /etc/apt/sources.list.d/git-froth-zone-sam.list
# Update and install
sudo apt update
sudo apt install awl-dns
Fedora / RHEL / SUSE

Provided by Gitea packages
Any distro that uses rpm/dnf might also work, I've never tried it

# Add the repository
dnf config-manager --add-repo https://git.froth.zone/api/packages/sam/rpm.repo ||
zypper addrepo https://git.froth.zone/api/packages/sam/rpm.repo
# Install
dnf install awl-dns ||
zypper install awl-dns
Gentoo
# Add the ebuild repository
eselect repository add froth-zone git https://git.froth.zone/packaging/portage.git
emaint sync -r froth-zone
# Install
emerge -av net-dns/awl
Homebrew
brew install SamTherapy/tap/awl

macOS
Homebrew
brew install SamTherapy/tap/awl

Windows
Scoop
scoop bucket add froth https://git.froth.zone/packages/scoop.git
scoop install awl

Contributing

Please see the CONTRIBUTING.md file for more information.

TL;DR: If you like the project, spread the word! If you want to contribute, use the issue tracker or open a pull request. Want to use email instead? Use our mailing list!

Mirrors

The canonical repository is located on my personal Forgejo instance.
Official mirrors are located on GitHub and SourceHut. Contributions are accepted on all mirrors, but the Forgejo instance is preferred.

License

BSD-3-Clause

Credits

Documentation

Overview

awl is a DNS lookup tool written in Go, similar to (and heavily inspired by) drill.

It runs and displays similar outputs to drill, without any frills. Options are given to print with JSON, XML and YAML.

Supports results from DNS-over-[UDP, TCP, TLS, HTTPS, QUIC] servers

Why use this over the alternatives? Good question.

Directories

Path Synopsis
Package cli is the CLI part of the package, including both POSIX flag parsing and dig-like flag parsing.
Package cli is the CLI part of the package, including both POSIX flag parsing and dig-like flag parsing.
Package conf contains helper functions for getting local nameservers
Package conf contains helper functions for getting local nameservers
pkg
logawl
Package logawl is a package for custom logging needs
Package logawl is a package for custom logging needs
query
Package query is for the various query types.
Package query is for the various query types.
resolvers
Package resolvers contain the various DNS resolvers to use.
Package resolvers contain the various DNS resolvers to use.
util
Package util contains helper functions that don't belong anywhere else
Package util contains helper functions that don't belong anywhere else

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL