Scripts2026年7月3日·1 分钟阅读

doggo — Command-Line DNS Client for Humans

A modern DNS client written in Go with colorful output, support for DoH/DoT/DoQ, and a clean interface for quick DNS lookups.

Agent 就绪

这个资产会安全暂存

这个资产会先安全暂存。复制的指令会要求 Agent 读取暂存文件,并在激活脚本、MCP 配置或全局配置前先确认。

Stage only · 29/100策略:需暂存
Agent 入口
任意 MCP/CLI Agent
类型
CLI Tool
安装
Single
信任
信任等级:Established
入口
doggo
安全暂存命令
npx -y tokrepo@latest install 8994e469-76db-11f1-9bc6-00163e2b0d79 --target codex

先暂存文件;激活前需要读取暂存 README 和安装计划。

Introduction

doggo is a modern DNS client for the command line that replaces dig with a more readable and user-friendly interface. It supports DNS-over-HTTPS, DNS-over-TLS, and DNS-over-QUIC, and outputs results in colorized tabular format that is easy to scan.

What doggo Does

  • Performs DNS queries with colorized, human-readable tabular output
  • Supports DNS-over-HTTPS (DoH), DNS-over-TLS (DoT), and DNS-over-QUIC (DoQ)
  • Queries any record type: A, AAAA, MX, TXT, CNAME, NS, SOA, SRV, and more
  • Supports reverse DNS lookups and multiple query targets in a single command
  • Outputs results in JSON format for scripting and automation

Architecture Overview

doggo is written in Go and uses the miekg/dns library for DNS protocol handling. It builds queries from command-line arguments, sends them over the selected transport (UDP, TCP, DoH, DoT, or DoQ), and formats responses into a colored table. The JSON output mode makes it composable with tools like jq.

Self-Hosting & Configuration

  • Install via Homebrew: brew install doggo
  • Or download a binary from GitHub releases for Linux, macOS, and Windows
  • Specify a DNS server with @ prefix: doggo example.com @8.8.8.8
  • Use DoH with doggo example.com @https://dns.google/dns-query
  • Use DoT with doggo example.com @tls://dns.google

Key Features

  • Clean colorized output that is easier to read than dig
  • Native support for encrypted DNS protocols (DoH, DoT, DoQ)
  • JSON output mode for scripting: doggo example.com --json | jq .
  • Multiple queries in a single command: doggo A example.com MX example.com
  • Lightweight single binary with no external dependencies

Comparison with Similar Tools

  • dig — The classic DNS tool; doggo provides better formatting and encrypted DNS support
  • dog — Another modern DNS client; doggo adds DoQ support and JSON output
  • drill — Part of ldns; less user-friendly output than doggo
  • nslookup — Basic DNS lookup; lacks DoH/DoT and structured output

FAQ

Q: How is doggo different from dig? A: doggo provides colorized tabular output, built-in DoH/DoT/DoQ support, and JSON output mode.

Q: Can I use it with encrypted DNS? A: Yes. Prefix the server with https://, tls://, or quic:// for DoH, DoT, or DoQ.

Q: Does it support scripting? A: Yes. Use --json to get structured JSON output suitable for piping to jq or other tools.

Q: What platforms are supported? A: Linux, macOS, and Windows via pre-built binaries or Go install.

Sources

讨论

登录后参与讨论。
还没有评论,来写第一条吧。

相关资产