2026年6月12日

2026年6月12日

DNSimple を使った DNS 移行手順|ゾーンファイルの取り込み・ALIAS への置き換え・API での照合とネームサーバー切り替え

今の DNS サービスから DNSimple へ DNS を移すときは、「移行元のゾーンを書き出す → TTL を下げる → DNSimple にドメインを追加してゾーンファイルを取り込む → 頂点の別名や URL 転送を DNSimple の仕組みに置き換える → 新旧のネームサーバーに同じ問い合わせをして照合する → DNSSEC を整理してからネームサーバーを切り替える」という順で進めます。この記事では、ドメインの登録先(レジストラ)は今のまま DNS の運用だけを DNSimple に移す前提で、各手順の理由と確認方法、DNSimple の API を使った件数の照合、問題が出たときの戻し方までを説明します。

DNSimple の管理画面の構成やメニュー名、レコードの種類ごとの仕様は更新されることがあります(2026年10月現在)。以下では操作を目的で説明するので、実際の表記は DNSimple のサポートドキュメントで確認してください。料金やプランごとの機能の違いはこの記事では扱いません。

先に決めておくこと:DNS だけ移すか、登録も移すか

DNSimple はレジストラとしてドメインの登録も扱えますが、DNS の移行とドメインの移管は別の作業です。両方を同時に進めると、問題が起きたときにどちらが原因か切り分けにくくなります。

  • DNS だけ移す:ドメインは今のレジストラに置いたまま、DNSimple にドメインを「DNS をホストするドメイン」として追加し、レジストラでネームサーバーを DNSimple のものに変えます。この記事の範囲です。
  • 登録も移す:DNS の移行が落ち着いてから、別の機会に移管の手続きをします。DNS を先に DNSimple で動かしておけば、移管中にネームサーバーが変わって止まる心配が減ります。

手順1:移行元のゾーンを書き出し、要注意のレコードを洗い出す

移行元の管理画面に BIND 形式のゾーンファイルを書き出す機能があれば、それを使います。外から dig で調べる方法は、存在を知らない名前を見つけられないため補助にとどめます。書き出せない場合は、管理画面の一覧を見ながら名前・種類・値・TTL を表に起こします。

書き出したら、次のレコードに印を付けておきます。移行で事故が起きやすいのはこのあたりです。

  • メール関連:MX、SPF(v=spf1 の TXT)、DKIM(selector._domainkey の TXT や CNAME)、DMARC(_dmarc の TXT)
  • 長い TXT:DKIM の公開鍵のように255文字を超える値は、複数の文字列に分かれて書き出されます。取り込み後に途中で切れていないかを見ます。
  • 頂点の別名:Route 53 のエイリアスや Cloudflare の CNAME フラットニングなど、移行元の独自機能で頂点を別名に向けているもの
  • DNS 以外の機能:レジストラや DNS サービスの URL 転送・メール転送は DNS レコードではないため、ゾーンファイルに出てきません。
  • サブドメインの委任:別のネームサーバーに任せている NS レコード

DNSSEC の状態も確かめておきます。

# 親ゾーンに DS が登録されていれば DNSSEC が有効
dig example.com DS +short

# 現在のネームサーバー
dig example.com NS +short

手順2:移行元で TTL を下げておく

切り替え直後に問題が見つかったとき、戻した値が早く行き渡るよう、移行元で主要なレコードの TTL を300秒程度に下げます。下げた値が効くのは、それまでの TTL が切れてからです。86400秒(1日)だったレコードなら、下げてから1日以上待って切り替えます。なお、レジストラに登録したネームサーバーの情報(親ゾーン側の NS)の TTL は TLD の運営者が決めており、こちらからは短くできません。

手順3:DNSimple にドメインを追加し、ゾーンファイルを取り込む

DNSimple のアカウントでドメインを追加します。登録や移管ではなく、DNS のホストだけを選ぶ点に注意します。追加すると、そのドメインに割り当てられたネームサーバーが表示されるので控えておきます。ns1.dnsimple.com のような名前が複数並びますが、実際に登録する値は画面に表示されたものを使ってください。

レコードの登録は、ゾーンファイルの取り込み機能を使うと漏れが少なくなります。取り込んだあとは次の点を確認します。

  • 移行元の SOA と、自ドメインの頂点の NS が二重に入っていないか(DNSimple 側のものが使われます)
  • TTL が移行元と同じか、意図した値になっているか
  • 長い TXT が欠けていないか

手順4:移行元の独自機能を DNSimple の仕組みに置き換える

ゾーンファイルに正しく現れないものは、手で入れ直します。

  • 頂点の別名:DNSimple には ALIAS レコードがあり、頂点(example.com)をホスト名に向けたい場合に使えます。問い合わせを受けたときに向け先の名前を解決して A/AAAA として答える仕組みなので、向け先のホスト名が正しいかを確認して設定します。
  • URL 転送:DNSimple には URL レコードと呼ばれる転送の仕組みがあります。ただし HTTPS での転送の扱いなど条件があるため、WordPress のサイトで使う転送は、Web サーバーや WordPress 側の301リダイレクトで行うほうが管理しやすいことが多いです。
  • Cloudflare のプロキシ:プロキシを通していたレコードは、書き出したファイルに Cloudflare の IP が入っている場合があります。移行後に元のサーバーへ直接向けるなら、サーバー本来の IP に書き換えます。

手順5:新旧のネームサーバーに同じ問い合わせをして照合する

切り替える前に、移行元と DNSimple のネームサーバーへ直接問い合わせ、答えを比べます。names.txt には「名前 種類」を1行ずつ書きます(例:example.com MX、_dmarc.example.com TXT)。

OLD=ns1.old-provider.example   # 移行元のネームサーバー
NEW=ns1.dnsimple.com           # 手順3で控えた DNSimple のネームサーバー

while read -r name type; do
  [ -z "$name" ] && continue
  a=$(dig @"$OLD" "$name" "$type" +norec +short | sort)
  b=$(dig @"$NEW" "$name" "$type" +norec +short | sort)
  [ "$a" = "$b" ] || printf 'DIFF: %s %s\n  old: %s\n  new: %s\n' "$name" "$type" "$a" "$b"
done < names.txt

手順4で意図的に変えたレコード(ALIAS にした頂点など)は差が出て当然なので、新しい答えが正しいかを個別に確かめます。

レコードの件数は、DNSimple の API でも確認できます。API のアクセストークンは DNSimple の管理画面で発行し、スクリプトに直接書かず環境変数から読み込みます。トークンをバージョン管理に入れないよう注意してください。

# DNSIMPLE_TOKEN と DNSIMPLE_ACCOUNT は環境変数で渡す(値は管理画面で確認)
curl -s -H "Authorization: Bearer ${DNSIMPLE_TOKEN}" \
  -H "Accept: application/json" \
  "https://api.dnsimple.com/v2/${DNSIMPLE_ACCOUNT}/zones/example.com/records?per_page=100" \
  | jq -r '.data[] | "\(.type)\t\(.name)\t\(.content)"' | sort

レコードが100件を超える場合は、応答に含まれるページの情報を見て続きを取得します。エンドポイントや引数は API のバージョンで変わることがあるため、DNSimple の API ドキュメントで確認してから使ってください。練習には、本番とは別のサンドボックス環境が用意されています。

手順6:DNSSEC を整理してからネームサーバーを切り替える

手順1で DS が見つかった場合は、移行元で署名されたゾーンの DS が親ゾーンに残ったまま切り替えると、DNSSEC を検証するリゾルバーで名前解決に失敗します。次の順序がもっとも単純です。

  1. レジストラで DS を削除する
  2. dig example.com DS +short が空になり、さらに DS の TTL が切れるまで待つ
  3. レジストラでネームサーバーを DNSimple のものに変更する
  4. 落ち着いたら DNSimple 側で DNSSEC を有効にし、表示された DS をレジストラに登録する

切り替えたら、親ゾーンからたどって新しいネームサーバーが返るかを確認します。

dig example.com NS +trace
dig @ns1.dnsimple.com example.com SOA +norec +short

手順7:切り替え後の確認と戻し方

サイトは www ありとなしの両方で開き、証明書のエラーが出ないかを見ます。メールは外部のアドレスとの間で送受信を試し、受信したメールのヘッダーで SPF と DKIM が pass になっているかも確認します。証明書を DNS 認証(DNS-01)で更新している場合は、認証用のレコードを DNSimple に書き込めるよう、更新ツールの設定も切り替えます。

移行元のゾーンは数日は消さずに残します。古いネームサーバーの情報をキャッシュしたリゾルバーが、しばらく移行元に問い合わせるためです。この間にレコードを変えるときは両方に入れます。原因の分からない問題が出たら、レジストラでネームサーバーを移行元に戻せば元の状態に戻ります。

まとめ

  • DNS の移行とドメインの移管は分け、まず DNS だけを DNSimple に移します。
  • 移行元のゾーンを書き出し、メール関連・長い TXT・頂点の別名・URL 転送・委任に印を付けます。
  • TTL を先に下げ、元の TTL が切れてから切り替えます。
  • 取り込み後は新旧のネームサーバーで照合し、API でも件数を確かめます。頂点の別名は ALIAS に置き換えます。
  • DNSSEC は DS を外してから切り替え、落ち着いてから DNSimple で有効にして DS を登録し直します。

お気軽にご相談ください

お見積りへ お問い合わせへ
▲