Doggo 是一个 DNS 查找实用程序,具有彩色输出、DNS-over-TLS 和 DNS-over-HTTPS 支持(命令行)

Doggo 是一个类似于 dig 的现代命令行 DNS 查找实用程序,具有彩色输出,支持 DNS-over-TLS 和 DNS-over-HTTPS 协议等。 它适用于 macOS、Microsoft Windows 和 Linux。

与 dig 一样,Doggo 执行 DNS 查找并显示从被查询的名称服务器返回的答案,这对于解决 DNS 问题非常有用。

其他功能包括支持将输出显示为 JSON,它支持来自 resolv.conf 或命令行参数的 ndots 和搜索配置,并且它可以使用 IPv4、IPv6 或两者,等等。 它支持将人类可读的主机名、名称服务器、类型或类作为命令行参数传递,或者您可以使用“普通”命令行参数代替。

要使用 Doggo,您只需将要查询的主机名作为命令行参数传递,命令行工具将请求 A 记录:

doggo duckduckgo.com

如果您愿意,可以指定多个主机名进行查询。 只需用空格将它们分开。

您可以通过在命令行上传递特定记录类型来请求它,无论是在域名之前还是之后。 例如请求 A, NSMX 记录为 duckduckgo.com 领域:

doggo duckduckgo.com A NS MX

您还可以指定用于请求的 DNS 服务器,例如使用 Cloudflare DNS:

doggo duckduckgo.com @1.1.1.1

您还可以使用长格式的命令行参数来指定记录类型(-t / --type, DNS 服务器 (-n / --nameserver), 班级 (-c / --class) 和要查询的主机名 (-q / --query)。 有关详细信息,请参阅 Doggo 帮助。

默认情况下,doggo 通过 UDP 发送查询。 要通过 TCP 发送它们,请使用指定 DNS 解析器 @tcp://,像这样(例如对于 Cloudflare 的 1.1.1.1 DNS 解析器):

doggo duckduckgo.com @tcp://1.1.1.1

要使用 DoT 发送查询(DNS-over-TLS;默认使用端口 853),请使用以下命令指定 DNS 解析器 @tls://,例如:

doggo duckduckgo.com @tls://@1.1.1.1

要使用 DoH (DNS-over-HTTPS) 查询主机名,您需要使用以下命令指定 DoH 解析器 @https://,例如使用 Cloudflare DNS-over-HTTPS 解析器:

doggo duckduckgo.com @https://cloudflare-dns.com/dns-query

Doggo 也可作为网络工具使用,网址为 https://doggo.mrkaran.dev/

您可能还想查看 Dog,这是一个类似的命令行 DNS 客户端,它启发了 Doggo,但用 Rust 而非 Golang 编写。