はじめに
AWS Route 53を使用して、異なるAWSアカウント間でサブドメインの委譲を行う必要があったため、その手順をまとめました。この記事では、親ドメインを管理するアカウントから、サブドメインを管理する別のアカウントにDNS管理を委譲する方法について説明します。
前提
- 親ドメイン(例:
example.com
)を管理するAWSアカウント A - サブドメイン(例:
sub.example.com
)を管理するAWSアカウント B - 両方のアカウントでRoute 53へのアクセス権限
サブドメイン委譲の概要
DNS委譲により、組織のDNS管理を分散化し、各チームが独立してサブドメインを管理できるようになります。
手順1: サブドメインアカウントでのホストゾーン作成
サブドメインを管理するアカウント(アカウント B)で作業を行います。
1-1. Route 53コンソールにアクセス
AWSマネジメントコンソールにログインし、Route 53サービスを開きます。
1-2. ホストゾーンの作成
- 左側メニューから「ホストゾーン」を選択
- 「ホストゾーンの作成」ボタンをクリック
- ドメイン名:
sub.example.com
を入力 - タイプ: パブリックホストゾーン を選択
- 「ホストゾーンの作成」をクリック
1-3. ネームサーバーの確認と記録
ホストゾーンの作成が完了したら、重要な情報を記録します:
- 作成されたホストゾーンを選択
- NSレコードを確認し、4つのネームサーバーをメモ
例:
ns-1234.awsdns-56.org
ns-789.awsdns-01.net
ns-012.awsdns-34.com
ns-567.awsdns-89.co.uk
これらのネームサーバーは、次のステップで親ドメインアカウントで設定する際に使用します。
手順2: 親ドメインアカウントでのNSレコード作成
親ドメインを管理するアカウント(アカウント A)で作業を行います。
2-1. 親ドメインのホストゾーンを開く
Route 53コンソールでexample.com
のホストゾーンを選択します。
2-2. NSレコードの作成
親ドメインにサブドメインのNSレコードを追加することで、サブドメインのDNS管理を委譲します:
- 「レコードの作成」をクリック
- レコード名:
sub
(サブドメイン名を入力) - レコードタイプ:
NS - ホストゾーンのネームサーバー
- 値: 手順1で取得した4つのネームサーバーを入力(各行に1つずつ)
- TTL:
300
(推奨値) - 「レコードの作成」をクリック
手順3: DNS伝播の確認
3-1. DNS伝播の待機
DNSの伝播には通常48時間かかりますが、多くの場合は数分から数時間で反映されます。
3-2. 委譲の確認方法
dig
コマンドを使用して、委譲が成功したか確認できます:
dig sub.example.com NS
期待される出力は、手順1で取得したネームサーバーが表示されることです:
;; ANSWER SECTION:
sub.example.com. 300 IN NS ns-1234.awsdns-56.org.
sub.example.com. 300 IN NS ns-789.awsdns-01.net.
sub.example.com. 300 IN NS ns-012.awsdns-34.com.
sub.example.com. 300 IN NS ns-567.awsdns-89.co.uk.
まとめ
AWS Route 53を使用したクロスアカウントでのサブドメイン委譲で、同一ドメイン内でのDNS管理を分散化し、各チームが独立してサブドメインを管理できるようになります。