A DNS query tool made in Go

76d27ca fix(deps): update module github.com/miekg/dns to v1.1.61

5 days ago

76d27ca fix(deps): update module github.com/miekg/dns to v1.1.61

5 days ago


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 License Go Report

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


# 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.


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:

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

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
# 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
brew install SamTherapy/tap/awl

Snap package available as awl-dns

snap install awl-dns ||
sudo snap install awl-dns

brew install SamTherapy/tap/awl

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


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!


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.