Linux dig コマンド

Linux コマンド大全


dig (Domain Information Groper) は、Linuxシステムにおける強力なDNS問い合わせツールであり、DNSドメイン名サーバーを問い合わせるために使用されます。従来のnslookupと比較して、digはより詳細な問い合わせ結果とより柔軟な問い合わせオプションを提供します。

dig コマンドの主な特徴:

  • 完全なDNS問い合わせプロセスを表示
  • すべてのDNSレコードタイプの問い合わせをサポート
  • 特定のDNSサーバーを指定して問い合わせることが可能
  • 出力形式が明確で読みやすい

dig コマンド基本構文

dig [@server] [domain] [query-type] [query-class] [query-options]

パラメータ説明

パラメータ 説明
@server 問い合わせるDNSサーバーを指定(例:@8.8.8.8)
domain 問い合わせるドメイン名(例:example.com)
query-type 問い合わせるレコードタイプ(例:A, MX, NSなど)
query-class 問い合わせのクラス(通常はINInternetを表す)
query-options 追加の問い合わせオプション

一般的な問い合わせタイプ

digは複数のDNSレコードタイプの問い合わせをサポートしています。以下は一般的なレコードタイプです:

レコードタイプ 説明 例
A IPv4アドレスレコード dig example.com A
AAAA IPv6アドレスレコード dig example.com AAAA
MX メール交換レコード dig example.com MX
NS ネームサーバーレコード dig example.com NS
CNAME 正規名レコード dig www.example.com CNAME
TXT テキストレコード dig example.com TXT
SOA SOAレコード dig example.com SOA
ANY すべてのレコード dig example.com ANY

dig コマンド出力の解析

簡単なdig問い合わせを実行します:

dig example.com

一般的な出力には以下の部分が含まれます:

  1. HEADERセクション:問い合わせの基本情報を表示:オペコード

    • opcode:応答ステータス
    • status:問い合わせID
    • id:フラグ(qr、rd、raなど)
    • flagsQUESTIONセクション:問い合わせの質問を表示
  2. 問い合わせたドメイン名とレコードタイプを含むANSWERセクション:問い合わせ結果

    • 実際のDNSレコード情報を含む
  3. AUTHORITYセクション:権威ネームサーバー情報そのドメインを管理する権威DNSサーバーを表示

    • ADDITIONALセクション:追加情報
  4. 追加の有用な情報を含む場合があるSTATISTICSセクション:問い合わせ統計

    • 問い合わせにかかった時間、サーバーなどの情報を表示
  5. 実用的な問い合わせ例1. 特定のDNSサーバーを問い合わせる

    • このコマンドは、GoogleのパブリックDNSサーバー(8.8.8.8)にexample.comのAレコードを問い合わせます。
  6. 2. MXレコードを問い合わせるドメインのメールサーバー情報を問い合わせます。

    • 3. ドメイン名解決の完全なプロセスを問い合わせる

実用的な問い合わせ例

1. 特定のDNSサーバーを問い合わせる

dig @8.8.8.8 example.com

問い合わせ結果のみを表示し、その他の詳細情報は表示しません。

2. MXレコードを問い合わせる

dig example.com MX

IPアドレスから対応するドメイン名を問い合わせます。

3. ドメイン名解決の完全なプロセスを問い合わせる

dig +trace example.com

+traceここで、domains.txtには問い合わせるドメイン名のリストが1行に1つずつ含まれます。

4. 簡潔な出力モード

dig +short example.com

1. 出力形式の制御

5. 逆DNS問い合わせ

dig -x 8.8.8.8

ANSWERセクションのみを表示します。

6. 複数のドメインを一括問い合わせ

dig -f domains.txt +short

問い合わせタイムアウトを5秒に設定します。


詳細オプション

1. 出力形式の制御

dig +noall +answer example.com

+noall4. TTL情報の表示+answerレコードのTTL(Time To Live)値を表示します。

2. 問い合わせタイムアウトの設定

dig +time=5 example.com

詳細な問い合わせ統計情報を表示します。

3. 問い合わせポートの指定

dig @dns.server.example.com -p 5353 example.com

1. digとnslookupの違いは何ですか?

4. TTL情報の表示

dig +ttlid example.com

2. digコマンドをインストールするには?

5. 問い合わせ統計の表示

dig +stats example.com

3. digの問い合わせでANSWERセクションが返らないのはなぜですか?


よくある質問と回答

1. digとnslookupの違いは何ですか?

ドメイン名が存在しない

2. digコマンドをインストールするには?

ネットワーク接続の問題

  • Debian/Ubuntu:

    sudo apt install dnsutils
  • CentOS/RHEL:

    sudo yum install bind-utils

3. digの問い合わせでANSWERセクションが返らないのはなぜですか?

オプションで完全な解決プロセスを確認します。

  • 実際の応用シーン
  • 1. DNS解決の問題を調査する
  • Webサイトにアクセスできない場合、digを使用してDNS解決が正常かどうかを確認できます:
  • 2. メールサーバーの設定を確認する

ドメインのメールサーバー設定が正しいかどうかを検証します:+trace3. DNSレコードの変更を監視する


実際の応用シーン

1. DNS解決の問題を調査する

4. DNSサーバーの応答時間をテストする

dig +trace example.com

2. メールサーバーの設定を確認する

例

dig example.com MX

3. DNSレコードの変更を監視する

digコマンドは、Linuxシステム管理者やネットワークエンジニアに必須のDNS診断ツールです。この記事の学習を通じて、以下のことができるようになるはずです:

例

dig example.com A | grep -v ";" > current.txt
diff current.txt previous.txt

4. DNSサーバーの応答時間をテストする

digコマンドの出力結果を解析する

例

time dig @8.8.8.8 example.com
time dig @1.1.1.1 example.com

まとめ

digコマンドをさらに詳しく知るには、マニュアルページを確認してください:

  1. またはヘルプオプションを使用します:
  2. Linux コマンド大全
  3. その他の拡張
  4. AI思考中...
  5. Linux nethogs コマンド

Linux nmap コマンド

man dig

ノートリスト

dig -h

クリックしてノートを共有

其他扩展