EatSmartシステム部ブログ

ウェブサイトの開発や運営に関する情報です。

DNSサーバーの移転ついて

今回は、現状運用してるDNSサーバーを別のサーバーに移転することになり、そのノウハウを記事にしてみました。

DNSサーバーの仕組み

DNSサーバーを移転するに辺り、DNSサーバーの仕組みについて簡単に触れておきたいとおもいます。
DNSサーバーには2つの種類が存在します。

権威DNSサーバー

権威DNSサーバーとは、自身が管理するゾーン情報(ドメイン名とIPアドレスの紐づけ等)を保持し、問い合わせに対して自身が管理している情報のみを答えます。

ゾーン情報

test.co.jp   A   111.22.332.44 //test.co.jpのIPアドレスは「111.22.332.44」
test.co.jp  MX  mail.test.com //test.co.jpのメールサーバーは「mail.test.com」
test.co.jp  NS  old_ns1.test.com //test.co.jpのプライマリDNSサーバーは「old_ns1.test.com」
test.co.jp  NS  old_ns2.test.com //test.co.jpのセカンダリDNSサーバーは「old_ns2.test.com」
    ・
    ・
    ・

DNSキャッシュサーバー

クライアントからあるドメイン名の名前解決のリクエストを受け、該当ドメイン名を管理する権威DNSサーバへの問い合わせを行い結果を返却する。
また、問い合わせ結果は一定期間(TTL値で)保存され、期間内に同じ問い合わせが来た時には保存した内容を返却する。
一定期間が経過すると新に権威DNSサーバへの問い合わせを行う。

TTL

TTL(Time To Live)とは、一旦DNS経由でドメイン名の名前を解決(ドメイン名とIPアドレスの紐づけ)した場合、その情報をキャッシュしておく時間(数値は秒)である。

DNSサーバーの移転で注意すべき点

移転の際に注意すべき事項として下記2点があります。

  1. DNSキャッシュサーバー群からの名前解決要求を、いかにして移転先の権威DNSサーバーに向けさせるか
  2. DNSキャッシュサーバー群に、いかにして新しいDNSデータ(ゾーン情報)を提供するか

DNSサーバーの移転方法について

上記注意すべき点を考慮したDNSサーバーの移転方法は下記のようになります。

1. 移転先の権威DNSサーバーの構築

移転先の権威DNSサーバーに新しいゾーン情報及び新しいNSレコードを設定する。 その他変更が無いゾーン情報はそのまま設定する

2. 移転元ゾーン情報の切り替え

移転元の権威DNSサーバーのゾーン情報を、新しいゾーン情報(移転先データ)に切り替える
※移転元のTTLが、短時間で切り替わる様に短くしておく
※NSレコードは移転先の情報を設定する

3. 親(レジストラ)に登録した委任情報の切り替え

親に登録している委任情報(NSレコード情報等)の変更を申請し、移転先の権威DNSサーバーに切り替える

4. TTLが切れるまで移転元と移転先の権威DNSサーバーを並行運用する

すべてのDNSキャッシュサーバー群が移転先の権威DNSサーバーのみを参照するようになるまで、DNSサーバーを並行運用します。

5.動作確認

TTLが切れたら、DNSサーバーが切り替わった事を確認する方法を記載します
Linux環境
dig NS ドメイン

[test@ ~]# dig ns test.co.jp

;; QUESTION SECTION:
;test.co.jp.                        IN      NS

;; ANSWER SECTION:
test.co.jp.         300     IN      NS      new_ns1.test.com. //NSレコードが移転先に切り替わった事を確認
test.co.jp.         300     IN      NS      new_ns2.test.com. //NSレコードが移転先に切り替わった事を確認

Windows環境
nslookup
set type=ns
ドメイン
コマンドプロンプトから確認

C:\nslookup
> set type=ns
> test.co.jp
サーバー:  xxxx.xxx.xx
Address:  111.22.33.444

権限のない回答:
test.co.jp  nameserver = new_ns1.test.com
test.co.jp  nameserver = new_ns2.test.com
※「権限のない回答とは」DNSキャッシュを使って回答している事を示している
6. 移転元の権威DNSサーバーの停止

DNSサーバーが切り替わった事を確認できたら移転元権威DNSサーバーを停止する

まとめ

DNSサーバーは普段はあまり接する機会が無いので、忘れてしまっている部分がありましたが、今回の移転で振り返る事が出来て良い機会になりました。
DNSサーバーの基本的な仕組みは是非押さえておくと良いと思います。