🐶 Command-line DNS client for humans
doggo is a modern command-line DNS client (like dig) written in Golang. It outputs information in a neat concise manner and supports protocols like DoH, DoT, DoQ, and DNSCrypt as well.
It's totally inspired by dog which is written in Rust. I wanted to add some features to it but since I don't know Rust, I found it as a nice opportunity to experiment with writing a DNS Client from scratch in Go
myself. Hence the name dog
+ go
=> doggo.
curl -sS https://raw.githubusercontent.com/mr-karan/doggo/main/install.sh | sh
brew install doggo
yay -S doggo-bin
scoop install doggo
eget mr-karan/doggo
You can download pre-compiled binaries for various operating systems and architectures from the Releases page.
If you have Go installed on your system, you can use the go install
command:
go install github.com/mr-karan/doggo/cmd/doggo@latest
The binary will be available at $GOPATH/bin/doggo
.
docker pull ghcr.io/mr-karan/doggo:latest
docker run --rm ghcr.io/mr-karan/doggo:latest example.com
For more installation options, including binary downloads and Docker images, please refer to the full installation guide.
Here are some quick examples to get you started with doggo:
# Simple DNS lookup
doggo example.com
# Query MX records using a specific nameserver
doggo MX github.com @9.9.9.9
# Use DNS over HTTPS
doggo example.com @https://cloudflare-dns.com/dns-query
# JSON output for scripting
doggo example.com --json | jq '.responses[0].answers[].address'
# Reverse DNS lookup
doggo --reverse 8.8.8.8 --short
ndots
and search
configurationszsh
and fish
For comprehensive documentation, including detailed usage instructions, configuration options, and advanced features, please visit our official documentation site.
If you find doggo useful and would like to support its development, please consider becoming a sponsor. Your support helps maintain and improve this open-source project.
Every contribution, no matter how small, is greatly appreciated and helps keep this project alive and growing. Thank you for your support! 🐶❤️
This project is licensed under the MIT License.