SMTPサーバとは?
- 2023年7月13日
- by SendGrid
- Category: ベストプラクティス 技術ネタ
この記事は SMTP: Servers and Sending Emails の抄訳です。
コミュニケーションにおいてメールは大きな役割を果たしていますが、メールがどのように送信されているかご存じですか?
メールの送信プロセスは物理的な手紙の郵送に似ています。一連のステップを経て、組織化されたシステムが封筒を受け取り、宛先に届けます。メールにおいてはSMTPサーバが郵便配達員のような役割を果たしていますが、SMTPサーバの役割はそれだけではありません。
SMTPサーバは複雑で、メール送信の世界に足を踏み入れた人の多くは圧倒されてしまうでしょう。そこで今回は、メール送信(SMTPサーバを使ったメール送信)に関する理解を深めるため、SMTPサーバに関してよく聞かれる質問をまとめました。これを読めばあなたもSMTPのエキスパートになれますよ。
SMTPとは?
SMTPはSimple Mail Transfer Protocolの略で、メールサーバが送信元と宛先の間でメールの送受信や中継を行うために使用されます。
SMTPはメール通信という仕組みを裏から技術的に支えているもので、メールの送受信を可能にするプロトコルです。メッセージの配送先を決定するのもSMTPであるため、SMTPがなければメール通信は成立しません。
メールサーバとは何か?SMTPサーバとは?
メールサーバとは、メールを収集・処理・配信するシステムを表す一般用語です。メールの運び人のようなもので、すべてのメールはメールサーバを経由して宛先まで届けられます。メールサーバがなければ、同一ドメイン内のアドレスにしかメールを送ることはできません(例えば、gmail.com から gmail.com など)。
送信用のメールサーバであるSMTPサーバは「アドレス」を持っていて、このアドレスをメールクライアントやアプリケーションに設定できるようになっています。アドレスは一般的に smtp.serveraddress.com のような形式をしていて、GmailのSMTPサーバなら smtp.gmail.com、Twilio SendGridなら smtp.sendgrid.com です。これは通常、メールクライアントの「アカウント」や「設定」のセクションで確認できます。
SMTPサーバはメール転送エージェント(MTA)と連携し、ネットワークを介してメールを目的の受信トレイへと運びます。
つまり、メールを送信すると、指定したSMTPホスト(smtp.gmail.comなど)がメッセージをどのサーバに届けるかを決定し、目的のメールサーバまで中継(リレー)します。その後、受信側のインボックスプロバイダ(GmailやAOLなど)がメッセージをダウンロードし、宛先の受信トレイに格納するのです。
一般的なSMTPサーバと設定
SMTPプロバイダ | URL | SMTPの設定値 |
---|---|---|
iCloud | icloud.com/mail | smtp.mail.me.com |
Gmail | gmail.com | smtp.gmail.com |
Outlook | outlook.com | smtp-mail.outlook.com |
Yahoo! JAPAN | mail.yahoo.co.jp | smtp.mail.yahoo.co.jp |
SMTPサーバと普通のサーバとの違い
多くのサーバと同様、SMTPサーバもデータを処理し他のサーバに送信します。ただし、メールの送信と中継に特化している点が他のサーバとの違いです。また、必ずしもマシン上に実体がある訳ではありませんが、いつでもメールが送信できるよう常時起動されていることが多いでしょう。
SMTPサーバが重要である理由
メール通信においては、宛先まで遅延なく安全にメッセージを届けることが極めて重要です。しかし、SMTPサーバがなければメールが宛先に届くことはありません。
“送信”ボタンを押すとメールはコードに変換され、SMTPサーバがそのコードを処理して転送します。SMTPサーバが処理しなければ、メッセージは転送されないのです。
また、SMTPサーバは、メールの送信元が有効なメールアカウントかどうかを確認することで、不正なメールから受信トレイを保護しています。
メールを宛先まで届けられなかった場合、SMTPサーバはそのメールを必ず送信元に差し戻し、「メールアドレスに誤りがあった」「受信側のメールサーバが何らかの理由でメールをブロックした」といったことを知らせてくれます。
SMTPについてもっと知りたい方は、3分でわかる!SMTPサービス講座をご覧ください。
SendGridのSMTPサーバの仕組み
SendGridでメール送信したときの処理の流れは?
- 送信元のメールクライアントからSendGridのSMTPサーバ(smtp.sendgrid.net、ポート:25)に接続します。
- メールクライアントとSendGridサーバ間で通信を行います。具体的には、認証に使われたユーザ名とパスワードが有効であることを確認し、送信元アドレス、宛先アドレス、メッセージの内容等を受け取ります。
- 次に、SendGridサーバは宛先のメールサーバに対し通信を行います。
- 宛先のメールサーバは送信元アドレス、宛先アドレス、およびメッセージの内容を確認します。また、送信元のドメインをチェックし、DKIM (DomainKeys Identified Mail) や SPF (Sender Policy Framework) の設定に問題がなければメールを受け取ります。
その後、宛先のメールサーバが、POP3またはIMAPプロトコルを用いてメールを宛先の受信トレイに格納します。
SMTPでのメール送信プロセスを視覚化したものが、以下の図です。
SendGridにテスト用のSMTPサーバはありますか?
SendGridではクレジットカード情報不要の無料アカウントを提供しています。1日100通(※)までメールを送信できるので、SMTPサーバのテストにご利用ください。
この無料アカウントは、大規模なメール送信をする前の、送信テストや到達性の確認にもご利用いただけます。
使用前にSMTPサーバのセットアップが必要ですか?
いいえ。有効なSendGridアカウントと、ユーザ名/パスワードで認証する機能がメールクライアントまたはアプリケーションに備わっていればすぐに使用できます。
SMTPサーバのポートは何番に接続すればよいですか?
ポート番号25、587、2525で平文およびTLS暗号化をサポートしています。SSL暗号化を実装する場合は、ポート465をご使用ください。
SendGridでSMTPメールを送信してみよう!
メールの送信準備はできましたか?あとはSendGridにお任せください。