Route 53 のエイリアスレコード

AWS,Route53

概要

  • Amazon Route 53 は、AWSのドメインネームシステム(DNS)ウェブサービスです。
  • 今回は、Route 53 の独自機能の1つである「エイリアスレコード」を紹介します。

Aレコード / CNAMEレコードとは

  • DNSのAレコードは、ドメインに対応するIPアドレスを登録するためのレコードです。(AはAddressの"A")
  • DNSのCNAMEレコードは、ドメインに対応するFQDNを登録するためのレコードです。(CはCanonicalの"C"であり、Aレコードに対する別名と言えます)
  • その他のDNSのレコードに関する説明は、省略します。

エイリアスレコードとは

  • エイリアスレコードは、Route 53のDNS拡張機能であり、AWSリソースにルーティングするための別名を付けることができます。エイリアスレコードは、CNAMEレコードではなく、Aレコードの機能となります。
  • Amazon Route 53 開発者ガイドには、次の説明があります。
Amazon Route 53 エイリアスレコードでは Route 53 独自の DNS 拡張機能が提供されます。エイリアスレコードを使用すると、選択した AWS リソース (CloudFront ディストリビューションや Amazon S3 バケットなど) にトラフィックをルーティングできます。また、エイリアスレコードにより、ホストゾーン内のあるレコードから別のレコードにトラフィックをルーティングできます。
CNAME レコードとは異なり、DNS 名前空間の最上位ノード (Zone Apex とも呼ばれる) にエイリアスレコードを作成できます。たとえば、example.com という DNS 名を登録する場合、Zone Apex は example.com になります。example.com に対して CNAME レコードは作成できませんが、www.example.com に対してトラフィックをルーティングするエイリアスレコードを作成できます。
 

エイリアスレコードのメリット

メリット

  • ELB、S3、API GatewayなどDNS名を持つリソースに対して、直接ドメインを登録することができます。
  • もちろん、通常のCNAMEレコードでも実現できますが、Route 53のエイリアスレコードを使用することで、外部からのアクセスにAレコードとして振る舞います。
  • CNAMEレコードであれば、以下の振る舞いとなります。
    • mydomain.com → myelb1-xxxxxxxxxx.ap-northeast-1.elb.amazonaws.com → IPアドレスの 3ステップで名前解決
  • エイリアスレコードであれば、Aレコードのため、以下の振る舞いとなります。
    • mydomain.com → IPアドレスの 2ステップで名前解決
 

サポートされているAWSリソース

  • エイリアスレコードが対応するAWSリソースは、下記の通りです。
    • Amazon API Gateway リージョン固有のカスタム API またはエッジ最適化 API: Route 53 はお客様の API の 1 つ以上の IP アドレスで応答します。
    • Amazon VPC インターフェイスエンドポイント: Route 53 はインターフェイスエンドポイントの 1 つ以上の IP アドレスで応答します。
    • CloudFront ディストリビューション: Route 53 は、お客様のコンテンツを提供できる CloudFront エッジサーバーの 1 つまたは複数の IP アドレスで応答します。
    • Elastic Beanstalk 環境: Route 53 はその環境の 1 つまたは複数の IP アドレスで応答します。
    • ELB ロードバランサー: Route 53 は、ロードバランサーの 1 つまたは複数の IP アドレスで応答します。
    • 静的ウェブサイトとして設定されている Amazon S3 バケット: Route 53 は Amazon S3 バケットの 1 つの IP アドレスで応答します。
    • 同じホストゾーン内の別の Route 53 レコード: Route 53 は、エイリアスレコードでの参照先のレコードに対するクエリを受け取ったのかのように応答します。
  • 出典はAmazon Route 53 開発者ガイドです。
 

エイリアスレコードの登録方法

  • Route 53 のAWSコンソールにアクセスし、「ホストゾーン」の「ドメイン」を選択します。DNS設定の画面が表示されます。「レコードセットの作成」をクリックします。
  • 登録するドメインの名前を入力します。
  • タイプに、「A – IPv4アドレス」を選択します。
  • 「エイリアス」に「はい」を選択します。
  • 「エイリアス先」において、同一アカウントであれば選択肢からリソースを選びます。他アカウントのリソースの場合は、リソースのDNSを直接入力します。
  • 「作成」ボタンを押します。

AWS,Route53

Posted by takaaki