使用Golang打造现代命令行DNS客户端工具

发表时间: 2024-08-06 11:28

简介

doggo 是一个由 Karan Sharma 于 2020 年使用 Go 语言开发的 DNS 客户端。它类似于 dig 命令,但旨在以现代化、简洁和可读的格式输出 DNS 查询结果。

首次用户快速实验指南

  1. 本文的 demo 展现了如何通过 x-cmd 快速使用 doggo 命令查询指定网域的 DNS 记录信息,以及查询 9.9.9.9 DNS 服务器中 github.com 的域名服务器的记录信息。
  2. x-cmd 提供了 doggo 1分钟教程,配合 x-cmd,马上体验。
    doggo | x-cmd 1min | 一个用Golang编写的现代命令行DNS客户端
  3. 使用案例:


功能特点

  1. 支持多种传输协议:包括 DoH (HTTPS)、DoT (TLS)、DoQ (QUIC)、TCP、UDP 和 DNSCrypt,以满足不同场景的需要。
  2. 灵活的查询选项:提供了四个关键的 DNS 查询参数,其中包括DNS 主机名记录、DNS 记录类型、特定 DNS 服务器地址以及 DNS 记录的网络类别,另外还支持查询和解析 IPv4 与 IPv6,确保您能够获取全面的 DNS 记录信息。
  3. 多种输出格式:在默认的交互模式中,doggo 将以可读性良好的数据格式输出信息,同时也支持将信息以 JSON 格式输出,以便进一步对数据进行处理或编写脚本。

类似工具与竞品

  • dog:由 Benjamin Sago 使用 Rust 构建的 DNS 命令行客户端,也是 doggo 项目的灵感来源,但在2020年发布第一代版本后就没有进行迭代更新。该作者还开发了 exa 使用 Rust 构建的 ls 命令现代化替代品,感兴趣的读者可以进一步了解。

进一步探索

  • GitHub - mr-karan/doggo: :dog: Command-line DNS Client for Humans. Written in Golang
  • doggo 常见使用案例:GitHub - mr-karan/doggo: :dog: Command-line DNS Client for Humans. Written in Golang
  • Doggo Is A DNS Lookup Utility With Colorful Output, DNS-over-TLS and DNS-over-HTTPS Support (Command Line) - Linux Uprising Blog


更多内容请查阅 : doggo | x-cmd pkg | doggo 是一个用 Golang 编写的现代命令行 DNS 客户端

转载请标明原文链接 :
https://www.x-cmd.com/pkg/doggo


关注官方微信公众号: oh my x

获取开源软件和 x–cmd 的最新用法

独家资讯