背景
- AWS上で新たにウェブサービスを構築することになった
- 利用するドメインは XServer で既に運用しているドメインを利用する
- CloudFront を使うので、Certificate Manager で証明書を発行する
- 自動更新したいのでドメイン認証を利用して、ドメインを設定しようとした
- ドメインを設定しようとすると
「内容」の記述に誤りがあります。
とバリデーションに失敗してレコードが登録できない
解決策
内容の先頭にあるアンダースコア(_)を外して値を登録する。
「 一部の DNS 実装は、CNAMEの値の部分にアンダースコアを記述することができない 」ためとのことです。ちょっと調べたところ、例えば「お名前.com」の DNS サービスではアンダースコアは TXT レコード以外で使用できないような記述がみつかりました。
そもそも、DNS のホスト名部分ではアンダースコアを使うことは、RFC 上推奨されない状態です1。上述したサービス以外にも、アンダースコアを設定できない DNS サービスは少なくはない模様です。
引用元 - https://dev.classmethod.jp/articles/acm-dns-validation-without-underscore/
理由は上記の通りで、XServer のDNSサービスではアンダースコアを設定できないようになっている模様。 あと多いところだと、引用内にもあるが お名前.com の場合も同様。
実際に先頭のアンダースコアを外して登録したところ、正常に登録でき、ドメイン認証も正常にパスできた。