目次
nslookupとdigの違いのまとめ
用途 | 歴史 | 対話モード | |
---|---|---|---|
nslookup | 簡単な名前解決の確認 | 古くから存在 現在は非推奨 |
あり |
dig | 詳細なDNS調査・トラブルシューティング向け | BIND付属ツール 推奨コマンド |
なし |
どちらもDNSの問い合わせに使うコマンドです。
nslookupとは
- 古くから使われているDNS調査コマンドです。
- 1990年代〜2000年代に広く使われていました。
- 詳細な調査には向いていません。
- BIND9 以降は、非推奨 (deprecated)とされており、将来的な利用は推奨されていません。
- Windowsでは「Resolve-DnsName」への移行が推奨されます。
コマンド実行例
$ nslookup www.example.com
Server: 8.8.8.8
Address: 8.8.8.8#53
Non-authoritative answer:
Name: www.example.com
Address: 93.184.216.34
2行目は、問い合わせに使ったDNSサーバのホスト名(またはIP) を表示します。
3行目は、実際に問い合わせたDNSサーバのIPアドレスとポート番号を表示します。
#53はDNSの標準ポート番号53です。
5行目は、権威サーバではないDNSサーバ からの応答であることを示します。
キャッシュされた情報を返している場合です。
6行目は、問い合わせた名前(ホスト名/ドメイン名)を表示します。
7行目は、解決されたIPアドレス(Aレコードの値)を表示します。
複数のIPがある場合は複数行出ます。
digとは
- BINDパッケージに含まれるコマンドで、現在はDNS問い合わせの標準ツールとして推奨されています。
- レコードタイプ指定(A, MX, TXT, NSなど)、DNSSEC情報、再帰有無の確認、問い合わせ先サーバ指定など柔軟です。
- Linux/Unix系で標準的に利用され、詳細な結果を返します。
コマンド実行例
$ dig www.example.com
; <<>> DiG 9.18.12 <<>> www.example.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 12345
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1
;; QUESTION SECTION:
;www.example.com. IN A
;; ANSWER SECTION:
www.example.com. 2605 IN A 93.184.216.34
;; Query time: 25 msec
;; SERVER: 8.8.8.8#53(8.8.8.8)
;; WHEN: Sat Sep 13 01:20:00 JST 2025
;; MSG SIZE rcvd: 65
2行目は、使用しているdigのバージョンと、問い合わせたドメインを表示。
5行目は、以下です
opcode:実行した操作の種類(QUERY=通常の問い合わせ)
status:応答の状態
・NOERROR=正常
・NXDOMAIN=ドメインが存在しない
・SERVFAIL=サーバ内部エラー
id:DNSメッセージの識別子
6行目は、以下です
flags:応答の属性
・qr:応答(Reply)であること
・rd:再帰問い合わせを要求した
・ra:再帰問い合わせが利用可能
QUERY/ANSWER/AUTHORITY/ADDITIONAL:各セクションのレコード数
9行目は、何を問い合わせたかを表示しています。
ここでは「www.example.comのAレコード(IPv4アドレス)」です。
12行目は、DNSサーバの応答内容です。
順に、ドメイン名 (www.example.com.)、
TTL(キャッシュ可能秒数、ここでは2605秒)、
クラス (IN = Internet)、
レコードタイプ (A = IPv4)、
値(93.184.216.34)
15行目は、応答を返したDNSサーバのアドレスとポート番号です。
関連の記事