最終更新日付: 2021年1月22日
webサーバーのURLを見ていますと、
- wwwありのURLと
- wwwなしのURL
が存在します。
例えば、このサイトを例にとりますと、
- www.putise.comと
- putise.com
の二つのURLです。
wwwなしの「putise.com」でドメインのレコード登録したい時、CNAMEは使えるのでしょうか?
レジュメ
wwwなしのホスト名が付かないのドメイン名レコード「ネイキッドドメイン」
例えば、このblog.putise.comのサイトのドメインは、putise.comです。
このホスト名が付かないputise.comのレコードの事を
- 「ネイキッドドメイン」とか
- 「APEXドメイン(エイペックスドメイン)」
と言います。
ネイキッドは、英語で「naked」で「裸の」とか「むき出しの」という意味で、
エイペックスは、英語で「APEX」で「頂点」という意味です。
両方とも、英語が言わんとしている意味はわからなくは無いですね。
結論、注意!wwwなしのDNSレコードにCNAMEは登録は出来ない。
これは注意点です。
ネイキッドドメインのレコードとして、CNAMEは登録できません。
なぜネイキッドドメインにCNAMEは登録できないのか?RFC1912
ネイキッドドメインのレコードには、通常
- NSレコードや
- MXレコード
が存在しますが、
実は、RFCで「CNAMEレコードは、他のレコードと共存設定できない」という仕様が定義されているためです。
2.4 CNAME records
A CNAME record is not allowed to coexist with any other data. In
RFC 1912 - Common DNS Operational and Configuration Errors
other words, if suzy.podunk.xx is an alias for sue.podunk.xx, you
can't also have an MX record for suzy.podunk.edu, or an A record, or
even a TXT record. Especially do not try to combine CNAMEs and NS
records like this!
つまり、
- putise.com でCNAMEレコードを登録すると
- putise.comでNXレコードを登録できなくなる
ということになりますので、
逆をいいますとネイキッドドメインでのCNAMEレコードは許可されない(NSレコードやMXレコードが登録できなくなるから)ということです。
ネイキッドドメインのDNSレコードを登録するには?
ネイキッドドメインURLのwebサーバーは世の中にたくさんあります。
むしろ、URLの文字数が少なくなるので、ネイキッドドメインのwebサーバーの方が世の中には多い印象です。
ネイキッドドメインのwebサーバーを使用するには、DNSレコードとしてどのように登録すれば良いかといいますと、
ネイキッドドメインはAレコードでのIPアドレス登録
になります。
これなら、どんなドメインサービス(例えば、お名前.comとか)でも、たいていは設定可能です。
また、CNAME Flattening(Alias)機能つきDNSサービスというサービスを提供している会社も中にはあるそうです。
これは、RFC的にはNGですが、実際ネイキッドドメインにCNAMEのように登録でき、それでいてNSレコードやMXレコードと共存できる(DNSクライアント側にはAレコードのようにふるまう)ことが出来る機能です。
参考までに、AWSでは
AWSとかのELBやCloudFrontをwebサーバーとして使いたい場合は、
通常独自ドメインのDNSレコードはCNAMEで登録しなければならないので、AWS webサーバー環境でネイキッドドメインを使用したい場合はほとんどの場合はDNSサービスとしてRoute53を使用しないとならなくなります。
※ お名前.comとかですと、ネイキッドドメインにIPアドレス指定しなければならなくなるの、CNAME登録できないとAWSの冗長性や利便性が失われてしまうためです。