← 工具

DNSGlobe

Rust 写的全球 DNS 传播检查 TUI 工具,实时观测一条 DNS 记录在全球 34 个公共解析器上的传播状态,世界地图可视化,零配置单文件二进制,支持 watch 模式持续监控,Stars 930+

#118
推荐排名
932
GitHub Stars
652
推荐得分
全球部署 DNS 验证 / 跨节点连通性诊断
适用场景
开发工具Rust终端运维部署

为什么需要

出海产品部署到全球节点后,最常见的问题是「DNS 在某些地区没刷新」「某国家解析到了错的 IP」。DNSGlobe 在终端里实时显示 DNS 记录在全球 34 个公共解析器(Google/Cloudflare/Quad9/OpenDNS/各地区 ISP)上的传播状态,地图可视化,一眼看出哪个区域有问题。

怎么用

bash
# 安装
brew install dnsglobe
# 或
cargo install dnsglobe

# 检查某个域名
dnsglobe check api.yourproduct.com

# 持续监控模式(每 30s 刷新)
dnsglobe watch api.yourproduct.com --interval 30

# 指定解析器列表
dnsglobe check api.yourproduct.com --resolvers google,cloudflare,quad9,local-isp

TUI 界面,键盘操作,无需任何配置。

核心特性

  • 全球 34 个公共 DNS 解析器(覆盖六大洲)
  • 实时地图可视化(ratatui 渲染)
  • 记录 TTL 历史,可对比历史解析结果
  • 支持自定义解析器列表
  • 单文件 Rust 二进制,跨平台(macOS/Linux/Windows)

使用案例

出海 SaaS 在 Cloudflare 改了一条 A 记录,DNSGlobe 同时监控 Google DNS(北美)、Cloudflare DNS(全球)、阿里 DNS(亚洲)、Quad9(欧洲)四个解析器,发现 Cloudflare 5 分钟内全球生效,但阿里 DNS 在日本节点延迟到 2 小时才更新,立刻通知用户「DNS 缓存预计 2 小时后全球生效」,避免客服被打爆。

注意事项

  • 公共解析器可能对部分小域名返回 NXDOMAIN(不存在)
  • watch 模式默认每 30 秒查询,建议别小于 10s(避免被解析器限流)