doggo - Foglio di aiuto per il client DNS moderno
doggo è un moderno client DNS per la riga di comando — un”alternativa più amichevole e colorizzata a dig con output pulito in formato tabulare o JSON. Oltre alle query tradizionali UDP/TCP parla i trasporti moderni crittografati: DNS-over-HTTPS (DoH), DNS-over-TLS (DoT), DNS-over-QUIC (DoQ) e DNSCrypt. È scritto in Go, viene fornito come un singolo binario ed è utile sia per ricerche veloci che per diagnostica DNS in script.
Installation
| Platform | Command |
|---|
| Go install | go install github.com/mr-karan/doggo/cmd/doggo@latest |
| macOS (Homebrew) | brew install doggo |
| Arch Linux | sudo pacman -S doggo |
| Docker | docker run --rm ghcr.io/mr-karan/doggo doggo example.com |
| Binary | scarica dalla pagina GitHub Releases |
Query di base
| Command | Descrizione |
|---|
doggo example.com | Ricerca record A predefinita |
doggo example.com MX | Interroga un tipo di record specifico |
doggo example.com A AAAA MX | Interroga più tipi di record contemporaneamente |
doggo example.com @1.1.1.1 | Usa un resolver specifico |
doggo --help | Elenco completo delle opzioni |
doggo --version | Versione |
Tipi di record
| Esempio | Restituisce |
|---|
doggo example.com A | Indirizzi IPv4 |
doggo example.com AAAA | Indirizzi IPv6 |
doggo example.com MX | Server di posta |
doggo example.com TXT | Record TXT (SPF, DKIM, verifica) |
doggo example.com NS | Server dei nomi |
doggo example.com CNAME | Nome canonico |
doggo example.com SOA | Inizio dell”autorità |
doggo example.com CAA | Autorizzazione dell”autorità certificata |
Trasporti crittografati e alternativi
| Command | Trasporto |
|---|
doggo example.com @https://cloudflare-dns.com/dns-query | DNS-over-HTTPS (DoH) |
doggo example.com @tls://1.1.1.1 | DNS-over-TLS (DoT) |
doggo example.com @quic://dns.adguard.com | DNS-over-QUIC (DoQ) |
doggo example.com @sdns://... | DNSCrypt (timbro) |
doggo example.com @udp://1.1.1.1 | UDP esplicito |
doggo example.com @tcp://1.1.1.1 | TCP esplicito |
Controllo dell”output
| Option | Descrizione |
|---|
--json | Output JSON (ottimo per script) |
--short | Stampa solo i valori di risposta |
--color=false | Disabilita l”output colorizzato |
--time | Mostra il tempo di andata e ritorno della query |
-4 / -6 | Forza il trasporto IPv4 / IPv6 |
Inverso e avanzate
| Command | Descrizione |
|---|
doggo --reverse 1.1.1.1 | Ricerca DNS inversa (PTR) |
doggo example.com --ndots=1 | Controlla il comportamento della risoluzione ndots |
doggo example.com --search | Usa l”elenco di ricerca del sistema |
doggo example.com --aa | Richiedi risposta autorevole |
doggo example.com --do | Imposta il bit DNSSEC OK |
Flussi di lavoro comuni
# Quick, human-readable answer only
doggo --short example.com
# Verify mail setup at a glance
doggo example.com MX TXT
# Test a DoH resolver and time it
doggo example.com @https://dns.google/dns-query --time
# Script-friendly JSON for monitoring
doggo example.com A --json | jq '.responses[].answers'
# Confirm a reverse record for an IP
doggo --reverse 8.8.8.8 --short
doggo vs dig vs dog
| Feature | doggo | dig | dog |
|---|
| Output colorizzato | Yes | No | Yes |
| Output JSON | Yes | No | Yes |
| DoH / DoT / DoQ | Yes | Limited | Yes |
| DNSCrypt | Yes | No | No |
| Binario singolo | Yes (Go) | System pkg | Yes (Rust) |
Resources