「メールの流れを知る3」の編集履歴(バックアップ)一覧はこちら
「メールの流れを知る3」(2007/12/04 (火) 11:00:37) の最新版変更点
追加された行は緑色になります。
削除された行は赤色になります。
*相手サーバーを割り出す
&bold(){}シーン3は,メールを受け取ったメール・サーバーが,あて先近くのメール・サーバーを探し出して転送する部分である。
一斉同報メールの場合は,一つのあて先ずつ切り出して処理し,あて先の数だけ繰り返す。
シーン3も,シーン2と同様にSMTPを使ってメールを送信する。
このため手順は,図中の(2)~(8)はシーン2とまったく同じだ。
使うコマンド文と返信コードも変わりない(図5)。
#image(mail5.bmp)
&bold(){}図5●解剖「シーン3:メール・サーバー間で転送する」
SMTPを用いるなど,基本的にシーン2と同じである。
図では,エラーが発生した場合の返信コードを示した。
OKを表す「250」以外の返信コードを受け取ると,メール・サーバーはその時点でメールの送信をストップし,エラーが発生した旨を記述したメールを送信者あてに送り返す。
なお,(1)のDNSにアクセスする手順だけは,シーン2と異なる。
唯一の違いが,(1)のDNSサーバーにアクセスする手順。シーン2では,DNSサーバーにメール・サーバーのホスト名を照会した。
ところがシーン3では,メール・アドレスの@の後ろに付いているドメイン名を切り出して照会する。
**ドメイン名に対応したIPアドレスって何?―。
こうした疑問が浮かぶかもしれない。
実は&bold(){}ドメイン名を照会して教えてもらえるのは,&bold(){}IPアドレスではなく&bold(){}メール・サーバーのホスト名。
ややこしいが,&bold(){}あるドメイン名が付いたメール・アドレスをどの&bold(){}メール・サーバーに届ければいいのか,DNSサーバーが知っているのだ。
&bold(){}DNSサーバーは,&bold(){}ホスト名とIPアドレスの関係を&bold(){}「A(エー)レコード」,&bold(){}ドメイン名とメール・サーバー名の関係を&bold(){}「MX(エムエックス)レコード」として,2種類の情報を区別して管理している。
もちろん転送先となるメール・サーバーのホスト名はIPアドレスに変換する必要があるので,メール・サーバーは再度DNSサーバーにアクセスし,Aレコードも参照することになる。
シーン3を繰り返すメーリング・リスト
先ほど紹介した一斉同報に似た機能に&bold(){}「メーリング・リスト」がある。
&bold(){}大規模な一斉同報の用途で使われるケースが多い。
その仕組みは,シーン3でメール・サーバーの&bold(){}「エイリアス機能」を活用している。
&bold(){}エイリアス機能を使うと,あるメール・アドレスに対しあらかじめ複数のアドレスをグループ化して登録しておける。
代表アドレスあてのメールを受け取ると,&bold(){}メール・サーバーは登録してある&bold(){}全アドレスに対しコピーを再送信する。
このときヘッダーは書き換えずに,登録してあるメール・アドレスあてに次々送信していく。
受信はメーラーの呼び出しで
シーン1,2,3と経て,メールがあて先にもっとも近いメール・サーバーまでたどり着くと,そのメール・サーバーは届けられたメールを「スプール」と呼ぶメール・ボックスにいったん保存する。
メール・サーバーはユーザーごとにメールを管理し,あて先のユーザーがメーラーの受信ボタンを押すとメールを配信する。
パソコンまでSMTPで送信しないのは,メーラーが動いているパソコンは,電源が入っていなかったり,そもそもインターネットにつながっていなかったりする可能性があるためだ。
メーラーとメール・サーバーはPOP3の手順に基づいてメールを受信する。
POP3の手順は,SMTP同様にコマンド文と返信コードのやり取りである(図6)。
ただし,具体的なコマンド文と返信コードは違っている。
#image(mail6.bmp)
&bold(){}図6●解剖「シーン4:メーラーがメールを受信」
シーン2,同3と異なり,受信用プロトコルのPOP3を使ってメールを受信する。
ただし人間の会話に似た手順を踏むなど点ではSMTPに近い。[画像のクリックで拡大表示]
&bold(){}POP3ならではの特徴として,&bold(){}ユーザー認証を行う仕組みがある。
&bold(){}SMTPの場合は,&bold(){}たとえ偽物でも&bold(){}送信者のメール・アドレスを手順(4)の「発信者の準備」で伝えれば&bold(){}メールを送信できたが,&bold(){}POP3ではあらかじめメール・サーバーに登録しておいた&bold(){}ユーザーIDとパスワードを入力し,&bold(){}ユーザー認証を通過できないと受信を認めない。
*相手サーバーを割り出す
&bold(){}シーン3は,メールを受け取ったメール・サーバーが,あて先近くのメール・サーバーを探し出して転送する部分である。
一斉同報メールの場合は,一つのあて先ずつ切り出して処理し,あて先の数だけ繰り返す。
シーン3も,シーン2と同様にSMTPを使ってメールを送信する。
このため手順は,図中の(2)~(8)はシーン2とまったく同じだ。
使うコマンド文と返信コードも変わりない(図5)。
#image(mail5.bmp)
&bold(){図5●解剖「シーン3:メール・サーバー間で転送する」}
SMTPを用いるなど,基本的にシーン2と同じである。
図では,エラーが発生した場合の返信コードを示した。
OKを表す「250」以外の返信コードを受け取ると,メール・サーバーはその時点でメールの送信をストップし,エラーが発生した旨を記述したメールを送信者あてに送り返す。
なお,(1)のDNSにアクセスする手順だけは,シーン2と異なる。
唯一の違いが,(1)のDNSサーバーにアクセスする手順。シーン2では,DNSサーバーにメール・サーバーのホスト名を照会した。
ところがシーン3では,メール・アドレスの@の後ろに付いているドメイン名を切り出して照会する。
**ドメイン名に対応したIPアドレスって何?―。
こうした疑問が浮かぶかもしれない。
実は&bold(){ドメイン名}を照会して教えてもらえるのは,&bold(){IPアドレス}ではなく&bold(){メール・サーバーのホスト名。}
ややこしいが,&bold(){あるドメイン名}が付いたメール・アドレスを&bold(){どのメール・サーバー}に届ければいいのか,DNSサーバーが知っているのだ。
&bold(){DNSサーバー}は,&bold(){ホスト名とIPアドレスの関係}を&bold(){「A(エー)レコード」},&bold(){ドメイン名とメール・サーバー名の関係}を&bold(){「MX(エムエックス)レコード」}として,2種類の情報を区別して管理している。
もちろん転送先となるメール・サーバーのホスト名はIPアドレスに変換する必要があるので,メール・サーバーは再度DNSサーバーにアクセスし,Aレコードも参照することになる。
シーン3を繰り返すメーリング・リスト
先ほど紹介した一斉同報に似た機能に&bold(){「メーリング・リスト」}がある。
&bold(){大規模な一斉同報}の用途で使われるケースが多い。
その仕組みは,シーン3でメール・サーバーの&bold(){「エイリアス機能」}を活用している。
&bold(){エイリアス機能}を使うと,あるメール・アドレスに対しあらかじめ複数のアドレスをグループ化して登録しておける。
代表アドレスあてのメールを受け取ると,&bold(){メール・サーバー}は登録してある&bold(){全アドレス}に対しコピーを再送信する。
このときヘッダーは書き換えずに,登録してあるメール・アドレスあてに次々送信していく。
受信はメーラーの呼び出しで
シーン1,2,3と経て,メールがあて先にもっとも近いメール・サーバーまでたどり着くと,そのメール・サーバーは届けられたメールを「スプール」と呼ぶメール・ボックスにいったん保存する。
メール・サーバーはユーザーごとにメールを管理し,あて先のユーザーがメーラーの受信ボタンを押すとメールを配信する。
パソコンまでSMTPで送信しないのは,メーラーが動いているパソコンは,電源が入っていなかったり,そもそもインターネットにつながっていなかったりする可能性があるためだ。
メーラーとメール・サーバーはPOP3の手順に基づいてメールを受信する。
POP3の手順は,SMTP同様にコマンド文と返信コードのやり取りである(図6)。
ただし,具体的なコマンド文と返信コードは違っている。
#image(mail6.bmp)
&bold(){図6●解剖「シーン4:メーラーがメールを受信」}
シーン2,同3と異なり,受信用プロトコルのPOP3を使ってメールを受信する。
ただし人間の会話に似た手順を踏むなど点ではSMTPに近い。
&bold(){POP3}ならではの特徴として,&bold(){ユーザー認証を行う仕組み}がある。
&bold(){SMTP}の場合は,&bold(){たとえ偽物}でも&bold(){送信者のメール・アドレス}を手順(4)の「発信者の準備」で伝えれば&bold(){メールを送信できた}が,&bold(){POP3では}あらかじめメール・サーバーに登録しておいた&bold(){ユーザーIDとパスワード}を入力し,&bold(){ユーザー認証を通過できない}と受信を認めない。