https://github.com/samtherapy/awl
A command-line DNS lookup tool that supports DNS queries over UDP, TCP, TLS, HTTPS, DNSCrypt, and QUIC. [Mirror]
https://github.com/samtherapy/awl
bind9 dig dns dns-client dns-over-https dns-over-quic dns-over-tls drill freebsd go golang linux macos openbsd plan9 windows
Last synced: about 1 month ago
JSON representation
A command-line DNS lookup tool that supports DNS queries over UDP, TCP, TLS, HTTPS, DNSCrypt, and QUIC. [Mirror]
- Host: GitHub
- URL: https://github.com/samtherapy/awl
- Owner: SamTherapy
- License: bsd-3-clause
- Created: 2022-07-02T20:30:48.000Z (almost 3 years ago)
- Default Branch: master
- Last Pushed: 2025-05-06T18:01:39.000Z (about 1 month ago)
- Last Synced: 2025-05-07T15:19:47.317Z (about 1 month ago)
- Topics: bind9, dig, dns, dns-client, dns-over-https, dns-over-quic, dns-over-tls, drill, freebsd, go, golang, linux, macos, openbsd, plan9, windows
- Language: Go
- Homepage: https://git.froth.zone/sam/awl
- Size: 905 KB
- Stars: 12
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Contributing: docs/CONTRIBUTING.md
- License: LICENSE
Awesome Lists containing this project
README
#
> 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.
[](https://git.froth.zone/sam/awl)
[](https://git.froth.zone/sam/awl/commits/branch/master)
[](https://spdx.org/licenses/BSD-3-Clause.html)
[](https://goreportcard.com/report/dns.froth.zone/awl)Awl is designed to be a drop-in replacement for [dig](https://bind9.readthedocs.io/en/v9_18_3/manpages.html#dig-dns-lookup-utility).
## Examples
```shell
# 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](https://git.froth.zone/sam/awl/wiki/awl.1).
## Installing
On any platform, with [Go](https://go.dev) installed, run the following command to install:
```shell
go install dns.froth.zone/awl@latest
```### Packaging
Alternatively, many package managers are supported:
Linux
#### Distro-specific
Alpine Linux
Provided by [Gitea packages](https://git.froth.zone/sam/-/packages/alpine/awl-dns) \
***Any distro that uses apk should also work***```shell
# 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](https://aur.archlinux.org/packages/awl-dns-git/)
```shell
yay -S awl-dns-git ||
paru -S awl-dns-git
```Debian / Ubuntu
Provided by [Gitea packages](https://git.froth.zone/sam/-/packages/debian/awl-dns/) \
***Any distro that uses deb/dpkg should also work***```shell
# Install the repository and GPG keys
curl -JO https://git.froth.zone/packaging/-/packages/debian/git-froth-zone-debian/1-0/files/5937
sudo dpkg -i git-froth-zone-debian_1-0_all.deb
rm git-froth-zone-debian_1-0_all.deb
# Update and install
sudo apt update
sudo apt install awl-dns
```Fedora / RHEL / SUSE
Provided by [Gitea packages](https://git.froth.zone/sam/-/packages/rpm/awl-dns/) \
***Any distro that uses rpm/dnf might also work, I've never tried it***```shell
# 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
```shell
# 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
```#### Distro-agnostic
```shell
brew install SamTherapy/tap/awl
```Snap
Snap package available as [awl-dns](https://snapcraft.io/awl-dns)
```shell
snap install awl-dns ||
sudo snap install awl-dns
```
macOS
```shell
brew install SamTherapy/tap/awl
```
Windows
```pwsh
scoop bucket add froth https://git.froth.zone/packages/scoop.git
scoop install awl
```## Contributing
Please see the [CONTRIBUTING.md](./docs/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](https://git.froth.zone/sam/awl/issues) or [open a pull request](https://git.froth.zone/sam/awl/pulls).
Want to use email instead? Use our [mailing list](https://lists.sr.ht/~sammefishe/awl-devel)!### Mirrors
The canonical repository is located on [my personal Forgejo instance](https://git.froth.zone/sam/awl). \
Official mirrors are located on [GitHub](https://github.com/SamTherapy/awl), [GitLab](https://gitlab.com/SamTherapy/awl) and [SourceHut](https://git.sr.ht/~sammefishe/awl).
Contributions are accepted on all mirrors, but the Forgejo instance is preferred.## License
[BSD-3-Clause](https://spdx.org/licenses/BSD-3-Clause.html)
### Credits
- Awl image taken from [Wikimedia Commons](https://commons.wikimedia.org/wiki/File:Awl.tif), imaged is licensed CC0.