DNS プロトコルの制限により、CNAME レコードは、同じドメイン名の下で他のレコードタイプ (MX や TXT など) と共存できません。CNAME フラット化は、CNAME レコードを IP アドレスにマッピングし、CNAME レコードではなくターゲット ドメインの IP アドレスを返すことで、これらの競合を解決します。この機能は、ローカル DNS による再帰的なクエリを減らし、クライアントのドメイン名解決を高速化します。
なぜ使用するのか
CNAME フラット化は、DNS 解決を高速化し、クライアントの待ち時間を短縮します。
DNS クエリ数の削減: CNAME フラット化前は複数のクエリが必要でしたが、フラット化後は最終的な IP アドレスを取得するためのクエリは 1 回だけです。
応答の高速化: クエリ数が少ないため、全体的な解決速度が向上します。
他のレコードタイプとの共存: CNAME フラット化は、CNAME レコードを A/AAAA レコードに変換することで、競合を回避し、他のレコードタイプを保持します。
いつ使用するか
CNAME を他のレコードタイプと併用する場合: ドメインに CNAME と他のレコードタイプ (MX や TXT など) の両方が必要な場合、CNAME フラット化によって CNAME レコードを A/AAAA レコードに変換して競合を回避できます。
DNS クエリの最適化: CNAME レコードは複数の再帰クエリにつながり、遅延が増加します。CNAME フラット化により、ターゲット ドメインの IP アドレスに直接アクセスできるようになり、不要なクエリを減らして解決速度を向上させます。
しくみ
次の図に示すように、CNAME フラット化後、ESA は再帰クエリによって CNAME レコードの IP アドレスを取得します。www.example.com の CNAME レコード値を返す代わりに、この IP アドレスをローカル DNS に直接返します。
CNAME フラット化の設定
CNAME フラット化機能は、プロキシ ステータスが [DNS のみ] に設定されているレコードにのみ適用されます。レコードのプロキシが有効になっている場合、オリジン IP アドレスを保護するために CNAME フラット化は有効になりません。
ESA コンソールで、[Web サイト] を選択し、管理する Web サイトを見つけて、 をクリックします。
左側のナビゲーション ウィンドウで、 を選択します。
CNAME フラット化エリアで [設定] をクリックし、必要に応じて [トップレベル CNAME をフラット化する] または [すべての CNAME をフラット化する] を選択します。
[トップレベル CNAME をフラット化する]: プライマリ ドメイン名 (
example.comなど) の CNAME レコードのみをフラット化します。[すべての CNAME をフラット化する]: すべてのドメイン名の CNAME レコードをフラット化します。

[OK] をクリックすると、ESA は構成に従って CNAME レコードをフラット化します。
> > [DNS レコード設定]