スキップしてコンテンツを表示

Route 53 で SMTP サーバーの MX レコードを作成したにもかかわらず、サーバーがメールを受信できない原因を教えてください。

所要時間3分
0

Amazon Route 53 でメールエクスチェンジャーレコード (MX レコード) の設定を行い、メールを Simple Mail Transfer Protocol (SMTP) サーバーに転送するようにしましたが、そのサーバーはメールを受信していません。

解決策

パブリックホストゾーンのリソースレコードセットを確認する

Route 53 パブリックホストゾーンには、必要なリソースレコードセットがあることを確認してください。

ドメインレジストラのネームサーバーで Route 53 ネームサーバーを使用する設定を行う

別のドメインレジストラで DNS サービスに Route 53 を使用している場合は、WHOIS ツールでドメイン名をルックアップしてください。結果には、使用しているドメインレジストラおよび、現在の権威ネームサーバーが表示されます。WHOIS の使用方法については、WHOIS のウェブサイトで「WHOIS ドメインルックアップ」を参照してください。

重要: ネームサーバーが Route 53 パブリックホストゾーンのネームサーバーと一致しない場合、SMTP サーバーに対する DNS クエリは Route 53 に送信されません。

ネームサーバーが Route 53 パブリックホストゾーンのネームサーバーと一致しない場合は、次の手順を実行してください。

  1. WHOIS ユーティリティのクエリフィールドにレジストラ名を入力し、[レジストラ] オプションを選択すると、ドメインレジストラの連絡先情報を特定できます。
    次の whois コマンドを実行します。

    whois YOUR_DOMAIN_NAME | grep 'Name Server'

    注: YOUR_DOMAIN_NAME を実際のドメイン名に置き換えてください。

  2. ドメインレジストラにお問い合わせの上、ネームサーバーのリストを更新し、ドメインが Route 53 パブリックホストゾーン内のネームサーバーを参照できるようにしてください。

  3. 以前の DNS サービスが TTL 期間 (有効期間) 中にリソースレコードセットを維持していることを確認します。

Route 53 が DNS クエリに応答するには、ネームサーバーの TTL 期間が失効するまで待機してください。詳細については、「DNS 設定を変更しても反映されない場合」を参照してください。

DNS MX レコードセットに問題がないか確認する

次の Windows、Linux、または macOS コマンドを実行し、ドメインにはメールを SMTP サーバーにルーティングするための MX レコードが存在するかどうかを確認します。

Linux または macOS オペレーティングシステム (OS) 用のコマンド:

dig DOMAIN_NAME MX

出力例:

$ 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 OS 用のコマンド:

nslookup -type=MX DOMAIN_NAME

出力例:

$ nslookup -type=MX amazon.comServer:         10.10.0.2
Address:        10.10.0.2#53

Non-authoritative answer:
amazon.com      mail exchanger = 5 amazon-smtp.amazon.com.

次に、以下の Windows、Linux、または macOS コマンドを実行し、MX レコードのホスト名を解決できることを確認します。

Linux または macOS 用のコマンド:

dig MX_RECORD

出力例:

$ 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 OS 用のコマンド:

nslookup MX_RECORD

出力例:

$ nslookup amazon-smtp.amazon.comServer:         10.10.0.2
Address:        10.10.0.2#53

Non-authoritative answer:
Name:   amazon-smtp.amazon.com
Address: 52.119.213.154

注: Route 53 では MX レコードに対し、他の DNS プロバイダーとは異なる構文を使用します。メールを効果的にルーティングするには、Route 53 でルートドメインの MX レコードを作成する際、レコードセット名を空白のままにしてください。なお、一部の DNS プロバイダーでは MX レコードセット名の前にアットマーク (@) 文字を必要としますが、アットマーク (@) 文字やその他の文字は追加しないでください。

メール配信をテストする

次の手順を実行します。

  1. 次のコマンドを入力してから、Enterキーを押します。

    telnet MAIL_SERVER_NAME_OR_IP MAIL_SERVER_PORT_NUMBER

    注: 実際のものでそれぞれ、MAIL_SERVER_NAME をメールサーバー名に、IP MAIL_SERVER を IP アドレスに、PORT_NUMBER をポート番号に置き換えてください。入力ミスをした場合は、Enter を押してコマンドを再実行してください。Enter キーを押してもコマンドが機能しない場合は、Telnet セッションを閉じて再接続してください。

  2. 次のコマンドを入力してから、Enterキーを押します。

    EHLO YOUR_MAIL_SERVER_FULLY_QUALIFIED_DOMAIN_NAME
    

    注: YOUR_MAIL_SERVER_FULLY_QUALIFIED_DOMAIN_NAME をメールサーバーのドメイン名に置き換えてください。

  3. 次のコマンドを入力してから、Enterキーを押します。

    mail from: your_name@yourdomainname

    注: your_name@yourdomainname を実際のメールアドレスに置き換えてください。
    サーバーは 250 OK で応答します。

  4. 次のコマンドを入力してから、Enterキーを押します。

    rcpt to: recipient@yourdomainname

    注: recipient@yourdomainmame を受信者のメールアドレスに置き換えてください。送信者と受信者は同じ電子メールアドレスを使用できます。

    重要: サーバーにより、送信者と受信者の電子メールアドレスが検証されると、サーバーは 250 Accepted で応答します。

  5. 次のコマンドを入力してから、Enterキーを押します。

    data
  6. 次のコマンドを入力してから、Enterキーを押します。

    Subject: SPECIFY_SUBJECT_HERE
  7. 次のコマンドを入力してから、Enterキーを押します。

    SPECIFY_MESSAGE_HERE
  8. 次のコマンドを入力してから、Enterキーを押します。

    .

    サーバーはメッセージの配信を受け入れ、メール送信が確定したことを示す 250 OK で応答します。

MX レコードの設定を確認しても、依然として SMTP サーバーがメールを受信できない場合は、メールサービスプロバイダーにお問い合わせください。

コメントはありません

関連するコンテンツ