Route 53 を使用中のドメインの DNS サービスにする - Amazon Route 53

Route 53 を使用中のドメインの DNS サービスにする

現在トラフィックが発生している (ユーザーがドメイン名を使用してウェブサイトを閲覧したり、ウェブアプリケーションにアクセスしている場合などで) ドメインの DNS サービスを Amazon Route 53 に移行する場合は、このセクションの手順を実行します。

ステップ 1: 現在の DNS サービスプロバイダから現在の DNS 設定を取得する (オプション、ただし推奨)

DNS サービスを他のプロバイダから Route 53 に移行した後に、現在の DNS 設定を Route 53 で再現できます。まず、ドメインと同じ名前のホストゾーンを Route 53 に作成し、そのホストゾーンにレコードを作成します。各レコードは、指定されたドメイン名またはサブドメイン名のトラフィックをどのようにルーティングするかを示します。例えば、誰かがウェブブラウザにドメイン名を入力した際、そのトラフィックをデータセンターのウェブサーバーにルーティングするのか、それとも Amazon EC2 インスタンスや CloudFront ディストリビューションなどにルーティングするのかを指定します。

使用するプロセスは、現在の DNS 設定の複雑さによって異なります。

  • 現在の DNS 設定が単純な場合 – 少数のサブドメインへのインターネットトラフィックを、ウェブサーバーや Amazon S3 バケットなどの少数のリソースにルーティングする場合は、Route 53 コンソールから手動でレコードをいくつか作成します。

  • 現在の DNS 設定がより複雑で現在の設定を複製したいだけの場合 – 現在の DNS サービスプロバイダからゾーンファイルを入手して、そのゾーンファイルを Route 53 にインポートすることで、移行作業が簡単になります。(すべての DNS サービスプロバイダがゾーンファイルを提供しているわけではありません。) ゾーンファイルをインポートすると、Route 53 はホストゾーン内に対応するレコードを作成して、既存の設定を自動的に再現します。

    ゾーンファイルまたはレコードリストを取得する方法を、現在の DNS サービスプロバイダのカスタマーサポートに問い合わせてみてください。必要なゾーンファイルのフォーマットの詳細については、「ゾーンファイルをインポートしてレコードを作成する」を参照してください。

  • 現在の DNS 設定がより複雑で Route 53 のルーティング機能に関心がある場合 – 次のドキュメントを参照して、他の DNS サービスプロバイダでは提供されていない Route 53 の機能の中で、使用できるものがあるかを確認してください。使用する場合は、手動でレコードを作成するか、ゾーンファイルをインポートして、後でレコードを作成または更新することができます。

    • エイリアスレコードと非エイリアスレコードの選択」では、Route 53 のエイリアスレコードの利点について解説しています。エイリアスレコードは、一部の AWS リソース (CloudFront ディストリビューションや Amazon S3 バケットなど) に対して無料でトラフィックをルーティングします。

    • ルーティングポリシーの選択」では、Route 53 のルーティングオプションについて解説しています。これらには、ユーザーの場所に基づいたルーティング、ユーザーとリソース間のレイテンシーに基づいたルーティング、リソースの正常性に基づいたルーティング、および指定した重みに基づくリソースへのルーティングなどがあります。

    注記

    また、ゾーンファイルをインポートした後で設定を変更して、エイリアスレコードと複雑なルーティングポリシーを利用することもできます。

ゾーンファイルを取得できない場合や、Route 53 のレコードを手動で作成する場合に、移行の必要性が考えられるレコードは次のとおりです。

  • A (アドレス) レコード – このレコードは、ドメイン名またはサブドメイン名を、対応するリソースの IPv4 アドレス (192.0.2.3 など) に関連付けます

  • AAAA (アドレス) レコード – このレコードは、ドメイン名またはサブドメイン名を、対応するリソースの IPv6 アドレス (2001:0db8:85a3:0000:0000:abcd:0001:2345 など) に関連付けます

  • メールサーバー (MX) レコード – このレコードは、トラフィックをメールサーバーにルーティングします

  • CNAME レコード – このレコードは、あるドメイン名 (example.net) のトラフィックを別のドメイン名 (example.com) に再ルーティングします

  • サポートされているその他の DNS レコードタイプに対応するレコード – サポートされているレコードタイプの一覧については、「サポートされる DNS レコードタイプ」を参照してください。

ステップ 2: ホストゾーンを作成する

ドメインのトラフィックをどのようにルーティングするかを Amazon Route 53 に指示するには、ドメインと同じ名前のホストゾーンを作成し、そのホストゾーンにレコードを作成します。

重要

ホストゾーンは、管理権限を持つドメインに対してのみ作成できます。通常、これはドメインを所有していることを指しますが、ドメインの登録者向けにアプリケーションを開発している場合にも当てはまります。

ホストゾーンを作成すると、Route 53 はそのゾーンに対して、1 つのネームサーバー (NS) レコードと、1 つの Start of Authority (SOA) レコードを自動的に作成します。NS レコードは、Route 53 がホストゾーンに関連付けた 4 つのネームサーバーを識別します。Route 53 をドメインの DNS サービスとして使用するには、これら 4 つのネームサーバーを使用するようにドメインの登録を更新します。

重要

ホストゾーンに追加のネームサーバー (NS) レコードまたは Start of Authority (SOA) レコードを作成しないでください。また、既存の NS レコードと SOA レコードを削除しないでください。

ホストゾーンを作成するには
  1. AWS Management Console にサインインし、Route 53 コンソール (https://console.aws.amazon.com/route53/) を開きます。

  2. Route 53 を初めて使用する場合は、[DNS management (DNS 管理)] の [Get started (今すぐ始め) ] を選択した後、[Create Hosted Zone (ホストゾーンの作成)] を選択します。

    既に Route 53 を利用している場合は、ナビゲーションペインで [Hosted zones (ホストゾーン)] を選択した上で、[Create Hosted Zone (ホストゾーンの作成)] を選択します。

  3. [Create hosted zone] (ホストゾーンの作成) ペインで、ドメイン名とコメント (必要に応じて) を入力します。設定の詳細については、右側のヘルプパネルを開き参照してください。

    a~z、0~9、- (ハイフン) 以外の文字を指定する方法、および国際化されたドメイン名を指定する方法については、「DNS ドメイン名の形式」を参照してください。

  4. [Type] (タイプ) では、デフォルト値の [Public hosted zone] (パブリックホストゾーン) をそのまま使用します。

  5. [ホストゾーンの作成] を選択します。

ステップ 3: レコードを作成する

ホストゾーンを作成した後、ドメイン (example.com) またはサブドメイン (www.example.com) のトラフィックをルーティングする場所を定義するレコードをホストゾーンに作成します。例えば、example.com と www.example.com のトラフィックを、Amazon EC2 インスタンス上にあるウェブサーバーにルーティングする場合は、example.com という名前のレコードと www.example.com という名前のレコードを 2 つ作成します。各レコードでは、EC2 インスタンスの IP アドレスを指定します。

レコードはさまざまな方法で作成できます。

ゾーンファイルをインポートする

ステップ 1: 現在の DNS サービスプロバイダから現在の DNS 設定を取得する (オプション、ただし推奨)」で現在の DNS サービスからゾーンファイルを取得している場合には、これが最も簡単な方法となります。Amazon Route 53 では、エイリアスレコードを作成するタイミングや、加重やフェイルオーバーなどの特殊なルーティングタイプを使用するタイミングを予測できません。この理由から、インポートするゾーンファイルがある場合、Route 53 では、シンプルなルーティングポリシーを使用しながら標準的な DNS レコードが作成されます。

詳細については、「ゾーンファイルをインポートしてレコードを作成する」を参照してください。

コンソールで個別にレコードを作成する

ゾーンファイルを取得しておらず、シンプルなルーティングポリシーを持つレコードをいくつか作成して使用を開始する場合には、Route 53 コンソールでレコードを作成します。エイリアスレコードと非エイリアスレコードの両方を作成できます。

詳細については、以下のトピックを参照してください。

プログラムでレコードを作成する

AWS SDK、AWS CLI、または AWS Tools for Windows PowerShell のいずれかを使用してレコードを作成できます。詳細については、「AWS ドキュメント」を参照してください。

AWS の SDK で使用できないプログラミング言語で記述している場合には、Route 53 API も利用が可能です。詳細については、「Amazon Route 53 API リファレンス」を参照してください。

ステップ 4: TTL の設定を下げる

レコードの TTL (有効期限) 設定は、DNS リゾルバーがレコードをキャッシュし、キャッシュされた情報を使用する期間を指定します。TTL が期限切れになると、リゾルバーはドメインの DNS サービスプロバイダに別のクエリを送信し、最新の情報を取得します。

NS レコードの一般的な TTL 設定は 172800 秒、つまり 2 日です。NS レコードには、ドメインネームシステム (DNS) がドメインのトラフィックをルーティングする方法に関する情報を得るために使用できるネームサーバーがリストされています。現在の DNS サービスプロバイダと Amazon Route 53 の両方で NS レコードの TTL を下げることで、DNS を Route 53 に移行している際に問題が検出された場合のドメインのダウンタイムを短縮できます。TTL を下げないと、何か問題が発生した場合、ドメインはインターネット上で最大 2 日間使用できなくなる可能性があります。

注記

フルリゾルバーによっては、親権限サーバーの NS レコードの TTL をキャッシュする場合があるため、親権限 DNS サーバーに登録されている NS レコードの TTL も短縮する必要があります。

次の NS レコードの TTL を変更することをお勧めします。

  • 現在の DNS サービスプロバイダのホストゾーンにある NS レコード。(現在のプロバイダでは異なる用語を使用している場合もあります。)

  • ステップ 2: ホストゾーンを作成する」で作成したホストゾーンの NS レコード。

現在の DNS サービスプロバイダで NS レコードの TTL 設定を下げるには
  • ドメインの現在の DNS サービスプロバイダが提供するメソッドを使用して、ドメインのホストゾーンでの NS レコードの TTL を変更します。

Route 53 ホストゾーンの NS レコードの TTL 設定を下げるには
  1. AWS Management Console にサインインし、Route 53 コンソール (https://console.aws.amazon.com/route53/) を開きます。

  2. ナビゲーションペインで [Hosted Zones] を選択します。

  3. ホストゾーンの名前を選択します。

  4. NS レコードを選択してから、[Edit] (編集) を選択します。

  5. [TTL (Seconds)] の値を変更します。60 秒から 900 秒 (15 分) の間の値を指定することをお勧めします。

  6. [Save changes] (変更の保存) をクリックします。

ステップ 5: (DNSSEC を構成している場合) 親ゾーンから DS レコードを削除する

ドメインで DNSSEC を設定している場合は、ドメインを Route 53 に移行する前に、親ゾーンから Delegation Signer (DS) レコードを削除します。

Route 53 または別のレジストラが親ゾーンをホストしている場合は、それらのホストに対し DS レコードの削除を依頼します。

現在、2 つのプロバイダー間で DNSSEC 署名を有効にすることはできないため、DNSSEC を無効にするには、すべての DS または DNSSEC を削除する必要があります。これにより、DNS リゾルバーに一時的にシグナルが送られて DNSSEC 検証が無効になります。ステップ 11 でRoute 53 への移行が完了した後、必要に応じて DNSSEC 検証を再度有効にすることができます。

詳細については、「ドメインのパブリックキーの削除」を参照してください。

ステップ 6: 古い TTL の有効期限切れを待つ

ドメインが使用されている場合 (ユーザーがドメイン名を使用してウェブサイトを閲覧したり、ウェブアプリケーションにアクセスしている場合など)、DNS リゾルバーは現在の DNS サービスプロバイダが提供したネームサーバーの名前をキャッシュしています。数分前にその情報をキャッシュした DNS リゾルバーでは、この後ほぼ 2 日ほど保存されます。

DNS サービスが Route 53 に移行されたことを一度ですべて確認するには、TTL を短くした後、2 日間待ってください。2 日間が経過すると TTL の有効期限が切れ、リゾルバーがドメインのネームサーバーを要求します。リゾルバーは現在のネームサーバーを取得し、「ステップ 4: TTL の設定を下げる」で指定した新しい TTL も取得します。

ステップ 7: NS レコードを更新して、Route 53 ネームサーバーを使用する

ドメインの DNS サービスとして Amazon Route 53 の使用を開始するには、レジストラまたは親ゾーンが提供する方法を使用して、NS レコード内の現在のネームサーバーを Route 53 ネームサーバーに置き換えます。

注記

Route 53 ネームサーバーを使用するように、現在の DNS サービスプロバイダーで NS レコードを更新するときは、ドメインの DNS 設定を更新します。(これは、ドメインの Route 53 ホストゾーンの NS レコードを更新するのと同じですが、移行元の DNS サービスで設定を更新する点が異なります)。

レジストラまたは親ゾーンで NS レコードを更新して Route 53 ネームサーバーを使用するには
  1. Route 53 コンソールで、 ホストゾーンのネームサーバーを取得します。

    1. AWS Management Console にサインインし、Route 53 コンソール (https://console.aws.amazon.com/route53/) を開きます。

    2. ナビゲーションペインで [Hosted zones] を選択します。

    3. [Hosted Zones] (ホストゾーン) ページで、該当するホストゾーンの名前を選択します。

    4. [Hosted zone details] (ホストゾーンの詳細) セクションの [Name servers] (ネームサーバー) で一覧表示されている、 4 つの名前を書き留めます。

  2. ドメインの現在の DNS サービスが提供するメソッドを使用して、ホストゾーンの NS レコードを更新します。ドメインが Route 53 に登録されている場合は、「ドメインのネームサーバーおよびグルーレコードの追加あるいは変更」を参照してください。このプロセスは、現在の DNS サービスでネームサーバーの削除が可能かどうかによって異なります。

    ネームサーバーを削除できる場合

    • ホストゾーンの NS レコードで、現在のネームサーバーの名前をメモします。現在の DNS 設定を復元する必要がある場合は、これらが指定するサーバーになります。

    • NS レコードから現在のネームサーバーを削除します。

    • NS レコードを、この手順のステップ 1 で取得した 4 つすべての Route 53 ネームサーバーの名前に置き換えます。

      注記

      完了すると、NS レコード内のネームサーバーは 4 つの Route 53 ネームサーバーのみになります。

    ネームサーバーを削除できない場合

    • カスタムネームサーバーを使用するオプションを選択します。

    • この手順のステップ 1 で取得した、4 つの Route 53 ネームサーバーをすべて追加します。

ステップ 8: ドメインのトラフィックの監視

ウェブサイトやアプリケーションのトラフィック、電子メールなど、ドメインのトラフィックを監視する。

ステップ 9: NS レコードの TTL を高い値に戻す

ドメインの Amazon Route 53 ホストゾーンで、NS レコードの TTL をより一般的な値、例えば 172800 秒 (2 日) に変更します。これにより、DNS リゾルバーがドメインのネームサーバーのクエリを送信するのを頻繁に待つ必要がないため、ユーザーのレイテンシーが改善されます。

Route 53 ホストゾーン内で NS レコードの TTL を変更するには
  1. AWS Management Console にサインインし、Route 53 コンソール (https://console.aws.amazon.com/route53/) を開きます。

  2. ナビゲーションペインで [Hosted Zones] を選択します。

  3. ホストゾーンの名前を選択します。

  4. ホストゾーンのレコードのリストで、NS レコードを選択します。

  5. [編集] を選択します。

  6. [TTL (Seconds)] を、DNS リゾルバーがドメインのネームサーバーの名前をキャッシュする秒数に変更します。172800 秒の値を推奨します。

  7. [Save changes] (変更の保存) をクリックします。

ステップ 10: ドメイン登録を Amazon Route 53 に移管する

ドメインの DNS サービスの Amazon Route 53 への移行が完了したので、必要な場合には、ドメインの登録を Route 53 に移管します。詳細については、「ドメイン登録の Amazon Route 53 への移管」を参照してください。

ステップ 11: DNSSEC 署名を再度有効にする (必要な場合)

これでドメインの DNS サービスを Amazon Route 53 に移管したので、DNSSEC 署名を再度有効にすることができます。

DNSSEC 署名を有効にするには、次の 2 つの手順を実行します。

  • ステップ 1: Route 53 の DNSSEC 署名を有効にし、AWS Key Management Service (AWS KMS) のカスタマー管理キーに基づいたキー署名キー (KSK) を、Route 53 が作成するようにリクエストします。

  • 手順 2: Delegation Signer (DS) レコードを親ゾーンに追加して、ホストゾーンの信頼チェーンを作成します。これにより、信頼された暗号化署名を使用して DNS 応答を認証できます。

    手順については、「DNSSEC 署名を有効にし、信頼チェーンを確立します。」を参照してください。