Linux では、ネットワーク診断のためにいくつかのコマンドラインユーティリティが利用可能です。ドメインネームシステム(DNS)の問題に関しては、nslookupとdigという 2 つの主要なDNS ツールが際立っています。これらをどのように使用するかを理解することは、Linux DNSサーバーまたはクライアントでのあらゆるDNS トラブルシューティングにとって極めて重要です。
基本的な DNS クエリのための nslookup の使用
nslookup(ネームサーバー検索)ツールは、DNS サーバーにクエリを実行してドメイン名または IP アドレスのマッピング情報を取得するための古典的なユーティリティです。単純なルックアップには素早く簡単なツールですが、digに取って代わられることもあります。
www.google.comのようなドメインの IP アドレスを見つけるには、以下を実行できます。
pete@icebox:~$ nslookup www.google.com
Server: 127.0.1.1
Address: 127.0.1.1#53
Non-authoritative answer:
Name: www.google.com
Address: 216.58.192.4
この出力では、ServerとAddressがクエリに応答した DNS サーバーを示しています。Non-authoritative answerは、サーバーが権威ソースに直接問い合わせるのではなく、キャッシュされた結果を提供したことを意味します。NameとAddressは、ドメインに対して解決された IP アドレスを示します。
dig による高度な DNS トラブルシューティング
dig(ドメイン情報検索)コマンドは、DNS ネームサーバーを調査するための強力で柔軟なツールです。これはnslookupよりも詳細な情報を提供するため、本格的なDNS トラブルシューティングで好まれる選択肢です。
dig コマンドを使用した例を次に示します。
pete@icebox:~$ dig www.google.com
; <<>> DiG 9.9.5-3-Ubuntu <<>> www.google.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 42376
;; flags: qr rd ra; QUERY: 1, ANSWER: 5, AUTHORITY: 0, ADDITIONAL: 1
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; MBZ: 0005 , udp: 512
;; QUESTION SECTION:
;www.google.com. IN A
;; ANSWER SECTION:
www.google.com. 5 IN A 74.125.239.147
www.google.com. 5 IN A 74.125.239.144
www.google.com. 5 IN A 74.125.239.146
www.google.com. 5 IN A 74.125.239.145
www.google.com. 5 IN A 74.125.239.148
;; Query time: 27 msec
;; SERVER: 127.0.1.1#53(127.0.1.1)
;; WHEN: Sun Feb 07 10:14:00 PST 2016
;; MSG SIZE rcvd: 123
digの出力はセクションに整理されています。
- QUESTION SECTION: 送信されたクエリを示します。ここでは、
www.google.comのA(アドレス)レコードを要求しました。 - ANSWER SECTION: DNS サーバーから受信した回答を表示します。この場合、Google にはドメインに関連付けられた複数の IP アドレスがあります。
- Statistics: 最後のセクションでは、クエリ時間や応答したサーバーなど、クエリに関するメタデータを提供します。
その詳細な出力と柔軟性から、digは Linux でネットワークサービスを管理またはトラブルシューティングする人にとって不可欠なユーティリティです。