Skip to content
Latchkey

CNAMEレコードとは?ある名前を別の名前へのエイリアスにする

CNAMEレコードは、あるホスト名を別のホスト名に向けるDNSエイリアスであり、ルックアップがエイリアスをたどってターゲットの名前とそのアドレスを解決します。

名前をIPアドレスに固定する代わりに、CNAMEは別の名前に向けます。これがカスタムドメインをプラットフォームに接続する方法です。www.yoursite.comをプラットフォームのホストへのエイリアスにすれば、あとはプラットフォームが処理します。ホスティングプラットフォームやCDNへのdeployは、CNAMEに大きく依存します。

アドレスではなくエイリアス

CNAMEは名前をIPではなく別の名前にマッピングします。resolverはそのターゲット名をルックアップして実際のアドレスを見つけ、最終的な答えまでチェーンをたどります。

CNAMEが便利な理由

  • カスタムドメインをプラットフォームのホストに向ける。
  • ドメインをCDNのエンドポイントに接続する。
  • エイリアスに触れずに背後のターゲットを変更する。

apexの制約

CNAMEは名前上の他のレコードと共存できないため、通常はむき出しのapexドメインでは使えません。プロバイダーはルートでこれを回避するためにALIASレコードやANAMEレコードを提供しています。

deploymentにおけるCNAME

フロントエンドをプラットフォームにホストするということは、多くの場合、自分のドメインからプラットフォームのエンドポイントへのCNAMEを作成することを意味します。プラットフォームはその後サイトを配信し、エイリアスされた名前のTLSを管理します。

検証とバリデーション

プラットフォームは、証明書を発行する前にドメインの所有権を証明するためにCNAMEを要求することがよくあります。そのレコードが作成されてプロパゲートされるまで、deployはTLSのセットアップを完了できません。

プロパゲーションは依然として適用される

新規または変更されたCNAMEはDNSプロパゲーションの対象なので、最初は一貫しない形で解決されることがあります。Latchkeyのrunnerはこのウィンドウ中に一時的な解決失敗をリトライするため、短時間の不整合がdeployチェックを失敗させることはありません。

重要なポイント

  • CNAMEレコードは、あるホスト名をIPアドレスではなく別のホスト名へのエイリアスにします。
  • カスタムドメインをプラットフォームやCDNに接続し、検証にも使われます。
  • CNAMEはむき出しのapexでは使えず、変更はプロパゲーションの対象になります。

関連ガイド