サブドメインのトラフィックのルーティング - Amazon Route 53

「翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。」

サブドメインのトラフィックのルーティング

acme.example.com や zenith.example.com などのサブドメインのリソースにトラフィックをルーティングする場合、次の 2 つの方法があります。

ドメインのホストゾーンにレコードを作成します。

通常、サブドメインのトラフィックをルーティングするには、ドメインと同じ名前のホストゾーンにレコードを作成します。たとえば、acme.example.com のインターネットトラフィックをデータセンターのウェブサーバーにルーティングするには、example.com ホストゾーンに acme.example.com という名前のレコードを作成します。詳細については、トピック「レコードを使用する」とそのサブトピックを参照してください。

サブドメインのホストゾーンを作成し、新しいホストゾーンでレコードを作成する

サブドメインのホストゾーンを作成することもできます。別のホストゾーンを使用してサブドメインのインターネットトラフィックをルーティングすることは、「サブドメインの責任をホストゾーンに委任する」、「サブドメインを他のネームサーバーに委任する」、またはその他類似の言い方で表現されることがあります。使用方法に関する概要は次のとおりです。

  1. トラフィックをルーティングするサブドメインと同じ名前のホストゾーン (acme.example.com など) を作成します。

  2. 新しいホストゾーンに、サブドメイン (acme.example.com) とそのサブドメイン (backend.acme.example.com など) のトラフィックをどのようにルーティングするかを定義するレコードを作成します。

  3. 新しいホストゾーンを作成したときに、Route 53 により新しいホストゾーンに割り当てられたネームサーバーを取得します。

  4. ドメイン (example.com) のホストゾーンに新しい NS レコードを作成し、ステップ 3 で取得した 4 つのネームサーバーを指定します。

別のホストゾーンを使用してサブドメインのトラフィックをルーティングする場合、IAM のアクセス許可を使用してサブドメインのホストゾーンへのアクセスを制限できます (IAM を使用して個々のレコードへのアクセスを制御することはできません)。 異なるグループによって管理されている複数のサブドメインがある場合、各サブドメインのホストゾーンを作成すると、ドメインのホストゾーン内のレコードにアクセスする必要がある人の数を大幅に減らすことができます。

サブドメインに別個のホストゾーンを使用することで、ドメインとサブドメインに異なる DNS サービスを使用することもできます。詳細については、「親ドメインを移行しないで Amazon Route 53 を サブドメインの DNS サービスとして使用する」を参照してください。

この設定の各 DNS リゾルバーからの最初の DNS クエリに対するパフォーマンスの影響はわずかです。リゾルバーは、ルートドメインのホストゾーンから情報を取得し、次にサブドメインのホストゾーンから情報を取得する必要があります。サブドメインの最初の DNS クエリの後、リゾルバーは情報をキャッシュするため、TTL が期限切れになり、別のクライアントがそのリゾルバーからサブドメインをリクエストするまで、再度取得する必要はありません。詳細については、「Amazon Route 53 レコードの作成時または編集時に指定する値」セクションの「TTL (秒)」を参照してください。

サブドメインのトラフィックをルーティングする別のホストゾーンの作成

サブドメインのトラフィックをルーティングする方法の 1 つは、サブドメインのホストゾーンを作成し、新しいホストゾーンに、サブドメインのレコードを作成することです。(より一般的なオプションは、ドメインのホストゾーン内にサブドメインのレコードを作成することです)。

注記

ここでは、Route 53 でサブドメインのホストゾーンを作成して委任するプロセスを説明しますが、他のネームサーバーにも DNS ゾーンを作成し、同様にそのネームサーバーに責任を委任するネームサーバー (NS) レコードを作成することもできます。

プロセスの概要を次に示します。

  1. サブドメインのホストゾーンを作成します。詳細については、「サブドメインの新しいホストゾーンを作成する」を参照してください。

  2. ホストゾーンに、サブドメインのレコードを追加します。サブドメインのホストゾーンに属するレコードがドメインのホストゾーンに含まれている場合は、これらのレコードをサブドメインのホストゾーンに複製します。詳細については、「サブドメインのホストゾーンでのレコードの作成」を参照してください。

  3. ドメインのホストゾーンにサブドメインの NS レコードを作成します。これにより、サブドメインの責任を新しいホストゾーンのネームサーバーに委任します。サブドメインのホストゾーンに属するレコードがドメインのホストゾーンに含まれている場合は、これらのレコードをドメインのホストゾーンから削除します (ステップ 2 でサブドメインのホストゾーンにコピーを作成しました)。 詳細については、「ドメインのホストゾーンの更新」を参照してください。

サブドメインの新しいホストゾーンを作成する

コンソールを使用してサブドメインのホストゾーンを作成するには、以下の手順を実行します。Route 53

サブドメインのホストゾーンを作成するには (コンソール)

  1. AWS マネジメントコンソールにサインインし、https://console.aws.amazon.com/route53/ にある Route 53 コンソールを開きます。

  2. を初めて利用する場合は、[Route 53Get started (使用開始)] を選択します。

    既に Route 53 を利用している場合は、ナビゲーションペインの [Hosted zones] を選択します。

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

  4. 右側のペインでは、[acme.example.com] のようなサブドメイン名を入力します。オプションでコメントも入力できます。

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

  5. [Type] は、デフォルト値の [Public hosted zone] のままにします。

  6. 右ペインの下部にある [ホストゾーンの作成] を選択します。

サブドメインのホストゾーンでのレコードの作成

サブドメイン (acme.example.com) と、そのサブドメイン (backend.acme.example.com) のトラフィックの Route 53 によるルーティングを定義するには、サブドメインのホストゾーンにレコードを作成します。

サブドメインのホストゾーンにレコードを作成する場合は、以下の点に注意してください。

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

  • サブドメインのすべてのレコードは、当該サブドメインのホストゾーンに作成します。たとえば、example.com ドメインと acme.example.com サブドメインの両方にホストゾーンがある場合、acme.example.com サブドメインのすべてのレコードは acme.example.com のホストゾーンに作成します。これには、backend.acme.example.com や beta.backend.acme.example.com などのレコードが含まれます。

  • サブドメイン (acme.example.com) のホストゾーンに属するレコードがドメイン (example.com) のホストゾーンに既に含まれている場合は、これらのレコードをサブドメインのホストゾーンに複製します。このプロセスの最後のステップとして、後でドメインのホストゾーンから重複するレコードを削除します。

    重要

    サブドメインの一部のレコードが、ドメインのホストゾーンとサブドメインのホストゾーンの両方にあると、DNS の動作が一貫しなくなります。動作は、DNS リゾルバーがキャッシュしたネームサーバー、ドメイン (example.com) のホストゾーンのネームサーバー、またはサブドメイン (acme.example.com) のホストゾーンのネームサーバーに応じて異なります。レコードが存在していても、そのレコードが DNS リゾルバーがクエリを送信する先のホストゾーンにない場合、Route 53 から NXDOMAIN (存在しないドメイン) が返されることがあります。

詳細については、「レコードを使用する」を参照してください。

ドメインのホストゾーンの更新

ホストゾーンを作成する場合、Route 53 はゾーンに 4 つのネームサーバーを自動的に割り当てます。ホストゾーンの NS レコードは、ドメインまたはサブドメインの DNS クエリに応答するネームサーバーを特定します。サブドメインのホストゾーンのレコードを使用してインターネットトラフィックのルーティングを開始するには、ドメイン (example.com) のホストゾーンに新しい NS レコードを作成し、これにサブドメイン (acme.example.com) の名前を渡します。NS レコードの値として、サブドメインのホストゾーンのネームサーバーの名前を指定します。

ここでは、Route 53 が DNS リゾルバーからサブドメイン acme.example.com またはそのサブドメインの 1 つに対して DNS クエリを受け取ります。

  1. Route 53 ドメイン (example.com) のホストゾーンを調べ、サブドメイン (acme.example.com) の NS レコードを検出します。

  2. Route 53 は、ドメイン (example.com) のホストゾーンで acme.example.com の NS レコードからネームサーバーを取得して DNS リゾルバーに返します。

  3. リゾルバーは、acme.example.com のクエリを acme.example.com ホストゾーンのネームサーバーに再送信します。

  4. Route 53 は、acme.example.com ホストゾーンのレコードを使用してクエリに応答します。

サブドメインのホストゾーンを使用してサブドメインのトラフィックをルーティングし、ドメインのホストゾーンから重複するレコードを削除するように Route 53 を設定するには、次の手順を実行します。

サブドメインのホストゾーンを使用するように Route 53 を設定するには (コンソール)

  1. Route 53 コンソールで、サブドメインのホストゾーンのネームサーバーを取得します。

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

    2. [Hosted zones] ページで、サブドメインのホストゾーンの名前を選択します。

    3. 右側のペインで、[Hosted zones details] セクションの [Name servers] に表示されている 4 つのサーバーの名前をコピーします。

  2. サブドメインではなくドメイン (example.com) のホストゾーンの名前を選択します。

  3. [Create record (レコードを作成)] を選択します。

  4. [Simple routing (シンプルルーティング)]、[Next (次へ)] の順に選択します。

  5. [Define simple record (シンプルなレコードを定義)] を選択します。

  6. 次の値を指定します。

    名前

    サブドメインの名前を入力します。

    値/ へのルートトラフィック

    [レコードタイプに応じて IP アドレスまたは別の値] を選択し、ステップ 1 でコピーしたネームサーバーの名前を貼り付けます。

    レコードタイプ

    [NS – Name servers for a hosted zone (ホストゾーンの NS ネームサーバー)] を選択します。

    TTL (Seconds)

    NS レコードの、より一般的な値 (172800 秒など) に変更します。

  7. [Define simple record (シンプルなレコードの定義)]、[Create records (レコードの作成)] の順に選択します。

  8. サブドメインのホストゾーンに再作成したレコードがドメインのホストゾーンに含まれている場合は、これらのレコードをドメインのホストゾーンから削除します。詳細については、「レコードの削除」を参照してください。

    完了すると、サブドメインのすべてのレコードがサブドメインのホストゾーンに含まれます。

サブドメインの追加レベルのトラフィックのルーティング

acme.example.com などのサブドメインのサブドメインにトラフィックをルーティングするのと同じ方法で、トラフィックを backend.acme.example.com などのサブドメインにルーティングします。ドメインのホストゾーンにレコードを作成するか、低いレベルのサブドメインのホストゾーンを作成してから、その新しいホストゾーンにレコードを作成します。

下位レベルのサブドメインに別のホストゾーンを作成することにした場合、ドメイン名に 1 つ近いレベルにあるサブドメインのホストゾーン内にある、下位レベルのサブドメイン用に NS レコードを作成します。これにより、トラフィックがリソースに正しくルーティングされます。たとえば、次のサブドメインのトラフィックをルーティングするとします。

  • subdomain1.example.com

  • subdomain2.subdomain1.example.com

別のホストゾーンを使用して subdomain2.subdomain1.example.com のトラフィックをルーティングするには、次の操作を行います。

  1. subdomain2.subdomain1.example.com という名前のホストゾーンを作成します。

  2. subdomain2.subdomain1.example.com ホストゾーンにレコードを作成します。詳細については、「サブドメインのホストゾーンでのレコードの作成」を参照してください。

  3. subdomain2.subdomain1.example.com ホストゾーンのネームサーバーの名前をコピーします。

  4. subdomain1.example.com ホストゾーンで、subdomain2.subdomain1.example.com という NS レコードを作成し、subdomain2.subdomain1.example.com ホストゾーンのネームサーバーの名前に貼り付けます。

    さらに、subdomain1.example.com から重複するレコードを削除します。詳細については、「ドメインのホストゾーンの更新」を参照してください。

    この NS レコードを作成した後、Route 53 は subdomain2.subdomain1.example.com ホストゾーンの使用を開始して、subdomain2.subdomain1.example.com サブドメインのトラフィックをルーティングします。