「AレコードとCNAMEって何が違うの?」「wwwありとwwwなしでどちらをどう設定すればいいの?」という疑問は、サイト担当者でなくても直面しやすい問題です。DNSの設定を間違えるとサイトが表示されなくなるため、基本を押さえておくと安心です。この記事では、AレコードとCNAMEレコードの役割の違いと、場面に応じた使い分けをわかりやすく解説します。
AレコードとCNAMEレコードの役割
まず、2つのレコードの基本的な役割を整理しましょう。
| レコード | 対応内容 | 例 |
|---|---|---|
| Aレコード | ドメイン → IPアドレス | example.com → 203.0.113.1 |
| CNAMEレコード | ドメイン → 別のドメイン名 | www.example.com → example.com |
Aレコード(Address Record) は、ドメイン名とサーバーのIPアドレスを直接ひもづける設定です。「このドメインにアクセスしたら、このIPアドレスのサーバーへ」という案内役です。
CNAMEレコード(Canonical Name Record) は、あるドメイン名を別のドメイン名に向ける設定です。IPアドレスではなくドメイン名に向けるため、参照先のIPアドレスが変わっても自動的に追従してくれます。
ルートドメインにCNAMEを設定できない理由
重要なルールとして、ドメインそのもの(ルートドメイン)にはCNAMEを設定できません。
たとえば example.com 自体にCNAMEを設定することはDNSの仕様上できません。その理由は、ルートドメインにはMXレコード(メールの設定)やNSレコード(ネームサーバーの設定)など、他のレコードと共存する必要があるためです。CNAMEはそれらと同居できないというルールがあります。
そのため、一般的な設定は次のようになります。
example.com→ AレコードでIPアドレスに向けるwww.example.com→ CNAMEレコードでexample.comに向ける
wwwあり・wwwなしの設定
多くのサイトでは、example.com(wwwなし)と www.example.com(wwwあり)の両方が同じサイトを表示するよう設定されています。その場合の典型的な構成は以下のとおりです。
example.com A 203.0.113.1
www.example.com CNAME example.com
www.example.com をCNAMEで example.com に向けておけば、Aレコードのサーバー情報が変わったときも www 側を更新する必要がなく、管理がシンプルになります。
CDN・クラウドサービス接続ではCNAMEを使う
CloudflareやAWSのCloudFront、Fastlyといった**CDN(コンテンツ配信ネットワーク)**や、各種クラウドサービスに接続する際は、CNAMEレコードを指定されることがほとんどです。
たとえば CloudFront の場合、払い出されるエンドポイントは xxxxx.cloudfront.net のようなドメイン名です。このドメインのIPアドレスはAWSの都合で変わることがあるため、固定のIPアドレスが提供されません。そのため
www.example.com CNAME xxxxx.cloudfront.net
のようにCNAMEで接続する形が推奨されます。CNAMEなら参照先のIPが変わっても自動追従できるからです。
なお、ルートドメインをCDNに向けたい場合は、一部のDNSサービス(CloudflareのALIASレコードや、Route 53のALIASレコードなど)が独自の拡張機能を提供しています。
設定時の注意点
- TTL(Time to Live)の値に注意する:レコードを変更する前にTTLを短くしておくと、変更後の反映が速くなります。通常は300〜3600秒程度に設定されていますが、変更予定がある場合は事前に短縮しておきましょう。
- CNAMEの連鎖は最小限に:CNAMEがさらに別のCNAMEを参照する「CNAME連鎖」は避けるのが原則です。参照回数が増えるほど応答が遅くなります。
- サブドメインとルートドメインを混同しない:
sub.example.comはサブドメインでCNAME可、example.comはルートドメインでCNAME不可という区別をしっかり覚えておきましょう。
DNSレコード全体の種類や役割については DNSレコードの種類(A・CNAME・MX・TXT)をわかりやすく解説 で詳しくまとめていますので、あわせてご参照ください。
まとめ
- Aレコード:ドメイン → IPアドレスに直接対応させる。ルートドメインにはAレコードを使う
- CNAMEレコード:ドメイン → 別のドメイン名に対応させる。wwwサブドメインやCDN接続に向く
- ルートドメインにCNAMEを設定することはDNSの仕様上できない
- CDN・クラウドサービスへの接続はCNAMEを使うケースが多い
- 変更前にTTLを短くしておくと反映がスムーズになる
DNS設定の変更は、間違えるとサイト表示に影響することがあります。Web Gear では新潟の事業者様のDNS設定確認・変更作業をサポートしております。「設定が合っているか不安」という場合もお気軽にご相談ください。