JPドメイン名のサービス案内、ドメイン名・DNSに関連する情報提供サイト


JPRS トピックス&コラム No.019


DNSサーバーの引っ越し~トラブル発生を未然に防ぐ手順とポイント~


サービスプロバイダーの変更などの際に必要となる、いわゆる「DNSサーバーの引っ越し」について、作業時のトラブル発生を未然に防ぐ、本来あるべき手順とポイントを解説します。

「DNSサーバーの引っ越し」とは

 サービスプロバイダーやレジストラ(JPドメイン名では指定事業者)の変更に伴い、その対象となるドメイン名の権威DNSサーバーが変更されることを、「DNSサーバーの引っ越し(以下、引っ越し)」と呼ぶことがあります。今回は引っ越しの中でも特に、

  • すべての権威DNS サーバーのホスト名とIPアドレスが変更される
  • Web サーバーやメールサーバーなど、権威DNSサーバー以外のサーバーのホスト名は変更されず、IP アドレスのみが変更される

場合について、作業時のトラブル発生を未然に防ぐ、本来あるべき手順について解説します。
 なお、以降では「引っ越し」を、上記(A)及び(B)の二つの条件をともに満たす場合に限定して使うものとし、今回の解説ではDNSSEC の運用については考慮しないものとします。

引っ越しの際に考慮すべき二つの事項

 引っ越しの際に考慮すべき重要な事項として、

  • インターネット上のキャッシュDNS サーバー群からの名前解決要求を、いかにして引っ越し先の権威DNSサーバーに向けさせるか
  • インターネット上のキャッシュDNS サーバー群に、いかにして新しいDNS データ(ゾーンデータ)を提供するか

の二点が挙げられます。そして、これらはそれぞれ、前述の(A)と(B)に対応しています。

▼重要なのは手段ではなく本来の目的の達成

 引っ越しの担当者は(1)と(2)のうち、権威DNSサーバーの変更の反映、つまり(1)に大きな関心を寄せているようです。そして、引っ越しに当たり、いわゆる「DNSの浸透」や「DNS の伝搬」がうまくいかないという、(2)に起因するトラブル事例が数多く報告されています。
 (1)は、引っ越しに際し必ず考慮すべき重要な事項です。しかし多くの場合、サービスプロバイダーやレジストラの変更における本来の目的は(2)(各種サービスを提供するサーバーの移行)であり、(1)は(2)を実現するための手段の一つに過ぎません。そして、この本来の目的を円滑に達成することが、引っ越しの際に考慮すべき、最重要事項となります。

引っ越しにおける具体的な作業手順

 以上を踏まえた、作業時のトラブル発生を未然に防ぐための、具体的な作業手順について解説します。
 図1の引っ越し前の状態では、権威DNSサーバーが保持するNSレコードが、自身が権威DNSサーバーであることを示し、親が保持するNSレコードが、対象となるドメイン名の管理の委任先を示しています。

図1引っ越し前の状態"
図 1 引っ越し前の状態

前準備:権威DNSサーバー以外のサーバーの構築

 作業を始める前に、引っ越し先のWebサーバーやメールサーバーなどをあらかじめ構築しておきます。

手順1:引っ越し先の権威DNSサーバーの構築

 新しいゾーンデータ(引っ越し先のWebサーバーやメールサーバーなどの情報)を管理する、引っ越し先の権威DNSサーバーを構築します(図2)。

図2引っ越し先の権威DNS
図 2 引っ越し先の権威DNS サーバーの構築

手順2:引っ越し元の権威DNSサーバーのゾーンデータの切り替え

 引っ越し元の権威DNS サーバーのゾーンデータを、NS の指定やグルーレコードの指定なども含め、まるごと新しいゾーンデータに切り替えます(図3)。

図3ゾーンデータの切り替え"
図 3 ゾーンデータの切り替え

手順3:親に登録した委任情報の切り替え

 親に登録している委任情報(NS、必要に応じてグルー)の変更を申請し、引っ越し先の権威DNS サーバーを示すものに切り替えます(図4)。

図4委任情報の切り替え"
図 4 委任情報の切り替え

手順4:双方の権威DNSサーバーを並行運用

 すべてのキャッシュDNSサーバー群が引っ越し先の権威DNSサーバーのみを参照するようになるまで、具体的には以下の時間が経過するまで、双方の権威DNSサーバーをこの状態で並行運用します(表1)。

表1必要となる並行運用期間"
表 1 必要となる並行運用期間

手順5:引っ越し元の権威DNS サーバーの停止

 引っ越し元の権威DNS サーバーを停止し、並行運用を終了します(図5)。

図5引っ越し元の権威DNSサーバーの停止"
図 5 引っ越し元の権威DNSサーバーの停止

ポイントは「新しいデータによる並行運用」

 この方法のポイントは、引っ越し先の権威DNSサーバーの構築後(手順1)、親に登録した委任情報の切り替え(手順3)の前に引っ越し元の権威DNSサーバーのゾーンデータを新しいものに切り替え(手順2)、同じゾーンデータをもつ双方の権威DNSサーバーを所定のTTL値で定められた一定期間並行運用する(手順4)ことにあります。
 この方法では手順2の完了後、インターネット上のキャッシュDNSサーバー群に新しいゾーンデータのみが提供されるようになるため、古いゾーンデータはそれぞれのTTL値((*1)で指定されていた時間の経過後、確実に消滅します。つまり、この方法ではいわゆる「DNSが浸透しない」や「DNSが伝搬しない」と呼ばれるトラブルの発生を、未然に防ぐことができます(*2)

▼正しい委任成立のための三つの条件

 DNSの仕様では正しい委任を成立させるために、

  • 親がNSで示したすべての権威DNSサーバーが、権威を持つ応答を返す
  • 子がNSで示したすべての権威DNSサーバーが、権威を持つ応答を返す
  • ⅰとⅱの権威DNSサーバーが同じ応答を返す

の三つの条件をすべて満たしている必要があります。作業時のトラブル発生を未然に防ぐためには、これらの条件を満たす形で引っ越しを進めることが重要です。



作業開始前に該当するTTL 値の短縮が可能な場合、サーバーの切り替えに要する時間を短縮できます。

トラブルが発生した場合、その原因を当該キャッシュDNS サーバーの動作不良であると確定できます。


掲載内容は2011年6月のものです。