gitmyhub

dnsglobe

Rust ★ 965 updated 26d ago

Global DNS propagation checker TUI — watch a DNS record propagate across 34 public resolvers worldwide, on a world map in your terminal

A terminal tool that checks how a DNS record has spread across dozens of public servers worldwide, shown live on a map or globe.

RustRatatuiDNSsetup: easycomplexity 2/5

Dnsglobe is a terminal application that checks how a DNS record has spread across the internet. When you change a domain's DNS settings, it takes time before every server around the world knows about the change, and dnsglobe watches that process happen. It sends the same query to 34 public DNS resolvers scattered across regions like North America, Europe, Russia, the Middle East, East Asia, and the southern hemisphere, then compares their answers side by side in a table right in your terminal.

Answers that agree get grouped together, so a domain using several servers that answer differently on purpose does not get flagged as broken, only genuinely conflicting answers are marked as different. A progress style gauge shows what share of resolvers agree with the majority. If your terminal window is wide enough, dnsglobe also draws a small world map or a spinning globe on the side, with a colored dot for each resolver showing whether it agrees, differs, errored, or is still waiting on a reply. You can toggle between the flat map and the globe view by hand or let it switch automatically based on window width.

For big cloud DNS providers that route different users to different nearby servers, dnsglobe can also ask which physical location actually answered you, and there is an option to fake your location using something called EDNS Client Subnet, so you can see how the DNS answer looks from a different network's point of view.

You can install it through Homebrew, cargo, the Arch Linux AUR, Nix, or a prebuilt binary from GitHub releases. Once running, you type a domain name, or pass one on the command line, and it starts checking immediately, refreshing every 30 seconds until every resolver reports the record has fully propagated. There is also a plain, non interactive mode for scripts. Settings like custom resolver lists can be saved in a config file. The project is released under the MIT license.

Where it fits