DNS CNAMEレコードとは?用途、設定、制限事項

by

最終更新日:
8 読了時間:約8分
DNS CNAMEレコードとは?用途、設定、制限事項

主なポイント

  1. CNAMEレコードはドメインエイリアスとして機能し、あるドメインまたはサブドメインをIPアドレスに直接ではなく、別の正規ドメイン名に指定します。
  2. CNAMEレコードはルートドメインでは使用できず、同じホスト名でA、AAAA、MXのような他のDNSレコードタイプと共存することはできません。
  3. CNAMEレコードは、複数のドメインをメインサイトにリダイレクトしたり、CDNと統合したり、顧客や異なるサービスのサブドメインを管理したりといった柔軟なユースケースを可能にします。
  4. CNAMEやその他のDNSレコードを適切に実装することは、ドメインの機能を維持し、電子メール認証やセキュリティなどの重要なサービスをサポートするために非常に重要です。

組織のITやセキュリティを管理している方、あるいはMSPとして複数のクライアントドメインを担当している方にとって、安全で信頼性の高いメールおよびWeb運用を実現するには、CNAMEレコードを理解することが不可欠です。CNAMEの設定ミスは、メールの配信失敗を招くだけでなく、ビジネスをセキュリティ上の脅威やコンプライアンス上のリスクにさらすことにもつながります。 しかし、アクセスするすべてのドメインや送信するすべてのメールの背後には、複雑な DNSレコード が、バックグラウンドで静かに稼働しています。

中でも、最も誤解されがちなのがCNAMEレコードです。 PowerDMARCのドメインおよびメールセキュリティの専門家として、私は不適切なCNAME設定が組織をフィッシングやなりすまし攻撃の危険にさらす様子を数多く目にしてきました。この記事では、こうしたリスクを回避し、組織の評判を守るための実証済みの戦略をご紹介します。

CNAMEレコードとは何ですか?

CNAME(Canonical Name)レコードは、 DNSサーバー 内のエントリの一種であり、あるドメイン名を別のドメイン名に紐づけるものです。これはエイリアスのように機能し、同じウェブサイトやサーバーに対して異なる名前を使用できるようにします。IPアドレスやコンテンツを保持するのではなく、単に一方の名前をもう一方にリダイレクトするだけです。これにより、すべて同じ場所を指す複数の名前を持つことが可能になります。

例えば、www.webiste.com をwebsite.comを指すCNAMEとして設定し、両方のアドレスが同じウェブサイトにつながるようにすることができます。別の例としては、mailhost.website.comのCNAMEとしてmail.website.comを使うことで、電子メールサービスを効率的に管理することができます。

CNAMEレコードを使用すると、複数のドメイン名の宛先を一元管理できるため、ドメイン管理が簡素化されます。この柔軟性により、更新作業が容易になり、コンテンツ配信ネットワーク(CDN)などのサービスとのシームレスな連携が可能になり、サブドメインの一貫した管理が実現します。コンプライアンス要件の対象となる組織にとって、適切なCNAME設定は、電子メール認証プロトコルの維持やセキュリティ上の脆弱性の防止に不可欠です。

PowerDMARCでセキュリティを簡素化!

 

CNAMEレコードの仕組み

CNAMEレコードはIPアドレスを直接指すのではなく、別のドメイン名(カノニカルネーム)を指す。

たとえば、www.blog.mydomain.com に対して mydomain.com を指す CNAME レコードを作成した場合、www.blog.mydomain.com に対する DNS 検索では、まず CNAME が mydomain.com に解決されます。その後、DNS は A レコード(IPv4 アドレスに対応する)または AAAAレコード (IPv6アドレスに対応)に到達するまで解決を続け、実際のIPアドレスを返します。

要約すると: CNAME → 正規名 → Aレコード(IPv4)またはAAAAレコード(IPv6) → IPアドレス

*注ホストのIPアドレスが変更された場合、ルートドメインのDNS Aレコードを更新することだけが必要です。エイリアスまたはサブドメインのものを含むすべてのCNAMEレコードは、ルートに変更が加えられたときに自動的に変更されます。以下の表を参照すると、より理解が深まります。

(サブ)ドメイン / ホスト名レコードタイプターゲット/デスティネーション
mydomain.comA333.444.555.111
www.blog.mydomain.comCNAMEmydomain.com
ftp.mydomain.comCNAMEmydomain.com
mail.mydomain.comCNAMEmydomain.com

DNSでCNAMEレコードを検索する方法

DNSの問題のトラブルシューティングや設定の確認を行うには、CNAMEレコードの確認が不可欠です。最も効果的な方法は以下の通りです:

コマンドラインツールの使用

nslookup コマンド:

nslookup -q=cname www.example.com

dig コマンド(Linux/Mac):

www.example.com の CNAME を検索

オンラインツールの活用

コマンドラインへのアクセスなしで迅速な確認が必要なIT管理者やMSPにとって、WebベースのDNS検索ツールは即座に結果を提供します。PowerDMARCの無料CNAMEチェッカーツールは、包括的な検証とセキュリティ分析を提供します。

トラブルシューティングのヒント

  • CNAMEレコードが見つからない場合、そのドメインでは代わりにAレコードが使用されている可能性があります
  • 最近設定を変更した場合は、DNSの反映状況を確認してください(最大48時間かかる場合があります)
  • 正しいサブドメイン(www 付きか、www なしか)を確認してください

DNSのCNAMEレコードの主な利用方法

CNAMEレコードは、エイリアス(入力した名前)をカノニカル名(実際の宛先)にリンクします。一般的な使い方は以下の通りです:

  • 複数のドメインを1つのウェブサイトに誘導するCNAMEレコードを使用して、同じ組織が所有する複数のドメインをメインウェブサイトにリダイレクトする。
  • 異なるサービスを同じ親ドメインに紐付ける:CNAMEレコードを使用して、メールや FTP などのサービスをプライマリドメインにマッピングします。
  • 顧客向けのサブドメインの作成:各顧客のルートドメインを指すセルフサービス型サブドメイン(例:customer.provider.com)を設定します。複数のクライアントドメインを管理するMSPにとって、このアプローチによりサブドメインの管理が効率化され、管理上の負担が軽減されます。
  • 国別サイトをメインドメインにルーティングする:CNAMEレコードを使用して、サイトのさまざまな国バージョンからの訪問者をメインウェブサイトに戻す。
  • コンテンツ配信ネットワーク(CDN)の設定: CDNCDNのアドレスをCNAMEレコードとして追加し、ユーザーが自動的にCDNにリダイレクトされるようにします。その後、CDNがウェブサイトのコンテンツを配信します。

一般的なユースケースにおけるCNAMEレコードの例

以下は、さまざまなビジネスシナリオにおける実用的なDNS CNAMEレコードの例です:

ユースケースCNAMEレコードポイントビジネス上のメリット
ウェブサイトのエイリアス設定www.company.comcompany.com統一されたブランディング
CDNの統合cdn.company.comd123456.cloudfront.netコンテンツ配信の高速化
SaaSのサブドメインclient1.saas.comapp.saas.comクライアント向けカスタムブランディング
メールサービスmail.company.commailserver.company.comメール設定の簡略化
APIエンドポイントapi.company.comapi-gateway.company.com柔軟なAPI管理

DNSでCNAMEレコードを追加または作成する方法

以下の簡単な手順に従って、ドメインにCNAMEレコードを作成してください:

  1. DNS管理コンソールにログインしてください
    通常、これはドメイン登録業者のダッシュボードやウェブホスティングのコントロールパネル内にあります。
  2. 新しいレコードを追加する
    「レコードの追加」をクリックし、レコードタイプのリストから「CNAME」を選択します。
  3. 名前(エイリアス)を入力してください
    別の場所を指すようにしたいサブドメインまたはホスト名(例:www や blog)を入力してください。
  4. 正規名(ターゲット)を入力してください
    このエイリアスが指すようにしたい完全なドメイン名を入力してください(例:website.com)。
  5. TTLの設定
    これは、レコードがキャッシュされる期間をコントロールします。
    • 静的IPアドレスの場合は、1800秒(30分)以上を使用する。
    • 動的IPアドレスの場合は、1800秒以下を使用する。
  6. レコードを保存する
    「保存」または「作成」をクリックして、新しいCNAMEレコードをDNSに追加してください。

CNAMEレコードの変更または更新方法

既存のCNAMEレコードを変更するには:

  1. DNS管理コンソールにアクセスする
  2. 変更したい既存のCNAMEレコードを探してください
  3. レコードの横にある「編集」または鉛筆アイコンをクリックしてください
  4. 「ターゲット/宛先」フィールドを新しい正規名で更新してください
  5. 変更を保存し、DNSの反映を待ちます(通常1~48時間かかります)。

推奨事項: 更新が完了したとみなす前に、必ずDNS検索ツールを使用して変更内容を確認してください。

すでにCNAMEレコードをお持ちですか? PowerDMARCの無料CNAMEレコードチェッカーツールを使用して、正しく設定されており、期待通りに解決されているか確認してください。

CNAMEレコードのDNS処理プロセス

powerdmarc.comを例にしてCNAMEレコードがどのように機能するかを説明しましょう。この場合、ドメイン www.powerdmarc.comを指すCNAMEとして設定されています。 powerdmarc.comを指すCNAMEとして設定されています。

名前タイプ価値
www.powerdmarc.comCNAMEパワードマーク・ドット・コム
パワードマーク・ドット・コムA172.66.43.156

ここでは、DNS解決プロセスがどのように行われるかを順を追って説明します:

  1. DNSクライアントは、 www.powerdmarc.com
    これは、ドメイン名をIPアドレスに変換するための最初のリクエストです。
  2. DNSリゾルバーは、 powerdmarc.com
    リゾルバーは、そのドメインのDNSレコードを保持しているネームサーバーを確認します。
  3. リゾルバーは、 www.powerdmarc.com
    その結果、www.powerdmarc.com が powerdmarc.comを指すエイリアスであることを確認します。
  4. DNSクライアントはCNAMEを特定し、 powerdmarc.com
    これはエイリアスであるため、クライアントは次に powerdmarc.comの実際のDNSレコードを要求しますの実際のDNSレコードを要求します。
  5. DNSリゾルバーは、 powerdmarc.com
    このレコードには、IPv4アドレス 172.66.43.156が含まれています。
  6. DNSクライアントは、IPアドレスを使用してウェブサイトに接続します
    処理が完了し、クライアントはサーバーへの接続に成功しました。

このプロセスは、CNAMEレコードがどのようにトラフィックをAレコードに導き、最終的に接続を確立するために必要なIPアドレスを提供するかを示しています。

AレコードとCNAMEレコードの使い分け

AレコードとCNAMEレコードのどちらを選ぶかは、具体的な利用シーンや技術的な要件によって異なります:

Aレコードを使用するタイミング:

  • ルートドメイン(example.com)の設定
  • サーバーの正確なIPアドレスをご存知ですね
  • 可能な限り高速なDNS解決が必要です
  • IPアドレスが変わることはめったにありません

CNAMEレコードを使用するタイミング:

  • サブドメインの設定(www.example.com、blog.example.com)
  • 複数のレコードを更新することなく、宛先を変更できる柔軟性が欲しい
  • サードパーティ製サービス(CDN、メールプロバイダー)との連携
  • 同じ宛先を指す複数のエイリアスの管理

ITマネージャーのための意思決定フレームワーク

シナリオおすすめのレコード理由
ルートドメインの設定記録ルートレベルではCNAMEは使用できません
CDNの統合CNAMECDNのエンドポイントは頻繁に変更されます
メールサーバーA Record + MXMXレコードはCNAMEを指すことはできません

レコードとCNAME:主な違いと使用例

DNSレコードにはさまざまな用途があります。CNAMEレコードとA、AAAA、ALIAS、TXTレコードのそれぞれをいつ使用すべきかを理解することで、よくあるミスを防ぎ、ドメインが正しく機能するようにすることができます。

レコードタイプ目的使用タイミングルートで利用できますか?
記録ドメインをIPv4アドレスに変換する直接IPマッピング、ルートドメイン✅ はいexample.com → 192.0.2.1
CNAMEドメインエイリアスを作成しますサブドメイン、柔軟なリダイレクト❌ いいえwww.example.com → example.com
AAAAレコードドメインをIPv6アドレスに変換するIPv6ネットワーク✅ はいexample.com → 2001:db8::1
ALIASレコードルートでのCNAMEと同様の動作ルートドメインのエイリアス設定✅ はいexample.com → target.com
TXTレコードテキストデータを保存しますメールのセキュリティ、認証✅ はいSPF、DKIM、DMARCレコード

なぜCNAMEはA、AAAA、MXレコードと共存できないのですか?

CNAMEレコードはドメイン名のアイデンティティを完全に引き継ぎます。つまり

  • もし website.comに対してCNAMEレコードを作成した場合、 example.comに対してA、AAAA、またはMXレコードを作成することはできません。これらは競合するためです
  • CNAMEレコードは通常、サブドメイン(例: www.website.comなど)に使用され、ルートドメイン(website.com)には使用されません

ルートレベルでのエイリアシングが必要な場合は、代わりにALIASまたはANAMEレコードを使用します。

簡単な経験則だ:

  • IPアドレスをお持ちの場合は、A/AAAをお使いください。
  • サブドメインのリダイレクトにCNAMEを使用します。
  • ルートドメインでのリダイレクトが必要な場合は、ALIAS/ANAMEを使用します。
  • テキストベースの目的にはTXTを使用します(リダイレクトではありません)

CNAMEレコードの制限

CNAMEレコードはあるドメイン名を別のドメイン名に指定するのに便利ですが、設定ミスを避けるために理解しておくべき重要な制限があります:

  • CNAMEレコードはルートドメイン(ゾーン頂点)では使用できない:ルートドメインはしばしばA、AAAA、MXレコードのようなCNAMEと共存できない他の必須レコードを必要とする。
    • ベストプラクティス: 多くのDNSプロバイダーが提供するALIASまたはANAMEレコードを回避策として利用し、DNSのルールを違反することなく、ルートレベルで同様のエイリアス設定を実現します。
  • CNAMEレコードは同じDNSレベルで他のレコードタイプと共存することはできません:もし www.website.comまた、www.website.com、A、AAAA、MX、またはTXTレコードを持つことはできません。
    • ベストプラクティス: CNAMEレコードを作成する前に、そのホスト名に対して競合するレコードが存在しないことを確認してください。
  • CNAMEレコードは余分なDNS検索を追加する:DNSリゾルバは最初にカノニカル名を解決しなければならないので、CNAMEレコードは検索時間をわずかに増加させる可能性があります。
    • ベストプラクティス: CNAMEレコードは慎重に使用し、解決の遅延を最小限に抑えるため、CNAMEの長い連鎖は避けてください。

ドメイン名の構成とCNAMEレコード

ドメイン階層を理解することは、CNAMEを適切に実装するために不可欠です:

  • ルートドメイン(ゾーンのルート): example.com – CNAMEは使用できません
  • サブドメイン: www.example.com – CNAMEを使用可能
  • 第3レベルサブドメイン: blog.www.example.com – CNAMEを使用可能

この制限が存在するのは、ルートドメインが、CNAMEレコードと共存できないMX(電子メール)レコードやNS(ネームサーバー)レコードといった必須のレコードをサポートする必要があるためです。

なぜPowerDMARCなのか?

一般的なDNSツールとは異なり、PowerDMARCは現代の組織向けに設計された、セキュリティ、分析、コンプライアンスの統合ソリューションを提供します。当社のプラットフォームは、CNAMEおよびDNSレコードの検証を自動化し、多大なコストを招く設定ミスを未然に防ぎ、世界中のフォーチュン500企業から信頼を得ています。

PowerDMARCの特長とは?

無料のDNSツールPowerDMARC エンタープライズ・プラットフォーム
基本的なDNS検索包括的なセキュリティ分析
手動監視自動監視とアラート
コンプライアンス対応なしSOC2/ISO27001認証取得プラットフォーム
サポートは限定的です24時間365日の専門サポートと連携機能

フォーチュン500企業から信頼されています: 当社のプラットフォームは、主要なMSP、SIEM、コンプライアンスソリューションとシームレスに連携し、組織のセキュリティリスクを最大80%削減します。

CNAMEレコードの実践

CNAMEレコードは柔軟なドメインエイリアスを可能にし、複数のドメイン名が単一のリソースを指す方法を簡素化することで、DNSとドメイン管理において重要な役割を果たします。ウェブサイトの管理を合理化し、サブドメインをサポートし、コンテンツ配信ネットワークのような統合を可能にします。

CNAMEレコードを正しく使用することで、クリーンで効率的なDNSセットアップが可能になり、セキュリティを重視する組織にとって重要なメール認証プロトコルなどの重要なサービスをサポートすることができます。

ドメインセキュリティのリーダーとして、当社は、DNS設定が効果的かつ安全であることを確実にするため、時間をかけてCNAMEやその他のDNSレコードを適切に設定することをお勧めします。数百の組織との実績に基づき、適切なDNS設定は、メールの配信率を維持し、セキュリティ上の脆弱性を防ぐための基本となります。 DNSやメールセキュリティに関する理解を深めたり、より自信を持って管理を行いたいとお考えの方は、PowerDMARCが提供する各種DNSおよびDMARCツールやガイドをご活用ください。 今すぐ、お客様専用のDNSヘルスアセスメントを

よくあるご質問

CNAME設定の主な利点は何ですか?

これにより、複数のドメイン名またはサブドメインを単一の正規ドメインに向けることができ、DNS管理が簡素化されます。

CNAMEがある場合、Aレコードは必要ですか?

はい、CNAMEは実際のIPアドレスを提供するA(またはAAAA)レコードを持つ必要がある別のドメインを指すからです。

CNAMEは複数のレコードを持つことができますか?

いいえ、CNAMEレコードは1つの正規ドメイン名のみを指すことができ、複数の値を持つことはできません。

CNAMEレコードはどこで確認できますか?

CNAMEレコードは、DNS管理コンソール(通常はドメイン登録業者のダッシュボード内)で確認できるほか、nslookupやdigなどのコマンドラインツール、あるいはオンラインのDNS検索ツールを使用して確認することもできます。

サブドメインにはAレコードとCNAMEのどちらを使うべきですか?

複数のレコードを更新せずに宛先を変更できる柔軟性を求める場合は、サブドメインにCNAMEレコードを使用してください。IPアドレスへの直接マッピングが必要な場合や、サブドメインに他のレコードタイプ(メール用のMXレコードなど)が必要な場合は、Aレコードを使用してください。