Route 53 で SMTP サーバーの MX レコードを作成した後、サーバーがメールを受信できないのはなぜですか?
Amazon Route 53 で Simple Mail Transfer Protocol (SMTP) サーバーのメールエクスチェンジャー (MX) レコードを作成しました。現在、サーバーは E メールを受信できません。
簡単な説明
Route 53 DNS サービス用に設定したパブリックホストゾーンが正しく設定されていない場合、クライアントは SMTP サーバーに接続できません。次のことを確認してください。
- パブリックホストゾーンに適切なリソースレコードセットが設定されていること。
- AWS 以外のドメイン名レジストラが、Route 53 パブリックホストゾーンのネームサーバーをポイントしていること。
解決方法
注: AWS コマンドラインインターフェイス (AWS CLI) コマンドの実行中にエラーが発生した場合は、最新の AWS CLI バージョンを使用していることを確認してください。
適切なリソースレコードセットを使用していることを確認する
SMTP サーバー用の適切なリソースレコードセットを作成していることを確認します。詳細については、Amazon Route 53 リソースレコードの作成または編集時に指定する値をご参照ください。パブリックホストゾーンには、少なくとも SMTP サーバーの MX レコードが含まれている必要があります。詳細については、シンプルなレコードの値をご参照ください。
AWS 以外のドメイン名レジストラが Route 53 パブリックホストゾーンのネームサーバーをポイントしていることを確認する
2. DNS サービスに Route 53 を使用し、ドメイン登録に別のドメイン名レジストラを使用している場合は、ドメイン名レジストラが Route 53 パブリックホストゾーンのネームサーバーを参照していることを確認します。これを行うには、インターネットベースの whois ユーティリティをクエリして、次の操作を実行します。
- ドメイン名のレジストラを探します。 クエリフィールドにドメイン名を入力し、[Domain] (ドメイン) オプションを選択して、[Submit] (送信) を選択します。クエリ結果には、ドメイン名に対応するドメイン名レジストラと権威ネームサーバーが含まれます。
注: クエリ結果から Route 53 パブリックホストゾーンに関連付けられたネームサーバー以外のネームサーバーのリストが返される場合、SMTP サーバーの DNS クエリは Route 53 に送信されません。ドメイン名レジストラに問い合わせて、ドメイン名に関連付けられたネームサーバーの一覧を更新してください。 - ドメインレジストラの連絡先情報を検索します。 クエリフィールドにレジストラの名前を入力し、[Registrar] (レジストラ) オプションを選択して、[Submit] (送信) を選択します。この情報を使用して、ドメインレジストラにお問い合わせください。ドメインの Route 53 パブリックホストゾーン内のネームサーバーを参照するように、ドメイン名のネームサーバーのリストを更新するようドメインレジストラに依頼してください。
- お客様のドメインのリソースレコードセットが (レジストラのネームサーバーで Time to Live (TTL) が期限切れになる前に) 転送元の DNS サービスによって削除されないようにします。 ドメインネームサーバーレコードの TTL 期間が経過するまで、Route 53 DNS サービスはドメイン名の DNS クエリに応答しません。詳細については、DNS 設定を変更したが、設定が有効になっていないをご参照ください。
DNS MX レコードセットの問題を確認する
1. 次のコマンドを使用して、ドメインの MX レコードが存在することを確認します。
Linux または macOS では次を使用します:
dig <domain name> MX
dig の出力例:
$ dig amazon.com MX ; <<>> DiG 9.11.4-P2-RedHat-9.11.4-26.P2.amzn2.2 <<>> amazon.com MX ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 61726 ;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1 ;; OPT PSEUDOSECTION: ; EDNS: version: 0, flags:; udp: 4096 ;; QUESTION SECTION: ;amazon.com. IN MX ;; ANSWER SECTION: amazon.com. 300 IN MX 5 amazon-smtp.amazon.com. ;; Query time: 1 msec ;; SERVER: 10.10.0.2#53(10.10.0.2) ;; WHEN: Wed Apr 14 06:21:43 UTC 2021 ;; MSG SIZE rcvd: 67
Windows では、次を使用します:
nslookup -type=MX <domain name>
nslookup の出力例:
$ nslookup -type=MX amazon.com Server: 10.10.0.2 Address: 10.10.0.2#53 Non-authoritative answer: amazon.com mail exchanger = 5 amazon-smtp.amazon.com.
2. 次のコマンドを使用して、MX レコードのホスト名を解決できることを確認します。
Linux または macOS では次を使用します:
dig <MX record>
dig の出力例:
$ dig amazon-smtp.amazon.com ; <<>> DiG 9.11.4-P2-RedHat-9.11.4-26.P2.amzn2.2 <<>> amazon-smtp.amazon.com ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 64180 ;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1 ;; OPT PSEUDOSECTION: ; EDNS: version: 0, flags:; udp: 4096 ;; QUESTION SECTION: ;amazon-smtp.amazon.com. IN A ;; ANSWER SECTION: amazon-smtp.amazon.com. 27 IN A 52.94.124.7 ;; Query time: 1 msec ;; SERVER: 10.10.0.2#53(10.10.0.2) ;; WHEN: Wed Apr 14 06:41:18 UTC 2021 ;; MSG SIZE rcvd: 67
Windows では、次を使用します:
nslookup <MX record>
nslookup の出力例:
$ nslookup amazon-smtp.amazon.com Server: 10.10.0.2 Address: 10.10.0.2#53 Non-authoritative answer: Name: amazon-smtp.amazon.com Address: 52.119.213.154
注: 一部の DNS プロバイダーでは、MX レコードセット名の先頭にアットマーク (@) を付ける必要があります。または、ルートドメインの MX レコードセットを作成するときに、プロバイダーから「@」という名前の MX レコードセットを作成することを求められる場合があります。しかし、Route 53 MX レコードセット名の先頭に「@」やその他の記号を付けないでください。Route 53 でルートドメインの MX レコードセットを作成するには、レコードセット名を空白のままにします。その後、Route 53 MX レコードセットの残りのフィールドに適切な値を指定します。
E メールの送受信をテストする
メールサーバーに接続し、SMTP コマンドを使用して E メールを送受信できるかどうかをテストします。
1. 次のコマンドを入力して、Enter キーを押します。
telnet <mail server name or IP> <mail server port number>
注: このコマンドの入力中に入力ミスをした場合は、必ず Enter キーを押してください。この場合に Backspace キーまたは Delete キーを押しても機能しません。Enter キーを押した後、コマンドを再入力します。場合によっては、telnet セッションを閉じて再接続する必要があります。
2. 次のコマンドを入力して、Enter キーを押します。
EHLO <YOUR MAIL SERVER FULLY QUALIFIED DOMAIN NAME>
3. 次のコマンドを入力して、Enter キーを押します。
mail from: <your_name@yourdomainname>
サーバーは「250 OK」と応答します。
4. 次のコマンドを入力して、Enter キーを押します。
rcpt to: <recipient@yourdomainname>
注: 送信者と受信者は同じメールアドレスを持つことができます。
サーバーは「250 Accepted」(250 受け入れ済み) で応答します。
重要: サーバーが送信者や受信者などの情報を検証できる場合、メッセージは受け入れられたことが確認されます。
5. 次のコマンドを入力して、Enter キーを押します。
data
6. 次のコマンドを入力して、Enter キーを押します。
Subject: <specify subject here>
7. 次のコマンドを入力して、Enter キーを押します。
<specify your message here>
8. 次のコマンドを入力して、Enter キーを押します。
.
メッセージは配信のために受け入れられます。サーバーは「250 OK」と応答します。これは、E メールが送信されたことを示します。
9. MX レコードが正しく設定されているにもかかわらず、SMTP サーバーが E メールを受信できない場合は、E メールのサービスプロバイダーにお問い合わせください。

関連するコンテンツ
- 質問済み 5年前lg...
- 質問済み 5年前lg...
- 質問済み 4年前lg...
- 質問済み 6ヶ月前lg...
- AWS公式更新しました 10ヶ月前
- AWS公式更新しました 1年前