digコマンド実践活用術|DNS調査で本当に使う確認方法を理解する

digコマンド

digコマンド実践活用術

DNSサーバの構築や運用を行う際、最も利用頻度が高い確認コマンドがdigです。

DNSトラブルが発生した場合、まずdigで確認するという管理者も少なくありません。

nslookupも有名ですが、現在のLinux運用ではdigが事実上の標準ツールとなっています。

BINDの動作確認、DNSレコード確認、ゾーン転送確認、メールトラブル調査など、幅広い場面で利用できます。

本記事では実務で本当によく使うdigコマンドの使い方を解説します。

digとは

digはDNS問い合わせを行うためのコマンドです。

正式名称は以下の通りです。


Domain Information Groper

DNSサーバへ直接問い合わせを行い、その結果を詳細に表示できます。

インストール確認

Rocky Linuxではbind-utilsパッケージに含まれています。

# dnf install bind-utils

インストール後に確認します。
$ dig -v

最も基本的な使い方

ドメイン名を指定するだけです。

$ dig www.example.com

DNSサーバへ問い合わせが行われます。

出力例
;; QUESTION SECTION:
;www.example.com. IN A

;; ANSWER SECTION:
www.example.com. 3600 IN A 192.168.60.20

ANSWER SECTIONが実際の回答です。

DNSサーバを指定する

実務で最もよく使う形式です。
$ dig @8.8.8.8 www.example.com

Google Public DNSへ問い合わせます。

自分のBINDを確認する

$ dig @127.0.0.1 www.example.com

ローカルDNSサーバの動作確認です。

BIND構築時によく利用します。

Aレコード確認

IPv4アドレスを確認します。
$ dig www.example.com A

以下と同じ意味です。
$ dig www.example.com

AAAAレコード確認

IPv6アドレスを確認します。

$ dig www.example.com AAAA

MXレコード確認

メールサーバ調査で非常によく使います。
$ dig example.com MX

結果例です。
example.com. IN MX 10 mail.example.com.

NSレコード確認

権威DNSサーバを確認します。
$ dig example.com NS

DNS設定確認で頻繁に利用します。

TXTレコード確認

SPFやDKIM確認に利用します。

$ dig example.com TXT

結果例です。

"v=spf1 mx -all"

SOAレコード確認

ゾーン管理情報を確認します。

$ dig example.com SOA

シリアル番号確認によく利用します。

シリアル番号確認

結果例です。


2026060901

ゾーン更新確認時に重要です。

逆引き確認

PTRレコードを確認します。

$ dig -x 192.168.60.20

逆引き調査では必須です。

権威DNS確認

権威DNSへ直接問い合わせます。

$ dig @ns1.example.com example.com SOA

正式な情報を確認できます。

キャッシュDNSを経由しない確認

DNS変更直後によく利用します。

$ dig @ns1.example.com www.example.com

キャッシュの影響を受けません

TTL確認

ANSWER SECTIONを確認します。

www.example.com. 3600 IN A 192.168.60.20

3600がTTLです

短い表示

IPアドレスだけ欲しい場合です。


$ dig +short www.example.com

結果です。


192.168.60.20

スクリプトでよく利用します。

MXの短縮表示


$ dig +short example.com MX

結果です。


10 mail.example.com.

ゾーン転送確認

AXFRを確認します。


$ dig @192.168.60.10 example.com AXFR

許可されていればゾーン全体が表示されます。

ゾーン転送拒否確認

正常な環境では次のようになります。


Transfer failed.

外部から見える場合は危険です。

DNS応答時間確認

Query timeを確認します。


;; Query time: 5 msec

DNS性能確認に利用できます。

問い合わせ経路確認

利用したDNSサーバを確認します。


;; SERVER: 8.8.8.8#53

どのDNSサーバが応答したか分かります。

再帰問い合わせ確認

フラグを確認します。


flags: qr rd ra
フラグ意味
rd再帰要求
ra再帰利用可能
aa権威応答

権威DNS確認で重要なaa

権威DNSサーバでは以下が表示されます。

flags: qr aa

Authoritative Answerを意味します。

DNS変更確認で使う方法

複数のDNSサーバへ問い合わせます。

$ dig @8.8.8.8 www.example.com

$ dig @1.1.1.1 www.example.com

反映状況を比較できます。

DNS障害調査の流れ

dig localhost
↓
dig 自DNS
↓
dig 外部DNS
↓
dig 権威DNS

順番に確認すると切り分けしやすくなります。

実務で最も使うコマンド

dig @127.0.0.1 www.example.com

dig example.com MX

dig example.com SOA

dig -x 192.168.60.20

dig +short www.example.com

まずはこれだけ覚えておけば十分です。

よくあるトラブル

NXDOMAIN

レコードが存在しません。

SERVFAIL

DNSサーバ内部エラーです。

REFUSED

問い合わせが拒否されています。

タイムアウト

DNSサーバへ到達できません。

実務で覚えておきたいポイント

  • digはDNS調査の基本ツール
  • @でDNSサーバ指定できる
  • SOAでシリアル番号確認できる
  • MX確認はメール障害調査で必須
  • +shortは非常によく使う
  • AXFR確認はセキュリティ監査で重要

まとめ

digはDNS管理者にとって最も重要な確認ツールの一つです。

Aレコード確認からメール障害調査、ゾーン転送確認まで幅広く利用できます。

特に「@DNSサーバ指定」「SOA確認」「MX確認」「+short」は実務で頻繁に利用されます。

DNSトラブル対応ではまずdigを実行する習慣を付けることで、原因特定を大幅に効率化できるでしょう。