doggo - モダン DNS クライアント チートシート
doggo はコマンドラインの最新の DNS クライアントです。dig の方がより友好的で、色付けされた代替手段で、きれいな表形式またはJSON 出力です。従来の UDP/TCP クエリを超えて、最新の暗号化トランスポートについて通信します: DNS-over-HTTPS (DoH)、DNS-over-TLS (DoT)、DNS-over-QUIC (DoQ)、および DNSCrypt。Go で書かれており、単一のバイナリとして配布され、迅速な参照とスクリプト化された DNS 診断の両方に便利です。
インストール
| プラットフォーム | コマンド |
|---|
| Go install | go install github.com/mr-karan/doggo/cmd/doggo@latest |
| macOS (Homebrew) | brew install doggo |
| Arch Linux | sudo pacman -S doggo |
| Docker | docker run --rm ghcr.io/mr-karan/doggo doggo example.com |
| バイナリ | GitHub リリース ページから ダウンロード |
基本的なクエリ
| コマンド | 説明 |
|---|
doggo example.com | デフォルト A レコード検索 |
doggo example.com MX | 特定のレコード タイプをクエリ |
doggo example.com A AAAA MX | 複数のレコード タイプを同時にクエリ |
doggo example.com @1.1.1.1 | 特定のリゾルバーを使用 |
doggo --help | 完全なオプション一覧 |
doggo --version | バージョン |
レコード タイプ
| 例 | 戻り値 |
|---|
doggo example.com A | IPv4 アドレス |
doggo example.com AAAA | IPv6 アドレス |
doggo example.com MX | メール サーバー |
doggo example.com TXT | TXT レコード (SPF、DKIM、検証) |
doggo example.com NS | ネーム サーバー |
doggo example.com CNAME | 正規名 |
doggo example.com SOA | 権威開始 |
doggo example.com CAA | 認証局認可 |
暗号化および 代替トランスポート
| コマンド | トランスポート |
|---|
doggo example.com @https://cloudflare-dns.com/dns-query | DNS-over-HTTPS (DoH) |
doggo example.com @tls://1.1.1.1 | DNS-over-TLS (DoT) |
doggo example.com @quic://dns.adguard.com | DNS-over-QUIC (DoQ) |
doggo example.com @sdns://... | DNSCrypt (スタンプ) |
doggo example.com @udp://1.1.1.1 | 明示的な UDP |
doggo example.com @tcp://1.1.1.1 | 明示的な TCP |
出力制御
| オプション | 説明 |
|---|
--json | JSON 出力 (スクリプトに最適) |
--short | 回答値のみを出力 |
--color=false | 色付けされた出力を無効にする |
--time | クエリのラウンドトリップ時間を表示 |
-4 / -6 | IPv4 / IPv6 トランスポートを強制 |
逆および 高度な
| コマンド | 説明 |
|---|
doggo --reverse 1.1.1.1 | 逆 DNS (PTR) 検索 |
doggo example.com --ndots=1 | ndots 解決動作を制御 |
doggo example.com --search | システム検索リストを使用 |
doggo example.com --aa | 権威的な回答をリクエスト |
doggo example.com --do | DNSSEC OK ビットを設定 |
一般的なワークフロー
# 迅速な、人間が読める回答のみ
doggo --short example.com
# メール設定を一目で確認
doggo example.com MX TXT
# DoH リゾルバーをテストしてタイミング
doggo example.com @https://dns.google/dns-query --time
# 監視用にスクリプト フレンドリー JSON
doggo example.com A --json | jq '.responses[].answers'
# IP の逆レコードを確認
doggo --reverse 8.8.8.8 --short
doggo vs dig vs dog
| 機能 | doggo | dig | dog |
|---|
| 色付け出力 | はい | いいえ | はい |
| JSON 出力 | はい | いいえ | はい |
| DoH / DoT / DoQ | はい | 限定的 | はい |
| DNSCrypt | はい | いいえ | いいえ |
| 単一バイナリ | はい (Go) | システム pkg | はい (Rust) |
リソース