dnsx 是一个使用 Go 语言编写的 DNS 查询工具,由 ProjectDiscovery 团队开发和维护。通过 retryabledns 库运行各种 DNS 探测,支持多种 DNS 查询,用户自定义解析器以及 DNS 通配符过滤等功能。

功能

  • 支持多种 DNS 记录查询,包括 A、AAAA、CNAME、PTR、NS、MX、TXT、SRV、SOA 等
  • DNS 暴力破解
  • 支持自定义 DNS 解析器
  • 支持多种解析器格式 TCP UDP DOH DOT
  • 支持标准输入输出,方便和其他命令行工具配合使用

安装

dnsx 需要 Go 1.21 或更高版本。可以通过以下命令安装最新版本

go install -v github.com/projectdiscovery/dnsx/cmd/dnsx@latest

使用

解析子域名列表

subfinder 是一个用来枚举和发现子域名的工具,Go 语言编写,开源。

subfinder -d example.com | dnsx -silent -a -resp

提取 CNAME 记录

subfinder -d example.com | dnsx -silent -cname -resp

DNS 暴力破解

dnsx -d example.com -w wordlist.txt

同样 dnsx 也可以作为 Go 库在程序中使用

dnsClient, _ := dnsx.New(dnsx.DefaultOptions)
result, _ := dnsClient.Lookup("example.com")
  • [[反查一个域名的所有子域名]]
  • [[subfinder]]