Amazon Route 53 に CNAME レコードを作成しようとするとエラーが発生します。
解決方法
エラー: InvalidChangeBatch 400: DNS 名が example.com. の CNAME タイプの RRSet は example.com ゾーンの apex では許可されていません
上記のエラーは、example.com などの Apex ドメインの CNAME レコードを作成するときに発生します。
DNS プロトコルでは、DNS 名前空間の最上位ノード (zone apex) の CNAME レコードを作成することはできません。たとえば、DNS 名 example.com を登録した場合、zone apex は example.com になります。example.com には CNAME レコードを作成することはできません。ただし、www.example.com、newproduct.example.com などの CNAME レコードを作成することはできます。
このエラーを回避するには、Apex ドメインのエイリアスレコードを作成してください。レコードは、Amazon CloudFront ディストリビューション、ロードバランサー、同じホストゾーン内の別のレコードなどのリソースを指すことができます。
**注:**ホストゾーン (zone apex) と同じ名前のエイリアスレコードは、トラフィックを CNAME レコードにルーティングできません。
詳細については、「AWS でホストしているサービスのエイリアスレコードを作成するにはどうすればよいですか?」を参照してください。
エラー: InvalidChangeBatch 400: DNS 名が test.example.com. の CNAME タイプの RRSet 、ゾーン内の同じ DNS 名を持つ他のレコードと競合するため許可されません
CNAME レコードは他のデータと共存できません。サブドメイン名の CNAME レコードセットには、そのサブドメインの MX レコード、A レコード、または TXT レコードを含めることはできません。逆に、サブドメインの MX レコードがある場合、そのサブドメインの CNAME レコードを持つことはできません。
この制限を回避するには、競合している DNS レコードが使用されていない場合は削除してください。または、サブドメインを CloudFront ディストリビューションなどのリソースに向ける A エイリアスレコードを作成してください。サブドメインの例としては、test.example.com があります。
エラー: Bad request.(InvalidChangeBatch 400: DomainLabelTooLong (ドメインラベルが長すぎる) 'org/services-and-resources/resources/classes-events/trauma-nurse'' で発生、Unparseable CNAME が発生)
ドメイン名は、ドットで区切られた一連のラベルで構成されます。各ラベルの長さは最大63バイトです。ドメイン名の合計長は、ドットを含めて 255 バイトを超えることはできません。Route 53 は任意の有効なドメイン名をサポートします。
エラー: 同じ CNAME レコードに対して値が異なる CNAME レコードは作成できません
前述のエラーを避けるため、CNAME レコードを作成する際には次のパラメータに注意してください。
- CNAME レコードには値を 1 つだけ含める必要があります。
- CNAME レコードは別のドメイン名を指している必要があり、IP アドレスは指定しないでください。