RRSet of type CNAME with DNS name foo.com. is not permitted at apex in zone bar.com Ask Question

RRSet of type CNAME with DNS name foo.com. is not permitted at apex in zone bar.com Ask Question

私はfoo.comと を所有していますbar.com。両方を Route53 で管理しています。 がfoo.com私のサイトをホストしており、 からのトラフィックを に誘導したいと考えていますbar.com。を指すレコードfoo.comを設定しようとしましたが、次のエラー メッセージが表示されました:CNAMEbar.comfoo.com

RRSet of type CNAME with DNS name foo.com. is not permitted at apex in zone bar.com.

なぜこれが機能しないのでしょうか、代わりに何ができるのでしょうか?

ベストアンサー1

RFC1912 セクション 2.4 によると:

 A CNAME record is not allowed to coexist with any other data.  In
 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!:

           podunk.xx.      IN      NS      ns1
                           IN      NS      ns2
                           IN      CNAME   mary
           mary            IN      A

ネームサーバーは CNAME に従う必要があるのか​​、それとも CNAME が重複している実際のレコードで応答する必要があるのか​​を知らないため、RFC は完全に理にかなっています。bar.comはゾーンであるため、bar.com名前の SOA レコードが暗黙的に存在します。同じ名前で SOA レコードと CNAME の両方を持つことはできません。

ただし、SOA レコードは一般にゾーンのメンテナンスにのみ使用されるため、ゾーンの頂点に CNAME を提供したい状況はよくあります。RFC では禁止されていますが、多くのエンジニアは「クエリで明示的に SOA レコードが要求されない限り、CNAME に従う」などの動作を望んでいます。そのため、Route 53 は を提供していますalias records。これらは、必要な機能を正確に提供する Route 53 固有の機能です。http://docs.aws.amazon.com/Route53/latest/DeveloperGuide/CreatingAliasRRSets.html

おすすめ記事