メールのやりとり
はじめに
メールって、どのようにして相手の元に届くのだろうか。
宛先のアドレスにメールを飛ばしていると言われればそれまでだが、
内部ではどのように処理されているかを説明する。
メールサーバー
メールの送受信には、複数のサーバーを使用されている。
サーバーにはそれぞれ役割が存在するため一つずつ見ていこう。
SMTP サーバー(Simple Mail Transfer Protocol サーバー)
メールを送信する役割がある。
送信元のメールを受け取り、宛先のメールサーバー(SMTP)に転送する。
DNS サーバーを使い、適切な宛先メールサーバーを見つける。
ポート番号 | 説明 |
---|---|
25 | SMTP の標準ポート(スパム対策で外部メール送信には制限されることが多い) |
465 | SMTPS(SSL/TLS 暗号化済み) メール送信用 |
587 | STARTTLS(暗号化可能) メール送信用(現在の標準) |
DNS サーバー(Domain Name System サーバー)
宛先のメールサーバーを特定する。
ドメイン名(例: sample.com)を IP アドレスに変換する。
MX(Mail Exchanger)レコード を使い、メールを受信するサーバーを調べる。
ポート番号 | 説明 |
---|---|
53 | DNS の標準ポート(UDP/TCP) |
POP3 サーバー(Post Office Protocol 3 サーバー)
メールを受信し、ダウンロードする。
メールクライアント(Outlook や Thunderbird など)にメールを転送する。
インターネット接続がなくても、ダウンロードしたメールを読める
ポート番号 | 説明 |
---|---|
110 | POP3 の標準ポート(平文通信) |
995 | POP3S(SSL/TLS 暗号化済み) |
IMAP サーバー(Internet Message Access Protocol サーバー)
メールをサーバー上で管理し、複数のデバイスと同期する。
受信者のメールソフト(Gmail, Outlook, Thunderbird など)とサーバーをリアルタイムで接続する。
インターネット接続がないとメールを読めないことが多い(キャッシュ機能あり)
ポート番号 | 説明 |
---|---|
143 | IMAP の標準ポート(平文通信) |
993 | IMAPS(SSL/TLS 暗号化済み) |
メールの仕組み
メールの送信
送信者のメールソフト(Gmail や Outlook)が SMTP サーバーにメールを送る
↓
送信者の SMTP サーバーが宛先(例: hanako@sample.com)のドメイン sample.com を解析
↓
DNS サーバーに「sample.com のメールサーバーはどこ?」と問い合わせる
↓
DNS サーバーが MX レコードを返し、「mail.sample.com に送るべき」と回答
↓
SMTP サーバーが受信側のメールサーバー(SMTP サーバー)にメールを転送
↓
宛先のメールサーバーがメールを受信し、受信者のメールボックスに格納
メールの受信(POP の場合)
サーバーからメールをダウンロードする
↓
一度ダウンロードすると、基本的にサーバー上のメールは削除される(設定によっては残せる)
メールの受信(IMAP の場合)
サーバー上にメールを保存し、複数のデバイスで同じメールを管理
↓
メールの読み込み・削除・フォルダ管理がすべてサーバーと同期される
まとめ
メールの基礎的な知識についてまとめてみた。
もっと詳しく話すこともできるが(MUA,MTA,MDA...)、あまり詰め込みすぎても理解できなくなるためこの辺で...
興味がある人は、以下のサイトなどにより詳しい仕組みが書いてあるのでぜひ。
Discussion