📃

メールのやりとり

2025/03/09に公開

はじめに

メールって、どのようにして相手の元に届くのだろうか。
宛先のアドレスにメールを飛ばしていると言われればそれまでだが、
内部ではどのように処理されているかを説明する。

メールサーバー

メールの送受信には、複数のサーバーを使用されている。
サーバーにはそれぞれ役割が存在するため一つずつ見ていこう。

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...)、あまり詰め込みすぎても理解できなくなるためこの辺で...
興味がある人は、以下のサイトなどにより詳しい仕組みが書いてあるのでぜひ。
https://ascii.jp/elem/000/000/439/439105/

GitHubで編集を提案

Discussion