#はじめに
digコマンドを使ってDNSサーバへ問い合わせた際のメッセージ内容やコマンドの使い方をまとめます。OSはCentos7です。
#digのインストール
# yum install bind-utils
#フルリゾルバーへのDNS問い合わせ
# dig www.google.com IN A
; <<>> DiG 9.11.4-P2-RedHat-9.11.4-9.P2.el7 <<>> www.google.com IN A
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 10632
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 512
;; QUESTION SECTION:
;www.google.com. IN A
;; ANSWER SECTION:
www.google.com. 150 IN A 216.58.197.228
;; Query time: 31 msec
;; SERVER: 8.8.8.8#53(8.8.8.8)
;; WHEN: Fri Oct 04 19:16:47 UTC 2019
;; MSG SIZE rcvd: 59
####HEADER
status | 意味 |
---|---|
NOERROR | 正常応答 |
SERVFAIL | サーバ側での異常による名前解決失敗 |
NXDOMAIN | リソースレコードが存在しない |
REFUSED | リクエストが拒否された |
id
:DNSのトランザクションID。問い合わせ時にランダムに生成される
flags | 意味 |
---|---|
qr | 問い合わせが0, 応答が1。上記例では応答なので flags: qr となっている |
rd | 権威サーバへの問い合わせ(非再帰的問い合わせ)は0, フルリゾルバーへの問い合わせ(再帰的問い合わせ)は1 |
ra | 応答した相手が名前解決処理できる(フルリゾルバーである)場合は1 |
####セクション
セクション | 意味(各セクションの有無が0,1で表される) |
---|---|
QUERY | 問い合わせ内容(ドメイン、タイプ)のセクション |
ANSWER | 問い合わせ内容に対するリソースレコードのセクション |
AUTHORITY | 権威を持っているDNSサーバー情報のセクション |
ADDITIONAL |
##権威サーバへのDNS問い合わせ
#####yahoo.co.jp
を委任されているサーバ(権威サーバ)の確認
# dig yahoo.co.jp NS
; <<>> DiG 9.11.4-P2-RedHat-9.11.4-9.P2.el7 <<>> yahoo.co.jp NS
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 56429
;; flags: qr rd ra; QUERY: 1, ANSWER: 4, AUTHORITY: 0, ADDITIONAL: 1
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 512
;; QUESTION SECTION:
;yahoo.co.jp. IN NS
;; ANSWER SECTION:
yahoo.co.jp. 899 IN NS ns02.yahoo.co.jp.
yahoo.co.jp. 899 IN NS ns01.yahoo.co.jp.
yahoo.co.jp. 899 IN NS ns12.yahoo.co.jp.
yahoo.co.jp. 899 IN NS ns11.yahoo.co.jp.
;; Query time: 20 msec
;; SERVER: 8.8.8.8#53(8.8.8.8)
;; WHEN: Sat Oct 05 01:31:27 UTC 2019
;; MSG SIZE rcvd: 116
# dig ns01.yahoo.co.jp A
; <<>> DiG 9.11.4-P2-RedHat-9.11.4-9.P2.el7 <<>> ns01.yahoo.co.jp A
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 43327
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 512
;; QUESTION SECTION:
;ns01.yahoo.co.jp. IN A
;; ANSWER SECTION:
ns01.yahoo.co.jp. 838 IN A 118.151.254.133
;; Query time: 170 msec
;; SERVER: 8.8.8.8#53(8.8.8.8)
;; WHEN: Sat Oct 05 01:31:45 UTC 2019
;; MSG SIZE rcvd: 61
#####yahoo.co.jp
の権威サーバの一つ118.151.254.133
に対して直接、非再帰的な問い合わせ(+norec
)を行う
;; flags: qr aa
のようにAA(Authoritative Answer)ビットがセットされており、応答したサーバ118.151.254.133
が問い合わせたドメインの管理権限を持つことがわかる。
また、yahoo.co.jp
の権威サーバのNSリソースレコードとAリソースレコードが4つずつセットされている。
# dig +norec @118.151.254.133 yahoo.co.jp
; <<>> DiG 9.11.4-P2-RedHat-9.11.4-9.P2.el7 <<>> +norec @118.151.254.133 yahoo.co.jp
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 12964
;; flags: qr aa; QUERY: 1, ANSWER: 2, AUTHORITY: 4, ADDITIONAL: 5
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;yahoo.co.jp. IN A
;; ANSWER SECTION:
yahoo.co.jp. 300 IN A 182.22.59.229
yahoo.co.jp. 300 IN A 183.79.135.206
;; AUTHORITY SECTION:
yahoo.co.jp. 900 IN NS ns01.yahoo.co.jp.
yahoo.co.jp. 900 IN NS ns11.yahoo.co.jp.
yahoo.co.jp. 900 IN NS ns12.yahoo.co.jp.
yahoo.co.jp. 900 IN NS ns02.yahoo.co.jp.
;; ADDITIONAL SECTION:
ns01.yahoo.co.jp. 900 IN A 118.151.254.133
ns02.yahoo.co.jp. 900 IN A 118.151.254.149
ns11.yahoo.co.jp. 900 IN A 124.83.255.37
ns12.yahoo.co.jp. 900 IN A 124.83.255.101
;; Query time: 17 msec
;; SERVER: 118.151.254.133#53(118.151.254.133)
;; WHEN: Sat Oct 05 01:33:53 UTC 2019
;; MSG SIZE rcvd: 212
####権威サーバへ再帰的問い合わせをしてみる
yahoo.co.jp
ドメインの権威サーバ118.151.254.133
に対して、管理外のwww.google.com
を再帰的(+norec
を付けずに)問い合わせてみる。
以下の通り、status: REFUSED
とリクエストが拒否されて、
flags: qr rd
にもra
が含まれていないため、応答した相手が名前解決ができないことがわかる。
# dig @118.151.254.133 www.google.com
; <<>> DiG 9.11.4-P2-RedHat-9.11.4-9.P2.el7 <<>> @118.151.254.133 www.google.com
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: REFUSED, id: 51205
;; flags: qr rd; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 1
;; WARNING: recursion requested but not available
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;www.google.com. IN A
;; Query time: 19 msec
;; SERVER: 118.151.254.133#53(118.151.254.133)
;; WHEN: Sat Oct 05 01:41:48 UTC 2019
;; MSG SIZE rcvd: 43