なかなか教えてくれないdigコマンドの実践的な使い方

Webサイトが表示されない、メールが届かない、サーバー設定は合っているはずなのに通信がうまくいかない。

こうした場面で「DNSが怪しいんじゃね?」と言われた経験ある人も多いかと思います。

DNSまわりのトラブルは目に見えにくく、初心者にとって特にハードルが高い分野です。そして、その調査に欠かせないのが digコマンド です。

ただし、digは「使えば便利」と言われるわりに、実務でどう使うのか、どこを見ればいいのかまで丁寧に教えてもらえる機会はあまり多くありません。

結果として「とりあえず打ってみたけど、出力結果の意味がよくわからない」という状態で終わってしまうことも少なくありません。

この記事では、digコマンドを DNSの仕組みを理解するための道具 として、そして 実務トラブルを切り分けるための武器 として使えるようになっていきましょう!

目次

digコマンドとは何か

digは「DNSに質問するための道具」

digは「Domain Information Groper」の略で、DNSサーバーに対して直接問い合わせを行うためのコマンドです。

DNSはよく「インターネットの電話帳」に例えられます。

人間が覚えやすい「example.com」という名前を、コンピュータが理解できるIPアドレスに変換する役割を持っています。

digコマンドを使うと、

  • このドメインはどのIPアドレスを指しているのか
  • メールの配送先はどこか
  • DNS設定が正しく反映されているか

といった情報を、自分の手で確認できます。

pingやnslookupとの違い

DNS確認といえば、pingやnslookupを思い浮かべる人もいるかもしれません。

簡単に整理すると以下のような位置づけになります。

  • ping 通信できるかどうかを確認する道具。DNS確認はおまけ要素
  • nslookup DNS確認ができるが、出力が簡素で細かい制御がしにくい
  • dig DNSの詳細な情報を、柔軟に、正確に取得できる

実務では「なぜそうなっているのか」を知る必要がある場面が多く、digの出番が増えていきます。

digコマンドの基本的な使い方

まずは一番シンプルな実行

digの基本形はとてもシンプルです。

dig example.com

これだけで、example.comに対するDNSの問い合わせ結果が表示されます。

ただし、初めて見ると情報量が多くて戸惑うかもしれません。

大切なのは、最初は全部を理解しようとしなくて大丈夫です。

出力結果の全体像をつかむ

digの出力は大きくいくつかのセクションに分かれています。

  • ヘッダー情報
  • QUESTION SECTION
  • ANSWER SECTION
  • AUTHORITY SECTION
  • ADDITIONAL SECTION

初心者のうちは、まず ANSWER SECTION に注目すれば十分です。

ANSWER SECTIONを見る意味

ANSWER SECTIONには、DNSサーバーが「質問に対してどう答えたか」が書かれています。

たとえば、Aレコード(IPアドレス)を確認した場合、次のような情報が並びます。

  • ドメイン名
  • レコードの種類(Aなど)
  • TTL(キャッシュの有効時間)
  • IPアドレス

ここを見れば、「このドメインは今どこを指しているのか」が一目でわかります。

実務でよく使うdigのパターン

Aレコードを明示的に確認する

Webサイトが表示されないとき、まず確認したいのがAレコードです。

dig example.com A

これで「Webサーバーの住所」が正しいかどうかを確認できます。

設定変更直後に違うIPが出てきた場合、DNSの反映がまだ終わっていない可能性も判断できます。

MXレコードでメール設定を確認する

メールが届かない、送れないといったトラブルではMXレコードが重要です。

dig example.com MX

MXレコードは「このドメイン宛のメールは、どのサーバーが受け取るか」を示します。

ここが間違っていると、サーバー設定が完璧でもメールは正しく届きません。

TXTレコードで認証設定を確認する

最近よく使われるのがTXTレコードです。

  • SPF
  • DKIM
  • DMARC
  • ドメイン所有確認

これらはすべてTXTレコードで設定されます。

dig example.com TXT

メールの迷惑メール対策や、外部サービス連携でトラブルが起きたときに、TXTレコードの確認は欠かせません。

DNSが「どこで」おかしいかを見抜く

ローカルDNSと公開DNSの違い

digは、どのDNSサーバーに問い合わせるかを指定できます。

dig @8.8.8.8 example.com

これはGoogleの公開DNS(8.8.8.8)に直接問い合わせる例です。

  • ローカル環境では正しく引けない
  • でも公開DNSでは正しく返ってくる

このような場合、問題はローカルネットワークやキャッシュ側にあると判断できます。

DNSの反映待ちかどうかを見極める

DNS設定変更後、「もう反映されたはずなのに」と感じることはよくあります。

digを使って複数のDNSサーバーに問い合わせることで、

  • 反映途中なのか
  • 設定ミスなのか

を切り分けることができます。

これは、道路工事中の看板を見るようなものです。

場所によって情報が違うなら、工事はまだ終わっていない可能性が高い、というイメージです。

出力結果で特に注目すべきポイント

TTLの意味を理解する

TTLは「この情報をどれくらい覚えていていいか」を表します。

TTLが長いと、

  • DNS変更が反映されるまで時間がかかる
  • トラブルが長引く

逆に短いと、変更は早く反映されますが、DNSサーバーの負荷は高くなります。

digでTTLを見る癖をつけると、「なぜまだ変わらないのか」が説明しやすくなります。

ステータスコードを見る

ヘッダー部分にある status も重要です。

  • NOERROR:正常
  • NXDOMAIN:そのドメインは存在しない

NXDOMAINが返ってくる場合、DNS以前の問題(ドメイン名の間違いなど)が疑えます。

digを使うと実務が楽になる理由

トラブル対応での説得力が上がる

digの結果を示しながら説明できると、

  • 設定は正しい
  • 反映待ちである
  • 相手側の問題である

といった判断を、感覚ではなく事実として伝えられます。

これは、チーム内や外部ベンダーとのやり取りで特に役立ちます。

「なんとなくDNSが怪しい」を脱却できる

DNSトラブルはブラックボックスになりがちです。

digを使いこなせるようになると、

  • どこまでが自分の責任範囲か
  • どこから先は他者の領域か

を冷静に切り分けられるようになります。

一問一答でよくある疑問

digの結果が長すぎて読む気がしない

最初はANSWER SECTIONだけを見れば問題ありません。慣れてきたら他の情報も少しずつ見ていきましょう。

毎回同じ結果が返ってこないのはなぜ?

DNSはキャッシュされる仕組みなので、問い合わせ先やタイミングで結果が変わることがあります。

digは本番環境に影響を与えない?

影響は基本ありません。digは「見るだけ」のコマンドです。

まとめ

digコマンドは、DNSという見えにくい仕組みを「見える化」してくれる強力な道具です。

最初は難しく感じるかもしれませんが、

  • まずはAレコードを見る
  • ANSWER SECTIONだけに注目する
  • TTLとステータスを意識する

この3点を押さえるだけでも、実務での理解度は大きく変わります。

DNSトラブルは避けられませんが、digを使えるようになると「怖いもの」から「対処できるもの」に変わります。

日常的に少しずつ触れて、感覚を身につけていきましょう。

この記事が気に入ったら
フォローしてね!

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次