Linux dig コマンド
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
一般的な出力には以下の部分が含まれます:
-
HEADERセクション:問い合わせの基本情報を表示:オペコード
opcode:応答ステータスstatus:問い合わせIDid:フラグ(qr、rd、raなど)flagsQUESTIONセクション:問い合わせの質問を表示
-
問い合わせたドメイン名とレコードタイプを含むANSWERセクション:問い合わせ結果
- 実際のDNSレコード情報を含む
-
AUTHORITYセクション:権威ネームサーバー情報そのドメインを管理する権威DNSサーバーを表示
- ADDITIONALセクション:追加情報
-
追加の有用な情報を含む場合があるSTATISTICSセクション:問い合わせ統計
- 問い合わせにかかった時間、サーバーなどの情報を表示
-
実用的な問い合わせ例1. 特定のDNSサーバーを問い合わせる
- このコマンドは、GoogleのパブリックDNSサーバー(8.8.8.8)にexample.comのAレコードを問い合わせます。
-
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診断ツールです。この記事の学習を通じて、以下のことができるようになるはずです:
例
diff current.txt previous.txt
4. DNSサーバーの応答時間をテストする
digコマンドの出力結果を解析する
例
time dig @1.1.1.1 example.com
まとめ
digコマンドをさらに詳しく知るには、マニュアルページを確認してください:
- またはヘルプオプションを使用します:
- Linux コマンド大全
- その他の拡張
- AI思考中...
- Linux nethogs コマンド
Linux nmap コマンド
man dig
ノートリスト
dig -h
其他扩展