
2026/07/06 6:55
DNSGlobe – Rust を使った世界中の DNS プロパゲーションを観察する TUI ツール
RSS: https://news.ycombinator.com/rss
要約▶
Japanese Translation:
dnsglobe は、ターミナル利用者のために世界規模の DNS 伝播を可視化することを目的とした、TUI サポート付きの Rust ベースのコマンドラインツールです。本ツールは、Google、Cloudflare、Telstra AU(オーストラリア)など主要な事業者や地域にまたがる 34 のパブリック DNS レゾルバーを並列でクエリします。精度の確保のため、切断された回答への TCP フォールバックや任意キャストネットワークなどの技術的 нюанスを適切に処理します。重要な機能として、輪番 DNS に伴う一貫性の判定に対応するため、同一のレコードを共有する回答はグループ化されます。ドメイン(例:
dnsglobe example.com)で実行すると監視モードに入り、完全な伝播が完了するまで 30 秒ごとに再ポーリングを行います。この動作は --once フラグを使用してスクリプト化可能です。ターミナルの幅が 150 カラム以上の場合、インタラクティブな世界マップが表示され、各レゾルバーの状態に色付きのドット(一致:緑、差異:マゼンタ、エラー:赤、処理中:黄色)で示されます。ユーザーは / キーでドメインを編集し、Tab キーでレコードタイプを切り替え、Esc または Ctrl+C で終了できます。カスタマイズは src/resolvers.rs に記載されたレゾルバーリストを通じて可能です。本ツールは Homebrew、Cargo、またはプリビルトのバイナリを用いてインストールをサポートしており、グラフィカルインターフェースが不要な状態で高度な DNS デバッグが可能となります。本文
世界地図で DNS プロパゲーションをチェックする TUI ツール「dnsglobe」
dnsglobe は、Rust を用いて開発されたターミナル向けのグローバル DNS プロパゲーションチェックツールです。世界中の公開 DNS リゾルバーに対して並行して照会を行い、回答を比較することで、あなたのレコードのプロパゲーション状況を世界地図上で視覚的に確認できます。
従来の Web サービス(dnschecker.org など)に代わり、ターミナル上で動作し、リアルタイム監視モードに対応しています。
主な特徴と仕組み
- 自動再チェック機能
- チェックを開始すると、レコードが全世界で 100% プロパゲートするまで自動的に再照会を繰り返します。
- Watch モードでは、30 秒ごとに再度照会を行います。
- 広範なリゾルバー網
- グローバルな Anycast ネットワーク(Google, Cloudflare, Quad9)に加え、地域ごとの主要 ISP もカバーしています。
- 対象地域:北米、欧州、ロシア、中東、東アジア、南半球(オーストラリア/Telstra、ニュージーランド/SafeSurfer、ブラジル/UOL など)。
- 正確な結果の取得
- 各リゾルバーを直接照会するため、そのサーバーが認識している最新のレコード状況を反映します。
- 知能的なグループ化処理
- レコード回答に含まれる項目が共通するもの同士は自動的にグループ化されます。
- 例:ラウンドロビンド NS レコードの場合、複数の IP アドレスプールを持つリゾルバー間で一貫性のある結果であっても、不一致としてカウントされません(エラーを減らします)。
- 視覚的なフィードバック
- ターミナル幅が 150 コラム以上の場合、右側に世界地図が表示されます。
- リゾルバーごとのステータスは色分けで表示:
- 🟢 緑: 一致
- 🟣 マゼンタ: 不一致
- 🔴 赤: エラー
- 🟡 黄: 処理中
- プロパゲーションゲージは、多数派に属するリゾルバーの数を示します。外れ値となったリゾルバーには 「DIFFERS」 というフラグが追加されます。
インストール方法
以下のいずれかの方法でインストール可能です。
# Homebrew (macOS/Linux) brew install 514-labs/tap/dnsglobe # crates.io より最新版を取得 cargo install dnsglobe # 事前ビルド済みのバイナリを入手 # GitHub Releases ページからダウンロード可能
使用方法
基本コマンド
| コマンド | 説明 |
|---|---|
| 空状態で起動。その後、ドメインを入力して確認を開始します。 |
| ドメインを指定して即座に照会を開始。Watch モードで表示されます。 |
| TUI を使用せず、結果だけを出力してから終了します(スクリプト向け)。 |
キー操作一覧
| キー | 動作 |
|---|---|
, , | ドメイン名の編集(追加・削除) |
, / , | ドメインフィールド内でのカーソル移動 |
| チェック開始。Watch モードに入り、30 秒間隔で再照会して 100% プロパゲーションまで継続 |
| 監視モードの停止または再開(Pause/Resume) |
/ | レコードタイプを選択変更(A, AAAA, CNAME, MX, NS, TXT, SOA) |
, / , | リゾルバー一覧表のスクロール |
| ドメイン名をクリア |
/ | アプリケーションの終了 |
注意事項・備考
- Anycast ネットワークについて
- 複数のリゾルバーが Anycast で構成されているため、応答するのは利用者に最も近いノードです。
- 「場所」欄に表示されるのは、そのオペレーター(ISP)のホームリージョンとなります。
- リゾルバーの追加・削除
- リゾルバー一覧は
に定義されており、必要に応じて自由に編集が可能です。src/resolvers.rs
- リゾルバー一覧は
- 照会制限について
- 全てのエントリが外部から照会可能であることを検証済みですが、多くの大手 ISP はネットワーク外からの照会を拒否しています。
- そのため、特にアフリカ全域を網羅する主要なリゾルバーなどは、現在の仕様では含まれていません。