技術(非IT系)

Dig コマンドの使い方は?DNS 検索の基本操作を解説(domain information groper・DNS・ネットワーク・Linux・コマンドラインなど)

当サイトでは記事内に広告を含みます

「dig コマンド」は、ネットワーク管理者やエンジニアにとって必須のDNS検索ツールです。

Linuxをはじめとする UNIX 系のシステムで広く使われるこのコマンドは、ドメイン名とIPアドレスの名前解決・DNSレコードの確認・ネットワーク障害の診断など、多くの場面で活躍します。

本記事では、dig コマンドの基本的な使い方から、各種オプション・実践的な活用法まで詳しく解説していきます。

dig コマンドとは?DNS 検索の基本を理解する

それではまず、dig コマンドの基本的な概念と役割について解説していきます。

dig は「Domain Information Groper(ドメイン情報収集ツール)」の略称で、DNS(Domain Name System)サーバーに対してクエリを送信し、その応答を表示するコマンドラインツールです。

nslookupの後継ツールとして位置づけられており、より詳細で柔軟なDNS情報の取得が可能となっています。

dig コマンドの主な用途

・ドメイン名のIPアドレス解決(Aレコード・AAAAレコードの確認)

・メールサーバー情報の確認(MXレコード)

・ドメインの権威DNSサーバー確認(NSレコード)

・DNSの設定確認・トラブルシューティング

・TTL(Time To Live)の確認

・逆引きDNS(PTRレコード)の確認

dig コマンドのインストール方法

dig コマンドは、多くのLinuxディストリビューションで「bind-utils」パッケージに含まれています。

インストールコマンド:

Ubuntu / Debian系:sudo apt install dnsutils

CentOS / RHEL系:sudo yum install bind-utils

macOS:macOS では標準インストール済み(追加インストール不要)

Windows:Windows Subsystem for Linux(WSL)または別途インストールが必要

dig コマンドの基本構文

dig コマンドの基本的な構文は以下の通りです。

基本構文:dig [オプション] [ドメイン名] [レコードタイプ] [@DNSサーバー]

最もシンプルな使い方:dig example.com

(example.com の A レコードを調べる)

dig の出力結果の読み方

dig コマンドの出力は複数のセクションに分かれており、それぞれに意味があります。

セクション名 内容
HEADER クエリID・フラグ・質問数・回答数など
QUESTION SECTION 送信したクエリの内容(ドメイン名・レコードタイプ)
ANSWER SECTION DNSサーバーからの回答(IPアドレスなど)
AUTHORITY SECTION 権威DNSサーバーの情報
ADDITIONAL SECTION 追加情報(権威サーバーのIPアドレスなど)
STATISTICS クエリの実行時間・サーバー・日時

dig コマンドの主要オプションと使い方

続いては、dig コマンドの主要なオプションと実践的な使い方を確認していきます。

DNS レコードタイプ別の dig コマンド

各レコードタイプの検索コマンド:

Aレコード(IPv4アドレス):dig example.com A

AAAAレコード(IPv6アドレス):dig example.com AAAA

MXレコード(メールサーバー):dig example.com MX

NSレコード(ネームサーバー):dig example.com NS

TXTレコード(テキスト情報):dig example.com TXT

CNAMEレコード(エイリアス):dig example.com CNAME

全レコード確認:dig example.com ANY

特定の DNS サーバーを指定した dig の使い方

dig コマンドでは、クエリを送信するDNSサーバーを「@」記号で指定できます。

特定のDNSサーバーへのクエリ例:

Google Public DNS を使用:dig example.com @8.8.8.8

Cloudflare DNS を使用:dig example.com @1.1.1.1

権威DNSサーバーへの直接クエリ:dig example.com @ns1.example.com

特定のDNSサーバーを指定することで、DNSキャッシュの影響を排除した確認や、特定のサーバーの応答テストが可能になります。

dig の便利なオプション一覧

オプション 意味・効果
+short シンプルな出力(IPアドレスのみなど)
+noall +answer ANSWERセクションのみ表示
-x(逆引き) IPアドレスからドメイン名を調べる
+trace DNSの委任経路をトレースする
+dnssec DNSSECの確認を行う
-p ポート番号 使用するポートを指定(デフォルトは53)

dig コマンドの実践的な活用シーン

続いては、dig コマンドの実践的な活用シーンを確認していきます。

DNS トラブルシューティングでの dig の使い方

ネットワーク障害・DNS解決の問題が発生した際、dig コマンドは非常に有効なトラブルシューティングツールです。

トラブルシューティング手順例:

手順1:dig example.com(基本的な名前解決を確認)

手順2:dig example.com @8.8.8.8(外部DNSとの差異を確認)

手順3:dig +trace example.com(DNS委任経路の確認)

手順4:dig -x [IPアドレス](逆引きDNSの確認)

メール設定確認での dig の活用

メールサーバーの設定確認でも dig は活躍します。

MXレコードの確認・SPFレコード(TXTレコード)の確認・DMARCレコードの確認など、メール到達性に関わるDNS設定を一通り確認できます。

メール関連のdig コマンド例:

MXレコード確認:dig example.com MX +short

SPFレコード確認:dig example.com TXT +short

DMARCレコード確認:dig _dmarc.example.com TXT +short

dig と nslookup の違い

dig と nslookup はどちらもDNS検索ツールですが、いくつかの違いがあります。

比較項目 dig nslookup
出力の詳細度 詳細・構造化された出力 シンプルな出力
スクリプト活用 向いている あまり向いていない
対応OS 主にLinux/macOS Linux/macOS/Windows
プロ向け機能 豊富(+traceなど) 基本機能に限定

まとめ

本記事では、dig コマンドの基本概念・インストール方法・主要オプション・実践的な活用シーンまで詳しく解説しました。

dig はDNSトラブルシューティング・メール設定確認・ネットワーク管理など、多岐にわたる場面で活躍する強力なコマンドラインツールです。

+short・+trace・-x などの主要オプションを覚えておくことで、日常的なネットワーク管理の効率が格段に向上するでしょう。

ネットワークエンジニアやサーバー管理者の方はもちろん、Web開発者の方もぜひ dig コマンドをマスターしてみてください。