[DNS] digコマンドでドメインからネームサーバを確認する

ドメインやサーバの引越しなどで、DNSレコードの保持先とネームサーバを切り替える際、伝搬のタイミングが読みにくいので、変更後の設定があっているのか、やきもきすることがあります。

ネームサーバが切り替わった状態で、ドメインが正しく名前解決できていることを確認できればよいので、「今どっちのネームサーバを見ているか」が把握できればよさそうです。

 

そんなときに使えるのが「dig」コマンドです。

 

「hogehoge.com」というドメインを切り替える想定で、整理してみます。

切り替え前

切り替え前は「before1.dns.com」「before2.dns.com」というネームサーバを利用していました。
このときコマンドを叩くと、「AUTHORITY SECTION」のところで現在のネームサーバの向き先が確認できます。

$ dig hogehoge.com

; < <>> DiG 9.3.6-P1-RedHat-9.3.6-16.P1.el5 < <>> hogehoge.com
;; global options: printcmd
;; Got answer:
;; ->>HEADER< <- opcode: QUERY, status: NOERROR, id: 64469
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 2, ADDITIONAL: 0

;; QUESTION SECTION:
;hogehoge.com. IN A

;; ANSWER SECTION:
hogehoge.com. 5 IN A XXX.XXX.XXX.XXX

;; AUTHORITY SECTION:
hogehoge.com. 5 IN NS before1.dns.com.
hogehoge.com. 5 IN NS before2.dns.com.

;; ADDITIONAL SECTION:
before1.dns.com.          5       IN      A       XXX.XXX.XXX.XXX
before2.dns.com.          5       IN      A       XXX.XXX.XXX.XXX

;; Query time: 9 msec
;; SERVER: XXX.XXX.XXX.XXX#53(XXX.XXX.XXX.XXX)
;; WHEN: Wed Apr 18 12:11:04 2012
;; MSG SIZE rcvd: 88

切り替え実施

ここで、DNSレコードとネームサーバの向き先を変更します。
バリュードメインやムームードメインなど、基本的にはウェブ画面上で設定変更ができると思います。

切り替え後

切り替え後は「after1.dns.com」「after2.dns.com」というネームサーバを利用することになります。
一定時間(経験則で数時間以内)経ってから、コマンドを叩くと、切り替え前と同じく「AUTHORITY SECTION」のところでネームサーバの向き先が変わっていることが確認できると思います。

$ dig hogehoge.com

; < <>> DiG 9.3.6-P1-RedHat-9.3.6-16.P1.el5 < <>> hogehoge.com
;; global options: printcmd
;; Got answer:
;; ->>HEADER< <- opcode: QUERY, status: NOERROR, id: 64469
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 2, ADDITIONAL: 0

;; QUESTION SECTION:
;hogehoge.com. IN A

;; ANSWER SECTION:
hogehoge.com. 5 IN A XXX.XXX.XXX.XXX

;; AUTHORITY SECTION:
hogehoge.com. 5 IN NS after1.dns.com.
hogehoge.com. 5 IN NS after2.dns.com.

;; ADDITIONAL SECTION:
after1.dns.com.          5       IN      A       XXX.XXX.XXX.XXX
after2.dns.com.          5       IN      A       XXX.XXX.XXX.XXX

;; Query time: 9 msec
;; SERVER: XXX.XXX.XXX.XXX#53(XXX.XXX.XXX.XXX)
;; WHEN: Wed Apr 18 14:11:01 2012
;; MSG SIZE rcvd: 88

 

この状態で、「nslookup」コマンドなどを利用して、変更前と同じように名前解決ができていれば、切り替えはめでたく完了ということになるかと思います。

知ってる方にとっては、「当たり前!」とも言われそうですが、以前に大きなDNS切り替えをおこなったときにやきもきしたので、確認手順を整理してみました。

 

2012/04/25追記
こちら

dig hogehoge.com

では、name server情報が拾えない場合もあるようです。

dig hogehoge.com ns

として、明示的にname server情報を見るのが一般的なやり方のようでした。
もし上記の手順でうまくいかなかった場合は、「ns」をつけて試してみてください。