Skip to content
KitploitKITPLOIT
ツールエクスプロイトブログ
Log in
提出
ツールエクスプロイトブログ
提出

ハッキング、侵入テスト、サイバーセキュリティツールをあなたのセキュリティアーセナルに!

Kitploitはハッキング、サイバーセキュリティ、ペネトレーションテストのツールディレクトリです。最新のプロジェクトアップデートを見つけて、脆弱性の発見、システム分析、テストの自動化、セキュリティの強化を行いましょう。

··フィード·お問い合わせ·プライバシー·© 2026 Kitploit

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
dnsdiag — DNSの計測、トラブルシューティング、およびセキュリティ監査ツールセット | Kitploit
ツール/GitHubGitHub/farrokhi/dnsdiag
偵察ネットワークマッピング脆弱性分析情報収集ネットワークセキュリティDNS分析DNS分析 第1位
GitHubfarrokhi/dnsdiag

dnsdiag

DNSの計測、トラブルシューティング、およびセキュリティ監査ツールセット

リポジトリを見る
1.1k1113729日前Kitploit レビュー済み

人気

すべて見る →

コミュニティで最も使われているツールを見つけましょう。

すべてのツールを探索

ツールコレクションを閲覧

すべてのツールを見る →
共有
ウェブサイト

PyPI PyPI Downloads Downloads PyPI Docker Pulls GitHub stars

DNS測定、トラブルシューティング、セキュリティ監査ツールセット

ISP が DNS トラフィックを傍受 していないか疑問に思ったことはありませんか? DNS 応答に異常な挙動を感じたり、間違ったアドレスにリダイレクトされたりして、DNS に問題があるのではと疑ったことはありませんか? このツールセットは、DNS リクエストと応答の基本的な監査を実行し、DNS が期待通りに機能していることを確認するのに役立ちます。

dnsping を使用すると、任意のクエリに対する任意の DNS サーバーの応答時間を測定できます。通常の ping ユーティリティと同様に、dnsping は DNS リクエストに対して同等の機能を提供し、サーバーの応答性を監視するのに役立ちます。

また、dnstraceroute を使用して DNS リクエストの宛先への経路をトレースし、リダイレクトや傍受が行われていないことを確認できます。同じサーバーに送信された DNS クエリを比較することで、dnstraceroute は経路の違いを観察し、潜在的な問題を警告します。

dnseval は複数の DNS リゾルバーを評価し、ネットワークに最適な DNS リゾルバーを選択するのに役立ちます。サードパーティの DNS リゾルバーに依存しないように、独自の DNS リゾルバーを使用することを推奨しますが、dnseval は必要な場合に最適な DNS リゾルバーを選択するのに役立ちます。パフォーマンス (レイテンシ) と信頼性 (パケットロス) に基づいて DNS サーバーを比較し、情報に基づいた意思決定のための包括的なビューを提供します。

インストール

このツールセットを使用する方法はいくつかありますが、最適な柔軟性と制御のために、ソースコードから直接実行することを推奨します。

ソースコード

  1. Git リポジトリをチェックアウトし、依存関係をインストールします:
git clone https://github.com/farrokhi/dnsdiag.git
cd dnsdiag
pip3 install -r requirements.txt
  1. または、pip を使用してパッケージをインストールすることもできます:
pip3 install dnsdiag

uv を使用する (推奨)

uv は高速な Python パッケージマネージャーで、インストールせずにツールを直接実行できます:

# dnsping をインストールせずに直接実行
uvx --from dnsdiag dnsping google.com

# 特定のオプションを指定して実行
uvx --from dnsdiag dnsping -c 5 --tls -s 8.8.8.8 example.com

# dnstraceroute を実行
uvx --from dnsdiag dnstraceroute cloudflare.com

# dnseval を実行
uvx --from dnsdiag dnseval -f public-servers.txt github.com

dnsdiag を永続的にインストールするには:

# dnsdiag ツールをインストール
uv tool install dnsdiag

# 最新バージョンにアップグレード
uv tool upgrade dnsdiag

バイナリパッケージ

随時、Windows、Mac OS X、Linux 向けのバイナリパッケージがリリースされます。最新のリリースは リリースページ から入手できます。

サポート対象プラットフォーム

プリビルドバイナリは以下で利用可能です:

  • Linux (x86_64, ARM64)
  • macOS (Intel, Apple Silicon)
  • Windows (x86_64)

Windows ARM64 は現在サポートされていません。これは、ビルド依存関係がネイティブコンパイルツールチェーンを必要とするためです。Windows on ARM を使用している場合は、Windows Subsystem for Linux (WSL2) を使用するか、ソースから直接インストールすることで dnsdiag を実行できます。

Docker

ローカルマシンに dnsdiag をインストールしたくない場合は、Docker イメージを使用してコンテナ環境でツールを実行できます。例:

docker run --network host -it --rm farrokhi/dnsdiag dnsping.py

dnsping

dnsping を使用すると、任意の DNS クエリを複数回送信して DNS リゾルバーに "ping" を実行できます。サポートされているコマンドラインオプションの完全なリストは --help で確認してください。主要なフラグをいくつか示します:

  • --tcp、--tls、--doh、--quic、--http3 を使用してトランスポートプロトコルを選択します (デフォルトは UDP)。これらのオプションは相互に排他的です。コマンドごとに1つのプロトコルのみ指定できます。
  • --flags を使用して、各応答の応答フラグ (EDNS フラグを含む) を表示します。
  • --dnssec を使用して、利用可能な場合に DNSSEC 検証を要求します。
  • 拡張 DNS エラーメッセージ (RFC 8914) は、存在する場合に自動的に表示されます。
  • --nsid を使用して、利用可能な場合にネームサーバー識別子 (NSID) を表示します (RFC 5001)。
  • --ecs を使用して、地理的なルーティング最適化のために EDNS クライアントサブネット情報を含めます。
  • --cookie を使用して、応答に存在する場合に DNS クッキー (RFC 7873) を表示します。
./dnsping.py -c 5 --dnssec --flags --tls -t AAAA -s 8.8.8.8 brokendnssec.net
dnsping.py DNS: 8.8.8.8:853, hostname: brokendnssec.net, proto: TLS, class: IN, type: AAAA, flags: [RD]
75  bytes from 8.8.8.8: seq=1   time=73.703 ms  SERVFAIL [QR RD RA -- DO] [EDE:10("For brokendnssec.net/soa")]
75  bytes from 8.8.8.8: seq=2   time=69.523 ms  SERVFAIL [QR RD RA -- DO] [EDE:10("For brokendnssec.net/soa")]
75  bytes from 8.8.8.8: seq=3   time=58.058 ms  SERVFAIL [QR RD RA -- DO] [EDE:10("For brokendnssec.net/soa")]
75  bytes from 8.8.8.8: seq=4   time=54.235 ms  SERVFAIL [QR RD RA -- DO] [EDE:10("For brokendnssec.net/soa")]
75  bytes from 8.8.8.8: seq=5   time=57.806 ms  SERVFAIL [QR RD RA -- DO] [EDE:10("For brokendnssec.net/soa")]

--- 8.8.8.8 dnsping statistics ---
5 requests transmitted, 5 responses received, 0% lost
min=54.235 ms, avg=22.665 ms, max=69.523 ms, stddev=38.202 ms

dnsping は、最小、最大、平均応答時間に加えて、ジッター (標準偏差) とパケットロスなどの統計情報も提供します。

dnsping の興味深い使用例をいくつか紹介します:

  • 異なるトランスポートプロトコル (例: UDP と DoH) 間の応答時間の比較。
  • ジッターとパケットロスを測定して DNS サーバーの信頼性を評価。
  • --dnssec フラグを使用して DNSSEC を有効にした場合の応答時間の測定。
  • 地理位置情報に基づく応答のための EDNS クライアントサブネットの動作テスト:
./dnsping.py -c 3 --ecs 203.0.113.0/24 -s 94.140.14.14 google.com
dnsping.py DNS: 94.140.14.14:53, hostname: google.com, proto: UDP, class: IN, type: A, flags: [RD]
66  bytes from 94.140.14.14: seq=1   time=31.407 ms  NOERROR [ECS:203.0.113.0/24/24]
66  bytes from 94.140.14.14: seq=2   time=29.156 ms  NOERROR [ECS:203.0.113.0/24/24]
66  bytes from 94.140.14.14: seq=3   time=30.892 ms  NOERROR [ECS:203.0.113.0/24/24]

--- 94.140.14.14 dnsping statistics ---
3 requests transmitted, 3 responses received, 0% lost
min=29.156 ms, avg=30.485 ms, max=31.407 ms, stddev=1.176 ms
  • NSID オプションを使用した DNS サーバーの識別:
./dnsping.py -c 2 --nsid -s 8.8.8.8 google.com
dnsping.py DNS: 8.8.8.8:53, hostname: google.com, proto: UDP, class: IN, type: A, flags: [RD]
68  bytes from 8.8.8.8: seq=1   time=36.399 ms  NOERROR [NSID:gpdns-ams]
68  bytes from 8.8.8.8: seq=2   time=32.156 ms  NOERROR [NSID:gpdns-ams]

--- 8.8.8.8 dnsping statistics ---
2 requests transmitted, 2 responses received, 0% lost
min=32.156 ms, avg=34.278 ms, max=36.399 ms, stddev=2.122 ms
  • セキュリティ強化とキャッシュ最適化のための DNS クッキーのテスト:
./dnsping.py -c 2 --cookie -s anyns.pch.net quad9.net
dnsping.py DNS: anyns.pch.net:53, hostname: quad9.net, proto: UDP, class: IN, type: A, flags: [RD]
82  bytes from anyns.pch.net: seq=1   time=30.552  ms  NOERROR [COOKIE:27f609c017bb2ec4ea70de5c68eec3fc39f6a53ee49c55f8]
82  bytes from anyns.pch.net: seq=2   time=24.794  ms  NOERROR [COOKIE:719631dd9fcce722d3ac859b68eec3fd2e5430b5c8a7f8cf]

--- anyns.pch.net dnsping statistics ---
2 requests transmitted, 2 responses received, 0% lost
min=24.794 ms, avg=27.673 ms, max=30.552 ms, stddev=4.072 ms

DNSSEC およびセキュリティ関連フラグの解釈

--dnssec と --flags を使用すると、dnsping は DNS セキュリティ検証に直接関連する DNS プロトコルフィールドを公開します。これらの値は、リゾルバーが DNSSEC を検証できるかどうか、および応答が正常に検証されたかどうかを示します。

一般的なフラグ:

  • DO (DNSSEC OK)
    クライアントが DNSSEC 関連レコードを要求していることを示します。その存在は、リゾルバーが DNSSEC クエリをサポートしていることを示します。

  • AD (Authenticated Data)
    応答が DNSSEC を使用して暗号的に検証された場合に、検証リゾルバーによって設定されます。これは DNSSEC 検証がアクティブで成功していることを示す強力なシグナルです。

典型的なパターン:

結果意味
NOERROR と AD フラグDNSSEC 検証成功
SERVFAIL と DO フラグDNSSEC 検証失敗 (多くの場合、署名の破損または設定ミスが原因)
AD フラグなしリゾルバーが DNSSEC 検証を実行していない

拡張 DNS エラー (EDE、RFC 8914) は、DNSSEC 検証が失敗した場合に追加の診断情報を提供します。例:

  • EDE:10 – DNSSEC Bogus (無効または破損した DNSSEC データ)
  • EDE:6 – DNSSEC Signature Expired (DNSSEC 署名の期限切れ)
  • EDE:7 – DNSSEC Signature Not Yet Valid (DNSSEC 署名がまだ有効でない)

これらの指標により、dnsping はパフォーマンステストだけでなく、リゾルバーが DNSSEC を正しく強制しているかどうかの検証や、DNSSEC 展開の問題の診断にも役立ちます。

dnstraceroute

dnstraceroute は、DNS リクエストの宛先への経路をトレースするユーティリティです。実際のネットワークトレースルートと比較して、DNS トラフィックが不要な経路を経由していないことを確認できます。

ツールをダウンロード