質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Amazon Route 53

Amazon Route 53 はAmazonが提供する、 可用性と拡張性に優れた ドメインネームシステム(DNS)サービスです。

Q&A

解決済

1回答

1873閲覧

ALIASレコードの利点を教えてください

YumiSakura

総合スコア101

Amazon Route 53

Amazon Route 53 はAmazonが提供する、 可用性と拡張性に優れた ドメインネームシステム(DNS)サービスです。

0グッド

0クリップ

投稿2022/06/25 08:38

編集2022/06/26 07:40

実現したいこと

ALIASレコードの利点を理解したい

疑問内容

AWSのRoute 53学習時に、

Route53独自のDNS機能を利用するALIASレコードはELBやcloudfrontのエンドポイントをCNAMEレコードではなくアレコードとして指定することができます。そのため、ZoneApexレコードをAレコードとして扱うことができます

という文章がありました。
この内容がいまいち理解できていません。

調べた内容

  • ALIASレコードはAWSリソースにアクセスするために使用するレコード
  • AレコードはドメインとIPアドレスを紐付けるレコード
  • CNAMEレコードはサブドメインとドメインを紐づけるレコード

というところまでは理解しています。

サブドメインが複数あり、IPアドレスが変わった時にCNAMEが作成されていると、
AレコードのIPアドレスだけ変えればサブドメインも全て変わるという利点があることも調べました。

それを踏まえて、エンドポイントをCNAMEではなくAレコードとして扱える利点は何でしょうか?
IPアドレスが変わった時手間が増えるような気がしました…

お願いしたいこと

Route53学習時の文章をわかりやすく解釈した内容を教えていただけますと幸いです。
また、各レコードの理解やそれの間違いがあればご指摘ください。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

CNAMEレコードは、対象ホスト(サブドメインなど)に設定することができますが、「CNAMEを設定した対象ホストには、他のレコードを設定できない」という制約があります。

ZoneApexというのは、そのゾーン(DNS)の頂点ドメイン名のことです。ZoneApexにはSOAレコードやNSレコードが設定されます。このため、ZoneApexと同じドメイン名に対してCNAMEレコードを設定することができません。(設定した場合、動作は未定義となります)

具体的には、例えば example.com というドメイン名を登録してDNS管理している状態で、外部ブログサービスなどで独自ドメインとして blog.example.com を使いたい場合は、サブドメイン blog に対して(外部ブログサービスのドメイン名に)CNAMEレコードを書けばよいですが、独自ドメインとして example.com を使いたい場合には CNAME レコードを書くことができません。

従来は、example.com のような頂点ドメイン名で CNAME 設定が必要なサービスを使うことはできませんでした。(外部サービス側の動的に変わるIPアドレスに追従するように A レコードを書けば使えますが、IPアドレスを追従する手間が発生します)

そこで登場したのが ALIAS レコードと呼ばれる疑似レコードです。これは AWS が独自にサポートしているレコードであって、DNS 標準のレコードではありません。内部的には A レコードと同じです。

ALIAS レコードは、CNAME と同様に外部サービス等のドメイン名に追従する形で名前解決(IPアドレスの取得)ができますが、CNAME レコードではなく A レコードで動作するため、example.com のような頂点ドメイン名でも利用することができます。これが CNAME レコードに対する ALIAS レコードの大きな利点です。

IPアドレスが変わった時手間が増えるような気がしました…

ALIAS レコードを設定した場合、IPアドレスの追従は自動的に行われます。AWS が自動でIPアドレスに追従するような処理を実装しているのです。結果的に、ユーザは CNAME レコードと同じような感覚で利用できます。

近年では DNS 標準でこの問題を解決するためにも、HTTPS レコードという新しいレコードが導入され、ALIAS と同じような、頂点ドメイン名に対しても CNAME 相当のレコードが設定できるようになりました。

CNAMEレコード < ALIASレコード < HTTPSレコード の順に後者の方がよりモダンな機能ということです。

投稿2022/06/26 06:47

arcxor

総合スコア2859

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

YumiSakura

2022/06/26 07:40

詳しい回答ありがとうございます! 更にお聞きしたいのですが、CNAMEを使うデメリットはあるのでしょうか? 例えば Aレコードは一度でドメイン→IPアドレスに変換できるのに対し、 CNAMEレコードはサブドメイン→ドメイン→IPアドレスと、2手間かかる のようなことはデメリットとしてあげられますか? また、頂点ドメインでCNAMEが使えないとIPアドレスの更新が面倒だということですが、頂点ドメインのみを使用する場合は特にCNAMEを使う必要はないでしょうか?(そうすればIPの更新も頂点ドメインのみ行えば良いのでそこまで面倒ではない、かと思いました)
arcxor

2022/06/26 08:31

> 更にお聞きしたいのですが、CNAMEを使うデメリットはあるのでしょうか? CNAME は2段以上(CNAMEの先がCNAME)にしてしまうことができますが、これがより多段だと名前解決のコストが増えたり、多段すぎるとフルリゾルバ(キャッシュサーバ)の実装次第では名前解決できなかったりする可能性がありますが、単純な1段だけの CNAME であれば現実的には名前解決のコストは気にする程度ではないと思います。 一応、ALIASレコードのメリットとして挙げられているように一発でIPアドレスを取得できることがパフォーマンス上有利だと説明されることがありますが、それだけを理由にCNAMEを使うべきでないとまでは言えないと思います。 > 頂点ドメインのみを使用する場合は特にCNAMEを使う必要はないでしょうか? 質問の意味がよく分かりません。頂点ドメイン名に対してCNAME相当の設定をしたいケースがあって、しかしその場合はCNAMEが仕様上使えないので、その場合にはALIASレコードが便利であるということです。 CNAME相当の設定が不要な状況で、最初からAレコードで済む場合は、ALIASレコードを使う必要はありません。
YumiSakura

2022/07/08 02:01

わかりずらい質問ですみません! わかりやすい解説ありがとうございました!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問