クラウド移行

DNS切り替え でぃーえぬえすきりかえ

DNSドメイン名TTL名前解決クラウド移行ゾーン移行
DNS切り替えについて教えて

簡単に言うとこんな感じ!

インターネット上の「住所録」を書き換えて、アクセス先のサーバーを古いものから新しいものに変える作業だよ。引越しで「転送届」を出すイメージ!タイミングを間違えるとサービスが止まるから要注意なんだ。


DNS切り替えとは

DNS(Domain Name System) とは、「www.example.com」のようなドメイン名をサーバーのIPアドレスに変換する仕組みで、インターネット上の「電話帳」に例えられます。DNS切り替えとは、この電話帳の登録内容を変更し、ユーザーのアクセスを旧サーバーから新サーバーへ誘導する作業のことです。

クラウド移行やサーバー引越し、CDN(コンテンツ配信ネットワーク)の導入など、インフラを変更する場面では必ずといっていいほどDNS切り替えが発生します。サービスを止めずに切り替える(ゼロダウンタイム移行)ためには、切り替えのタイミングや手順の設計が非常に重要です。

DNS切り替えの難しさは、変更が世界中に伝播するまでに時間がかかる点にあります。この伝播時間を TTL(Time To Live:生存時間) が左右するため、事前にTTLを短縮しておく準備が欠かせません。


DNS切り替えの全体像と仕組み

DNS切り替えの主要な登録情報(レコード)

レコード種別役割切り替え例
Aレコードドメイン → IPv4アドレス旧サーバーIP → 新サーバーIP
CNAMEレコードドメイン → 別のドメイン名CDN・クラウドサービスへの転送
MXレコードメール受信サーバーの指定メールサーバー移行時に変更
NSレコードDNSサーバー自体の変更DNS権威サーバーを丸ごと移行
TXTレコードドメイン所有確認・SPF設定移行後の認証情報更新

切り替えの流れ(標準的な手順)

【事前準備】
  ① 現在のTTLを確認(例: 3600秒 = 1時間)
  ② TTLを短縮(例: 300秒 = 5分)に変更
  ③ TTLの旧値が全世界に浸透するまで待つ(最低1時間)

【切り替え当日】
  ④ 新サーバーの動作確認
  ⑤ DNSレコードのIPアドレスを新サーバーに書き換え
  ⑥ 変更の浸透を監視(dig / nslookup などで確認)

【切り替え後】
  ⑦ アクセスが新サーバーに来ていることを確認
  ⑧ 問題なければTTLを元の値(3600秒など)に戻す
  ⑨ 旧サーバーを一定期間維持してから廃止

TTL(生存時間)の意味

TTL は「このDNS情報を何秒間キャッシュ(一時保存)してよいか」を指定する数値です。TTLが3600(1時間)の場合、変更後も最大1時間は古い情報が使われ続ける可能性があります。事前にTTLを短縮しておくことで、切り替え後の浸透を速めることができます。

覚え方

「TTLは引越し前に転送届を早めに出す期間」 TTLが長いほど「転送届の効果が出るまで時間がかかる」と覚えよう。だから引越し(切り替え)の前日までにTTLを短くしておくのが鉄則!


歴史と背景

  • 1983年 — ポール・モカペトリスがDNSを設計・提案(RFC 882/883)。それ以前はhostsファイルで名前とIPを管理していた
  • 1987年 — DNS仕様がRFC 1034/1035として改定・確立。現在も基本仕様として使われている
  • 2000年代 — ブロードバンド普及とともにWebサービスが急増。DNSレコード変更による「ゆっくり移行」の手法が広まる
  • 2010年代 — AWSのRoute 53、CloudflareなどクラウドDNSが普及。管理画面からワンクリックで変更・ロールバックできる環境が整う
  • 2020年代 — クラウド移行案件の急増に伴い、「ダウンタイムゼロ」でのDNS切り替えがプロジェクト標準スキルに。Blue-Greenデプロイメントとの組み合わせが一般化

DNS切り替えの方式比較とリスク

DNS切り替えの3パターン ①一括切り替え 旧サーバー 192.168.0.1 ▼ Aレコード書換え 新サーバー 203.0.113.5 特徴 ✔ 手順がシンプル ✘ 浸透中は混在状態 ✘ ロールバックに時間 ②重み付けルーティング 旧サーバー 80% 徐々にトラフィック減少 新サーバー 20% 徐々にトラフィック増加 ↕ 割合を段階調整 特徴 ✔ リスク分散できる ✔ 問題時すぐ戻せる △ DNS設定がやや複雑 △ 対応DNSサービス必要 ③フェイルオーバー プライマリサーバー 通常はここへ ⚠ 障害検知 セカンダリサーバー 自動で切り替わる 特徴 ✔ 障害時に自動切替 ✔ 可用性が高い △ 構成・費用が増加

DNS浸透(プロパゲーション)のリスク

切り替え後、世界中のDNSキャッシュサーバーに新しい情報が届くまでの時間を DNS浸透期間(Propagation) と呼びます。この期間中は、アクセスする場所・タイミングによって旧サーバーに届く人と新サーバーに届く人が混在します。

状況影響対策
セッション情報が旧サーバーにあるログアウトされるセッションをDBで共有しておく
ファイルアップロード先が旧サーバーデータが分散する切り替え前後はアップロードを停止
メール受信サーバーが切り替わるメールロストMXレコードは最後に変更する
旧サーバーを即廃止する一部ユーザーが繋がらない浸透完了まで旧サーバーを維持する

関連する規格・RFC

規格・RFC番号内容
RFC 1034DNS概念と機能の定義(ドメイン名の概念・名前解決の仕組み)
RFC 1035DNS実装と仕様(Aレコード・MXレコード等のデータ形式)
RFC 2181DNS仕様の明確化・TTLの取り扱いルールの整理
RFC 8499DNS用語の定義(「権威サーバー」「リゾルバー」などの用語を標準化)

関連用語