メールの経路

 

 メールがどのようなサーバを経由して届くかを見るのはヘッダーを見ればいい。

 ヘッダーの意味がわからないと経路も分からない。筑波大学内での経路を解説する。

 なお、Webメールは以下の説明に当てはまらないのは当然である。

○ Local なメール

 Localとは送受信するパソコンが医学生理グループのmikeの下にいる場合、あるいはkansei の下にいる場合、kiban の下にいる場合である。ここでは、図1.の 「D棟」、「生理」の点線で囲まれた部分である。「生理」はさらにkiban というメールサーバに依存しているので、物理的ネットワークと異なるが、メールの経路については「医学」という local ネットワークの配下にあると解釈していい。

図1.  Local なメールの経路

 図1.でわかるように local 内で終始するメールはウイルスフィルタは通らない。mike をSMTPサーバと設定するとメールはmike からkiban に投げられる。mike へのメールもkiban を通して来る。

 mike のSMTPサーバは、宛先を見て@mike.me.tsukuba.ac.jp ならmike のPOPサーバに渡す。それ以外は kiban に送る。kiban のSMTPサーバは宛先が@md.tsukuba.ac.jp だったら kiban のPOPサーバに渡すが、それ以外だったら学術情報メディアセンターのDNS、そこでもわからなかったらその上流のDNSサーバ...とメールアドレスのドメインに対応するip address を問い合わせip address が判明したらそのサーバへメールを送信する。

○ 学内のメール

 kiban、mike や kansei から学内のサーバ宛のメールの場合は、フィルタを通る(図2.)。

図2.学内で終始するメールの経路

○ 学外とのメール

 学外とのメールのやり取りは、図3.である。注意すべきは学内から学外へのメールはウイルス・フィルタを通らないということである。

図3.学外とのメール送受信の経路

 学術情報メディアセンターが設置しているウイルス・フィルタは2台あってimss1、imss2と名前が付けれられている。負荷を分散させているのでどちらかを通ってくる。

 したがって、あなたのパソコンがウイルス付メールをばらまいているとすると、「D棟」にあってはD棟のパソコンに送ることになり、「生理」あるいは「医学」にあっては生理と医学のパソコンに送ることになる。さらに学外へも送信することになる。

○ ヘッダーを読む

 ではメールのヘッダーでメールがどのような経路を通ってきたかを読む方法を見てみる。ヘッダーを表示する方法はメールソフトによってさまざまなので、方法は一部だけ最後に書いた。ヘッダーを開くと、

Received: from ...by ...

Received: from ...by ...

が繰り返し並んでいると思う。それぞれが経由したサーバである。

 一番上の by に示してあるのが最後のサーバ、つまりあなたのメールソフトで設定したPOPサーバが受け取ったことを示している。一番下の by が示しているのが送り主のパソコンが送った SMTPサーバである。

 一番上のReceived: from ...by ... の例である。

Received: from imss1.cc.tsukuba.ac.jp (imss1.cc.tsukuba.ac.jp [::ffff:130.158.2.211]) by kiban.md.tsukuba.ac.jp with esmtp; Sat, 20 Jan 2007 13:07:19 +0900 id 00B0C423.45B19577.000045AC

 imss1.cc.tsukuba.ac.jp というサーバから kiban.md.tsukuba.ac.jp が受け取ったことを示している。

 メールソフトで指定したPOP サーバの実名が kiban.md.tsukuba.ac.jp である。ただし、ユーザは管理者の指示に従い mail.md.tsukuba.ac.jp とメールサーバを設定したと思う。これはメールソフトでの設定を簡単にするために別名を kiban.md.tsukuba.ac.jp が持っているからである。この別名と実名との対応を記載しているのが DNS サーバであり、医学の場合は kiban.md.tsukuba.ac.jp がまたDNS サーバでもある。クライアントのメールソフトが「mail.md.tsukuba.ac.jp からメールを受信したい」と要求すると kiban の DNS がmail.md.tsukuba.ac.jp とはkiban のことであると返事を出す(ip address を返す)ので、メールソフトはkiban からメールを受信するのである。

 同じ名前や同じ ip address のサーバが存在することは許されないので、メールサーバが故障したり、更新するとき、名前やip address はいままでのとは異なったものにせざるを得ない。このときすべてのユーザに「新しいメールサーバの名前に変更しなさい」という連絡をしても徹底できるはずがない。ユーザが20人を超えると、連絡は徹底しない。大学に住む者は、概してわがままであり、理解してない・できないものには追従しない。通達は無視するのが当たり前である。困ったときにクレームという形で管理者に襲いかかる。管理者は理解させようと努力しても、その数が多くて無駄な努力になる。そこで、DNSのところで mail.md.tsukuba.ac.jp は、今後は別の 名前、ip address のサーバである と設定するればすぐに切り替えることができる。ユーザは何もしなくてもいいわけである。

 一番下(つまり最初のサーバ)Received: from ...by ... を見てみる。

Received: from [192.168.100.119] (unknown [130.158.166.132]) by kansei.tsukuba.ac.jp (Postfix) with ESMTP id C2E5E73FC26; Fri, 26 Jan 2007 17:33:43 +0900 (JST)

 ここに、メールの送信者の情報がある。この例の場合、発信したパソコンの名前は DNS に登録されているわけではないので発信者は ip address でしか示されていない。なおかつ、192.168.xx.xx とある。これはプライベートアドレスであるから、ルータが間にあることがわかる。

 そのルータの ip address は 130.158.166.132 である。このルータはグローバルアドレスを持ってはいるが、 DNSに登録されていないのでunkown と表示されている。  

 したがって、送信者はルータの下にあるパソコンからSMTP サーバである kansei.tsukuba.ac.jp にメールを送付しkansei が受け取ったことを示している。  

 この最初(一番下)から、最後(一番上)の間にあるReceived: from ...by ...が介在したメールサーバである。 

 ここでしばしば、Received: from ...by localhost.xxx.xx.jp とかいう表記がある。このlocalhost というところでは、同じサーバ機の中で、ちがうメールサーバソフトの間でメールが転送されたことを示している。たとえばウイルス・フィルタの機能のあるサーバなどである。これはサーバの構成によって異なる。

 それではSpamメールの送り主がわかるのでは? そして、そこのプロバイダに抗議することができるのでは?と思うかもしれない。Spamメールの例をみてみる。送信者の情報がある最初の Received: from の部分を見ると

Received: from pc21 (unknown [124.6.154.26])
	by imss1.cc.tsukuba.ac.jp (Postfix) with SMTP id F26D15C006
	for <xxxx@md.tsukuba.ac.jp>; Sat, 27 Jan 2007 06:27:03 +0900 (JST)

 とある。124.6.154.26 から学術情報メディアセンターのウイルス・フィルタサーバが受け取ったことを示している。 124.6.154.26 は誰から付与された ip address なのか調べてみると、フィリピンのプロバイダからであることがわかる。普通、プロバイダにメール送信時にこの ip address を使ったユーザ(契約者)は誰であるかという記録(log)がある。したがって誰が送信したかわかるはずであるが...この時点であきらめるしかない。このプロバイダに抗議しても返事はないだろう。

 このようにほとんどのSpamメールは、中国、韓国、米国、豪州、ロシアなどのサーバからで、hotmail、yahoomail のようなただメールから、一時的なサーバを介して送信されていたりして、追跡は実質的に不可能である。

 他人のサーバを乗っ取って、Spam メールを送付する例もある。

○ ヘッダーの表示方法

Windows   

   Outlook Express:メールを選択し、右クリック→プロパティ→詳細→メッセージのソース
   Outlook:メールを選択し、右クリック→オプション→インターネットヘッダーの欄
   Al Mail:メールを選択し、表示→全ヘッダ
   Thunderbird:表示→メッセージのソース
 

MacOSX

   Mail:表示→メッセージ→すべてのヘッダ
   Thunderbird:表示→メッセージのソース