• ベストアンサー

メールヘッダのreceivedの追記について

メールヘッダのreceivedのヘッダフィールドについて 分からないことがあります。 端末1が、端末2の電子メールアドレス(XXX@CCC.jpとします) を宛先アドレスとして電子メールを送信したとします。 端末1   SMTPサーバ1 SMTPサーバ2 SMTPサーバ3 YYY@AAA.jp mail.AAA.jp mail.BBB.jp mail.CCC.jp ↓         ↑↓     ↑↓      ↑  ルータa→→→ルータb→→ルータc→  ルータd                           ↓↑(POP)                         端末2XXX@CCC.jp SMTPのプロトコルだと、 このメールは端末1と同じドメイン(AAA.jp)のSMTPサーバ1から 宛先と同じドメイン(CCC.jp)のSMTPサーバ3まで転送され、 その間に、経由点上のSMTPサーバのトレース情報を示すreveiveのヘッダフィールドが追記されて行くということが分かりました。 ここで、質問なのですが、 端末1(または、SMTPサーバ1?)が、CCCのドメインネームサーバに SMTPサーバ3のIPアドレスを問い合わせて取得し、 そのIPアドレスを(メールを記述したTCPパケットの)TCPヘッダに付加してルータaに渡してしまえば、 あとはルータa~dが勝手にSMTPサーバ3まで転送してくれるような気がするのですが、 SMTPサーバ1やSMTPサーバ3以外の他の経由点(上の例でいうとSMTPサーバ2 )のトレース情報も追記されることもあり得るのでしょうか。 だとすれば、その理由が分かりません。 SMTPサーバ2と繋がっているルータcは、宛先IPアドレスと 自分のルーティングテーブルさえ照合すれば、 TCPよりも上位層のSMTPの処理をするまでもなく(SMTPサーバ2に ペイロードを渡す必要なく)、 そのままルータdに転送すればいいとすぐに分かるような気が致します。 TCPのペイロード部に含まれているデータが電子メールの場合、 ルーティング経路上のルータは、SMTPサーバに一度渡し、 その結果を受け取ってまた流す、というような 規約になっているのでしょうか。 とすれば、宛先に到達するまでに ものすごい数のreveiveのヘッダフィールドが追加されてしまうような 気がいたします。この理解で合っておりますでしょうか。 つたない説明ですいませんが、どなたか教えてください。       

質問者が選んだベストアンサー

  • ベストアンサー
  • Toshi0230
  • ベストアンサー率51% (836/1635)
回答No.1

> そのIPアドレスを(メールを記述したTCPパケットの)TCPヘッダに付加してルータaに渡してしまえば、 > あとはルータa~dが勝手にSMTPサーバ3まで転送してくれるような気がするのですが、 IPアドレスを格納するのはIPデータグラムですが、質問者さんの直感は実際のSMTP転送の仕組みをほぼ正確に言い当てています。 各SMTPサーバがインターネットに直接接続している、一般的な設定がされているメールサーバとして、SMTPサーバ1は、"xxx@ccc.jp"宛てのメールを端末1から受け取ると、DNSで "@ccc.jp" を担当するメールサーバを探します。見つかると、SMTPサーバ1はSMTPサーバ3に直接メールを送信しますので、このとき recievedヘッダにSMTPサーバ2が付加される余地はありません。 では、どういうケースでrecieved行が付加されるかというと、いくつかのパターンが考えられます よく目にするのは以下の3通りでしょうか。 (a) 送信側または受信側のネットワークで、SMTPサーバが多段構成になっている場合 (b) メールがメーリングリストサーバを経由して配信されている場合 (c) ゲートウェイ型のウィルスチェックツールを経由している場合 (a) が分かりにくいかもしれませんが、たとえば会社の各部門でメールサーバを使用しているが、インターネット経由で別会社/別組織に送信するためには全社サーバを通さなければいけない、あるいはインターネットからメールを受信するサーバが制限されていて、受信したメールを更に配下のメールサーバに転送する必要がある、などという場合が該当します。 実のところ、大抵の組織のメール環境はSMTPサーバが多段構成になっています

その他の回答 (2)

  • 774danger
  • ベストアンサー率53% (1010/1877)
回答No.3

DNSには、ホスト名(FQDN)とIPアドレスの対応表(Aレコード、IPv6だとAAAAレコードと呼びます)以外に、このドメインのメールをどこに配送するかという情報が書かれたMXレコードというものが存在します あまり大きくない会社だと、メールサーバからメールサーバでダイレクトに配送できる場合もあり、最短では、 端末1→SMTPサーバ1→SMTPサーバ2→端末2 のようなパターンも存在します ただ、No.1の方が書かれているような理由や、SPAMフィルタを実装したSMTPサーバが途中に入っていたりすると、多段でSMTPサーバを経由してメールが届くことになったりします 実際、うちのメールサーバは、Firewallの奥深く、ウィルススキャン/SPAMフィルタ等を経由してくるので、社内だけで7つのSMTPサーバを経由します ほかの某会社では10段経由というのを見たこともあります 困ったことに、sendmailのデフォルトの設定では、25段を超えるとメールのループが発生していると判断して、エラーメールを返します うちの会社が7段、とある会社が10段、メーリングリストを経由するとさらに段数が増えて、メーリングリスト経由では25段を超えてしまいメールが全然届かない、ということも経験したことがあります sendmailの設定を変えてもらうという解法もあったのですが、メーリングリスト(fml)側でreceivedヘッダを削除する、という方法でこの問題を回避したこともあります

  • Toshi0230
  • ベストアンサー率51% (836/1635)
回答No.2

追記: aaa.jp, bbb.jp, ccc.jp ともに実在するドメイン名です。 例として表示する場合は、 "example.com" "example.jp" "example.net" などを使用しましょう。 # 先の回答では混乱するといけないので直しませんでした

関連するQ&A

  • Receivedヘッダが複数つく理由

    メールのReceivedヘッダに関する質問です. Receivedヘッダは経由するメールサーバがつけるものだと思います. 転送ではないメールで,Receivedヘッダが2つよりも多くついているものは,送信側と受信側のメールサーバの他にどこでついているのでしょうか.

  • スパムメールのヘッダー

    毎日届くスパムメールの中に、そのメールのヘッダーに自分(受信者)のメールアドレスが全く含まれていないものがあります。 どうして、ヘッダー情報の中に全く現れないメアド宛にメールが届くのでしょうか。 プロバイダに問い合わせてみたところ、私のメアドをBccに設定しているのではないか、との回答でした。 早速フリーメールを使って試してみました。 aaa@aaa.com から To を bbb@bbb.com、Bcc を ccc@ccc.com に送ってみたのですが、ccc@ccc.comで受信したヘッダーには for <ccc@ccc.com>が含まれていました。 この結果からは、プロバイダの回答の Bcc云々は間違いということになると思うのですが、どうなんでしょう。

  • メールヘッダの表示方法について

    メールヘッダから関係者のメールアドレスを見たいのですが、見れるのは、最後にメールを送ってきた人のものだけですか?転送メールが下についていた場合、下についている元メールの受信者のアドレスも見えますか? 転送が、通常のPOP/SMTPで行われた場合と、Web Mailで行われた場合で、何か違いがありますか?(例えばPOP/SMTPなら転送された元メールのメールヘッダも残っているが、Web Mailで転送されたメールは、最後の人の分しか情報を含んでいないとか)

  • ルータがIPヘッダをどのように読み取っているのか?

    ■ルータの動作について質問 IPヘッダの「ヘッダ長」フィールドに通常の5と違う7や8が入っており、「オプション」フィールドになんらかのデータが書き込まれていた場合、ルータは宛先IPアドレスに書かれているホストへパケットを通常のように送ってくれるのでしょうか?(一般的なルータに関して) もし、分かる方がいましたら、よろしくお願い致します。

  • 受信したメールの宛先を書換してくれる転送メールサービスを探しています。

    メール転送サービスで、受信メールを転送する際に「宛先(toヘッダー)」を指定のアドレスに書き換えてくれるものを探しています。 ToDoMailを転送メールで利用しようと思ったのですが、ToDoMailはtoヘッダのアドレスしか受け付けてくれず困っています。 私の利用している転送メールはToヘッダは元のメールのものが自動的に引き継がれてしまうのです。 自宅サーバは持っておりませんので、「自宅サーバで構築」以外の方法でお願いします。

  • メールヘッダの unknownについて 

    質問させてください。 メールサーバ:postfix  DNS:BIND を設置していて固定IPアドレス、レンタルサーバを借りて運用しています。 外部ドメインへメールを送り、受信したメールのヘッダを見ると、下記のように unknownがついています。 こういったのはスパム処理されてしまう場合があると聞いたので、対応しようとしていますが、解決しません。 メールヘッダが下記のようになっています。 > Received: from aaa-bbb.com (unknown [111.11.11.11]) ※ドメイン名はaaa-bbb.com IPアドレスは111.11.11.11  Webで調べると、BINDのホストファイルにPTRレコードがない場合に出るとみましたが、設定しても解決しませんので教えて頂ければと思います。 ちなみに、逆引きのホストファイルが下記のようにしています。 ns1.foo.jp とns1.foo.jppはレンタルサーバで運用しておりり、レンタルサーバ元のDNSです。 ------------------------------------------------------------------------ $ttl 600 @ IN SOA ns.aaa-bbb.com. admin.aaa-bbb.com ( 142222222 19000 5000 5000000 600 ) ; IN NS ns1.foo.jp. IN NS ns2.foo.jp. IN NS ns.aaa-bbb.com. ; IN PTR aaa-bbb.com ; 11 IN PTR www.aaa-bbb.com. 11 IN PTR aaa-bbb.com. 11 IN PTR ns.aaa-bbb.com. 11 IN PTR mail.aaa-bbb.com. ------------------------------------------------------------------------ また、whois でDNSの逆引きチェックをしましたが、下記のように見当たらないというメッセージがでました。 ** server can't find 11.11.11.111.in-addr.arpa: NXDOMAIN やはり、BINDのホストファイルの設定がうまくいってないのが原因かと思いますが、何をどうすればいいかわからない状況です。 Webなどを見ましたが、今回、前任者から引き継ぎ、BINDをまともに触るのが初めてということもあり、認識不足が多々あると思うので、教えて頂ければと思います。よろしくお願いします。

  • Mailサーバの構築について

    メールサーバを構築したことがありません。教えてください。 外部(DMZ)と内部のメールサーバを自前構築するとは、一般的に どのように構築することをいうのでしょうか? SMTPとPOPというのがあると思うのですが、 SMTPは外部と内部それぞれにインストールし、 内部にはPOPをインストールするのでしょうか? SMTPとPOPの設定と動作ですが、 以下の通りの理解で間違ってないでしょうか。 外部のSMTPには外から自ドメインに来たメールだけを内部の サーバにリレーする設定をし、 内部のSMTPは自ドメイン以外宛のメールは外へ転送し、 自ドメイン内宛先のものは受け取るというような設定をする。 POPについては、内部のものは勿論、外部から転送されてきたメールを受け取る SMTP兼POPサーバでユーザーからのメールボックスへのアクセスを受け付ける。

  • メールヘッダーの読み方について

    以下のヘッダーのAAA@AAA.AAA.AAA.AAAとBBB@BBB.BBB.BBB.BBBはどちらも送信先E-Mailアドレスだと思うのですが、以下のようにこの2箇所のアドレスが 異なるメールが私宛に来ました。私のE-Mailアドレスは、BBB@BBB.BBB.BBB.BBBです 但し、メールの情報として、送信先アドレス(Toのアドレス)はAAA@AAA.AAA.AAA.AAAになっています。 どういったときに、このような現象が起きるのでしょうか? =================================================== Return-Path: <XXXXX@XXXXX> Received: from ********** by ******* with SMTP **** for <BBB@BBB.BBB.BBB.BBB>; ********** From: "xxxxx" <XXXXX@XXXXX> To: <AAA@AAA.AAA.AAA.AAA> ====================================================

  • メールヘッダー

    メールを受信したときに宛先欄に自分のアドレスが表示されると思うのですが、迷惑メールのほとんどは、宛先のアドレスが空欄になっています。 いくつかのアドレスをメールソフトで使い分けているのですが、迷惑メールが来るアドレスは登録削除しようかと思います。 どのアドレス宛に受信しているか確認する方法はありますか。ヘッダー詳細のTOなどには表示されていません。

  • sendmailの設定で

    sendmail.cfの設定で、差出人aaa@***.com さんがメールをだしたら、宛先人以外にもコピー転送 されるような設定というのもは可能なのでしょか? aaa@***.com →→smtpサーバ→→正式な宛先人            ↓             →→指定した宛先人 といった事をsmtpサーバー上のsendmail.cfを 設定することにより可能なのでしょうか? 環境OS:LINUX6.5 以上よろしくお願いします。