dig コマンドはデフォルトだと A レコードしか見ない
メールサーバの問題を調べる時に dig
コマンドを使ったのだが、MX レコードが確認できなかった。
# 例として Yahoo を使用
$ dig yahoo.co.jp
; <<>> DiG 9.10.6 <<>> yahoo.co.jp
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 5152
;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 1
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 512
;; QUESTION SECTION:
;yahoo.co.jp. IN A
;; ANSWER SECTION:
yahoo.co.jp. 279 IN A 182.22.59.229
yahoo.co.jp. 279 IN A 183.79.135.206
;; Query time: 17 msec
;; SERVER: 2404:1a8:7f01:b::3#53(2404:1a8:7f01:b::3)
;; WHEN: Mon Jan 18 09:49:51 JST 2021
;; MSG SIZE rcvd: 72
dig
コマンドでどのような DNS 設定がされているかは、ANSWER SECTION
という出力部分を見れば分かるのだが、ココに A レコードしか並んでおらず、MX レコードが確認できなかったのだ。
なんでだー?設定してなかったっけー?と思ってよくよく調べてみると、dig
コマンドはオプション引数を一切指定しないと A レコードしか表示しないようだ。
# つまり以下と同義
$ dig yahoo.co.jp a
MX レコードを見たい場合は、ドメイン名の後ろに mx
とオプションを付けるか、全部の情報を表示する any
を指定すれば良い。
# MX レコードのみ表示
$ dig yahoo.co.jp mx
; <<>> DiG 9.10.6 <<>> yahoo.co.jp mx
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 36999
;; 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 MX
;; ANSWER SECTION:
yahoo.co.jp. 788 IN MX 10 mx3.mail.yahoo.co.jp.
yahoo.co.jp. 788 IN MX 10 mx2.mail.yahoo.co.jp.
yahoo.co.jp. 788 IN MX 10 mx1.mail.yahoo.co.jp.
yahoo.co.jp. 788 IN MX 10 mx5.mail.yahoo.co.jp.
;; Query time: 15 msec
;; SERVER: 2404:1a8:7f01:b::3#53(2404:1a8:7f01:b::3)
;; WHEN: Mon Jan 18 09:51:37 JST 2021
;; MSG SIZE rcvd: 125
# 全部表示
$ dig yahoo.co.jp any
; <<>> DiG 9.10.6 <<>> yahoo.co.jp any
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 16428
;; flags: qr rd ra; QUERY: 1, ANSWER: 6, AUTHORITY: 0, ADDITIONAL: 1
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 512
;; QUESTION SECTION:
;yahoo.co.jp. IN ANY
;; ANSWER SECTION:
yahoo.co.jp. 250 IN A 183.79.135.206
yahoo.co.jp. 250 IN A 182.22.59.229
yahoo.co.jp. 5 IN MX 10 mx2.mail.yahoo.co.jp.
yahoo.co.jp. 5 IN MX 10 mx5.mail.yahoo.co.jp.
yahoo.co.jp. 5 IN MX 10 mx1.mail.yahoo.co.jp.
yahoo.co.jp. 5 IN MX 10 mx3.mail.yahoo.co.jp.
;; Query time: 20 msec
;; SERVER: 2404:1a8:7f01:b::3#53(2404:1a8:7f01:b::3)
;; WHEN: Mon Jan 18 09:51:55 JST 2021
;; MSG SIZE rcvd: 157
調べていたらついでに、IP アドレスからドメイン名を逆引きする -x
オプションも見つけた。
$ dig -x 【IP アドレス】
まだまだ知らないこと多かった…。