Amazon SES でドメインが「検証待ち」ステータスまたは「失敗」検証ステータスで止まっている場合はどうすればよいですか?
最終更新日: 2020 年 7 月 10 日
Amazon Simple Email Service (Amazon SES) で検証するドメインに指定された名前および値と一致する TXT レコードをドメインの DNS サーバーに追加しました。しかし、Amazon SES の検証ステータスはまだ「検証待ち」であるか、検証ステータスが「失敗」になっています。どうすれば修正できますか?
簡単な説明
Amazon SES ドメイン検証は、次の 1 つ以上の理由により、「検証待ち」または「失敗」の検証ステータスで止まることがあります。
- TXT レコードに追加の文字が含まれているか、文字が欠落しています。
- DNS プロバイダーは、apex ドメインを DNS レコードの末尾に自動的に追加します。
- TXT レコードは委任されたネームサーバーに追加されていません。
レコードにこれらの問題がないことを確認したら、Amazon SES でドメイン検証を再試行できます。
解決方法
TXT レコードに追加の文字が含まれているか、文字が欠落していることを確認する
dig や nslookup などの DNS ツールを使用して TXT レコードをテストします。macOS または Linux オペレーティングシステムでは、dig コマンドを実行します。
注意: _amazonses.example.com を Amazon SES の TXT レコード名に置き換えます。
$ dig TXT _amazonses.example.com +short
Windows オペレーティングシステムで、nslookup コマンドを実行します。
注意: _amazonses.example.com を Amazon SES の TXT レコード名に置き換えます。
C:\>nslookup -type=TXT _amazonses.example.com
dig または nslookup コマンドの出力を確認します。たとえば、次の出力は追加の文字 (スペース) を示しています。
$ dig TXT _amazonses.example.com +short
" 9kFNbWDLzxvzYgPg1lUSTkUudKR1dDtzzCPuWmYhZro= "
別の例として、次の出力は「=」文字がない TXT レコードを示しています。
C:\>nslookup -type=TXT _amazonses.example.com
Server: dns.example.com
Address: 192.168.1.1
Non-authoritative answer:
_amazonses.example.com text = "9kFNbWDLzxvzYgPg1lUSTkUudKR1dDtzzCPuWmYhZro"
TXT レコードを作成するときは、Amazon SES コンソールから直接値をコピーすることをお勧めします。指定された正確な値を含めてください。必要な文字 (「=」など) は除外しないでください。また、スペースなどの追加文字も含めないでください。
DNS プロバイダーが apex ドメインを DNS レコードの末尾に自動的に追加するかどうかを確認する
一部の DNS プロバイダーは、apex ドメインを DNS レコードの末尾に自動的に追加します。たとえば、_amazonses.example.com と入力すると、一部の DNS プロバイダーはレコード名に .example.com を付加し、レコード名を _amazonses.example.com.example.com に変更します。
apex ドメインが DNS レコードで重複しているかどうかを確認するには、apex ドメインが複製された TXT レコードで dig や nslookup などの DNS ツールを実行します。macOS または Linux オペレーティングシステムでは、dig コマンドを実行します。
$ dig TXT _amazonses.example.com.example.com +short
"9kFNbWDLzxvzYgPg1lUSTkUudKR1dDtzzCPuWmYhZro="
Windows オペレーティングシステムで、nslookup コマンドを実行します。
C:\>nslookup -type=TXT _amazonses.example.com.example.com
Server: dns.example.com
Address: 192.168.1.1
Non-authoritative answer:
_amazonses.example.com text = "9kFNbWDLzxvzYgPg1lUSTkUudKR1dDtzzCPuWmYhZro="
コマンドが、お客様が作成した TXT レコードの値を返す場合、DNS プロバイダーは、apex ドメインを DNS レコードの名前フィールドの末尾に追加しています。これを解決するには、TXT レコードを編集し、名前フィールドに入力したテキストから apex ドメインを削除します。たとえば、_amazonses.example.com を _amazonses のみに置き換えます。
委任されたネームサーバーに TXT レコードが追加されていないかどうかを確認する
dig や nslookup などの DNS ツールを使用して、Amazon SES で検証しようとしているドメインの委任されたネームサーバーを取得します。macOS または Linux オペレーティングシステムでは、dig コマンドを実行します。
注意: example.com を、Amazon SES で検証しようとしているドメインに置き換えます。
$ dig -t NS example.com
;; ANSWER SECTION:
example.com. 172800 IN NS ns1.example.com.
example.com. 172800 IN NS ns2.example.com.
example.com. 172800 IN NS ns3.example.com.
Windows オペレーティングシステムで、nslookup コマンドを実行します。
注意: example.com を、Amazon SES で検証しようとしているドメインに置き換えます。
C:\>nslookup -type=NS example.com
Non-authoritative answer:
example.com nameserver = ns3.example.com
example.com nameserver = ns4.example.com
example.com nameserver = ns1.example.com
example.com nameserver = ns2.example.com
次に、TXT レコードを作成した DNS サービスに移動し、ネームサーバーを取得します。たとえば、Amazon Route 53 で TXT レコードを作成した場合は、Route 53 コンソールを開きます。Route 53 コンソールで TXT レコードを表示すると、ネームサーバーが値列に表示されます。
検証するドメインで委任されたネームサーバーが TXT レコードを持つネームサーバーと一致しない場合は、次のいずれかを実行します。
- 委任されたネームサーバーに TXT レコードを追加します。
- TXT レコードを持つネームサーバーを DNS レジストラで新しく委任されたネームサーバーとして設定します。
Amazon SES でドメイン検証を再試行する
レコードの問題を修正したら、Amazon SES でドメイン検証を再試行できます。
ステータスが「検証待ち」になっているときにドメイン検証を再試行するには、以下の手順通りに実行します。
- Amazon SES コンソールを開きます。
- ナビゲーションバーの AWS リージョンセレクターから、ドメインがあるリージョンを選択します。
- ドメイン ID のリストから、「検証待ち」で止まっているドメインを選択します。 次に、[削除] を選択します。
- [ID 削除] ダイアログボックスで、[はい、ID を削除します] を選択します。
- [新しいドメインを検証する] を選択します。次に、「検証待ち」で止まっているドメインを再入力します。
- [このドメインを検証] を選択します。
- ドメインの検証ステータスが「検証済み」に変わるまで待ちます。
ステータスが「失敗」になっているときにドメイン検証を再試行するには、以下の手順通りに実行します。
- Amazon SES コンソールを開きます。
- ナビゲーションバーの AWS リージョンセレクターから、ドメインがあるリージョンを選択します。
- ドメインのリストから、検証ステータスが「失敗」になっているドメインを選択します。
- [再試行] を選択します。
- ドメインの検証ステータスが「検証済み」に変わるまで待ちます。