How to Install and Use doggo in Linux for Modern Human-Readable DNS Lookups

Traditional command-line DNS troubleshooting tools like dig, nslookup, and host are functional staples of Unix administration, but their verbose outputs, arcane flag syntax, and lack of modern encrypted transport support can slow down routine network diagnostics. doggo is a modern, colourful DNS lookup client written in Go that provides clean, human-readable terminal tables, native JSON export, and built-in support for DNS-over-HTTPS (DoH) and DNS-over-TLS (DoT).

Installing doggo on Linux Systems

doggo is available through multiple installation channels across Linux distributions:

  • Using Homebrew (Linuxbrew):
    brew install doggo
  • Using Webi (Quick Installer):
    curl -sS https://webi.sh/doggo | sh
  • Using Arch Linux AUR:
    yay -S doggo-bin
  • Direct Binary Download: Download the pre-compiled binary tarball from the official GitHub releases page, extract it, and move the doggo executable to /usr/local/bin/.

Basic DNS Lookups with Clean Table Formatting

Querying an address with doggo produces a beautifully formatted, colour-coded table displaying the query time, resolved IP address, record type, and time-to-live (TTL) counter:

  1. Basic A Record Query:
    doggo example.com
  2. Querying Specific Record Types: Specify MX, TXT, CNAME, or NS records directly after the hostname:
    doggo example.com MX
    doggo example.com TXT
  3. Querying Reverse DNS (PTR): Simply pass an IP address to resolve its reverse DNS mapping:
    doggo 1.1.1.1

Testing Encrypted DNS (DoH and DoT)

One of doggo‘s strongest advantages over classic dig is its effortless support for secure transport protocols without requiring external proxy wrappers:

  • Querying via DNS-over-HTTPS (DoH): Test privacy and resolution through Cloudflare or Google DoH endpoints:
    doggo example.com --nameserver https://cloudflare-dns.com/dns-query
  • Querying via DNS-over-TLS (DoT): Test encrypted TLS resolvers:
    doggo example.com --nameserver tls://1.1.1.1:853
  • Outputting Clean JSON for Scripting: Pipe DNS responses directly into jq or automation scripts:
    doggo example.com --json | jq .

With its concise CLI syntax, visual readability, and native cryptographic protocol support, doggo is a superb upgrade for network engineers and Linux developers seeking streamlined DNS diagnostics.

Get the best tech tips delivered straight to your inbox.

Join thousands of readers mastering Apple, Google, Microsoft, and Linux.