CNAMEレコードとエイリアス・レコードの主な違いは、結果(どちらも別のDNSレコードを指す点)ではなく、問い合わせ時にターゲットのDNSレコードをどのように解決するかにあります。この違いにより、一方はゾーンの頂点(example.comといったネイキッド・ドメインなど)で安全に使用できますが、もう一方は使用できません。
まず、CNAMEレコード・タイプから見ていきましょう。CNAMEレコードは、www.example.comなどのDNS名にlb.example.netといった別のDNS名を付けるだけです。これにより、リゾルバーは、すべてのDNSタイプ(A、AAAA、MX、NS、SOAなど)に対して、参照名で回答を検索するよう指示されます。そこで、ターゲット(lb.example.net)を解決するには、DNSの参照を1回以上追加する必要があるため、性能が低下します。いずれのレコードに対しても再帰リゾルバーが問い合わせを行ったことがない場合、次のように、両レコードに対してDNS階層全体をたどる可能性があるため、時間面でさらにコストがかかります。
これらの各ステップは少なくとも数ミリ秒かかりますが、ネットワークの状態によってはそれ以上かかる場合もあります。これにより、DNSクライアントがIPアドレスの実行可能な最終回答を待つのにかなり時間がかかる可能性があります。
エイリアス・レコードの場合も、CNAMEと全く同じアクションが取られます。ただし、example.comの権威サーバーは、ステップ6から13を実行し、最終回答をIPv4およびIPv6アドレスとして返します。これには、次のような2つのメリットと1つの重大なデメリットがあります。
ほとんどの場合、example.comの権威サーバーは回答をキャッシュすることになるため、非常に迅速に回答を返すことができます。
エイリアス応答はAレコードとAAAAレコードになります。エイリアス・レコードは、1つ以上のIPアドレスを含む回答を返すため、ゾーンの頂点など、AレコードまたはAAAAレコードを使用できる場所であればどこでも使用できます。これにより、ゾーンの頂点では使用できないCNAMEよりも柔軟性が高まります。エイリアス・レコードの柔軟性は、ユーザーがexample.comなどのネイキッド・ドメインを介してアクセスできるようにするためにCNAMEレコードを使用する必要がある、最も一般的なCDNの一部にサイトが掲載されている場合に必要です。
lb.example.netについてのクエリーを発行しているのはexample.comの権威サーバーであるため、その場合、lb.example.netレコード上のインテリジェントなルーティング機能は、DNSクライアントの場所ではなく、権威サーバーの場所に基づいて動作します。EDNS0 edns-client-subnetオプションはここでは適用されません。これは、DNSクライアントが誤ってルーティングされる可能性があることを意味します。例えば、DNSクライアントがニューヨークにあるのに、example.comの権威サーバーがカリフォルニアにある場合、lb.example.comはDNSクライアントがカリフォルニアにあると考えて回答を返します。これはニューヨークのDNSクライアントにとって明らかに最適とは言えません。ただし、グローバルPoPを持つDNSプロバイダーを使用している場合は、権威DNSサーバーがDNSクライアントの地域に配置される可能性が高いため、この問題は軽減されます。
注意すべき重要な点は、NS1は、CNAMEレコードがすべてNS1システム内にある場合に、これらのレコードをフラット化するということです。NS1のネームサーバーは、CNAMEとターゲット・レコードの両方に対して権威を持っています。フラット化とは単に、NS1のネームサーバーが、CNAMEから最終回答までの一連のレコードをすべて、1回の応答で返すことを意味します。これにより、追加の参照手順がすべて排除され、ネスト化された構成であっても、パフォーマンスを低下させることなくCNAMEレコードを使用することができます。
さらに良いことに、NS1はリンク・レコードと呼ばれる独自のレコード・タイプに対応しています。これは基本的に、サブマイクロ秒の解決速度を除いて、エイリアス・レコードとして機能するプラットフォーム内のシンボリック・リンクです。リンク・レコードを使用するには、通常どおりにターゲット・レコードを作成し(どのタイプでも構いません)、次にそのレコードを示す別のレコードを作成して、リンク・レコード・オプションを選択するだけです。リンク・レコードは、NS1内のドメイン(ゾーン)の境界やアカウントの境界を越えることができ、DNSレコード構造を整理して最適化する強力な方法を提供することに注意してください。
CNAME | エイリアス | リンク・レコード | |
頂点での使用 | いいえ | はい | 可能(他のNS1ゾーンのみ) |
相対速度(TTFB) | 迅速 | 迅速化: | 迅速化: |
フラット化による応答 | 可能(NS1 Connect専用機能) | はい | はい |