• ベストアンサー
  • すぐに回答を!

メールヘッダの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のヘッダフィールドが追加されてしまうような 気がいたします。この理解で合っておりますでしょうか。 つたない説明ですいませんが、どなたか教えてください。       

共感・応援の気持ちを伝えよう!

  • 回答数3
  • 閲覧数497
  • ありがとう数1

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

  • ベストアンサー
  • 回答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サーバが多段構成になっています

共感・感謝の気持ちを伝えよう!

関連するQ&A

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

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

  • メールを送る時に...

    わたしのパソコンは、電子メールを送信すると、【ホスト 'aaa' が見つかりません。 サーバー名が正しいことを確認してください。 アカウント : 'aaa', サーバー : 'aaa', プロトコル : SMTP, ポート : 25, セキュリティ (SSL): なし, ソケット エラー : 11001, エラー番号 : 0x800CCC0D】 と出るんです... どこをどうすれば直りますか?? 教えてください;;

  • sendmail での配送先設定について

    sendmail-8.9.3 を使用しています。 サーバーをバーチャルドメインで運用しているのですが、例えば AAA.com と BBB.com の2つのドメインで運用しているとして、AAA.com からのメールはすべて CCC.com に配送し、BBB.com からのメールはメール内の宛先に従って配送するような設定をしたいのですが、このような設定は可能なのでしょうか?もし可能であれば設定方法をご教授願います。 ちなみに、バーチャルドメインで運用していないサーバーでは、/etc/mail/mailertable で、 . smtp:CCC.com と設定して問題なく動作しています。 この設定だとすべてのメールを CCC.com に配送することになるのでバーチャルドメインにした時に不都合なのです。 この設定の応用で何とかならないか検討してみたのですが、行き詰まってしまいまして… よろしくお願いいたします。

その他の回答 (2)

  • 回答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ヘッダを削除する、という方法でこの問題を回避したこともあります

共感・感謝の気持ちを伝えよう!

  • 回答No.2

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

共感・感謝の気持ちを伝えよう!

関連するQ&A

  • メールが送信できない・・・

    電子メールが送信のみできません; Outlook Expressです! SMTP サーバーは不明なエラーを返しました。 件名 'Re', アカウント : 'pop.mail.yahoo.co.jp', サーバー : 'smtp.mail.yahoo.co.jp', プロトコル : SMTP, サーバーの応答 : '521 smtp.mail.yahoo.co.jp closing transmission channel. Your SMTP service is temporarily stopped.', ポート : 25, セキュリティ (SSL): なし, サーバー エラー : 521, エラー番号 : 0x800CCC61 どうしてでしょうか・・。色々ためしたんですが、全然なおりません。

  • Becky!の返信メール作成時のFrom:ヘッダを自動的に

    現在、aaa@hotmail.co.jp と bbb@gmail.com のメールを、プロバイダメール ccc@foobaa.jp へ転送し、Becky!2 で POP アクセスして ccc@foobaa.jp のメールボックスで全部受信しています。 当然、相手からは To:aaa@hotmail.co.jp や、To:bbb@gmail.com とかで届いてくるわけですが、それに返信メールを書こうとすると、From:ヘッダが From:ccc@foobaa.jp になってしまいます。 ここからヘッダを手動で書き換えることは可能なのですが、できれば自動的に、hotmail に来たメールに返信した場合には From:aaa@hot.mail.co.jp に、Gmail に来たメールに返信した場合には From:bbb@gmail.com となるようにしたいのですが、何か良い方法はあるでしょうか?

  • メールが使えなくなりました

    OutlookExpress利用しています。アカウントを変更したような気もしますが、(大変いい加減で申し訳ありません。ほとんど記憶にありません。) 以来、メール受信が出来なくなってしまいました。以下コメントが表示されます。(test送信に対し) 1.送信者の電子メール アドレスが拒否されたため、メッセージを送信できませんでした。 送信者の電子メール アドレス : ********@***.ne.jp 件名 'test', アカウント : '******', サーバー : '***smtp.mail.****.co.jp', プロトコル : SMTP, サーバーの応答 : '521 ***smtp.mail.****.co.jp closing transmission channel. You must be pop-authenticated before you can use this smtp server, and you must use your *** mail address for the Sender/From field.', ポート : 25, セキュリティ (SSL): なし, サーバー エラー : 521, エラー番号 : 0x800CCC78 2.サーバーは接続を解除しました。 サーバーまたはネットワークに問題があるか、またはアイドル時間が長すぎた可能性があります。 アカウント : '*****', サーバー : '***smtp.mail.****.co.jp', プロトコル : SMTP, ポート : 25, セキュリティ (SSL): なし, エラー番号 : 0x800CCC0F どなたかご存知の方よろしくご教授お願いいたします。

  • Received: (qmail とは?

    メールヘッダの勉強をしています。 以下のReceived: fromに関してはどこにでも資料があって意味はわかります。 Received: from 253.111.99.111 (HELO smtp501.mail.kks.yahoo.co.jp) (253.111.99.111) by mta317.mail.ogk.yahoo.co.jp with SMTP; Sat, 19 Mar 2011 20:20:15 +0900 ところが、同じようにReceivedであっても、Received: (qmailなどと表記される 情報の詳細が分かりません。Received: fromと同じように経由するサーバの情報 だとすると、どのように読めばよいのでしょうか? Received: (qmail 58468 invoked by alias); 19 Mar 2011 11:20:15 -0000 DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=yj20050223; d=yahoo.co.jp;

  • 電子メールでのエラー番号の対処法

    電子メールを送ろうとするとエラーが起こります。 以下のように (SMTP がエラーを返しました。 アカウント : 'mail.goo.ne.jp', サーバー : 'smtp.mail.goo.ne.jp', プロトコル : SMTP, サーバーの応答 : '', ポート : 587, セキュリティ (SSL): なし, エラー番号 : 0x800CCC60) どう対処したらよいのでしょうか? ちなみにアカウントはgooのメールアドバンスに加入していませんがSMTP設定の欄のサーバー情報の欄だけかってに電子メールのアカウントに打ち込んでメールを送りました。*ちなみに  どうぞよろしくお願い致します。

  • メールの送信のみできません・・・

    どうぞよろしくお願いいたします。 急にメールの送信のみ出来なくなりました。 ■環境:VISTA ・ WINDOWS LIVE MAIL ■エラーメッセージ: > サーバーに接続しようとしているときに TCP/IP エラーが発生しました。 > > 件名 '【///////////////////////////////////】' > サーバー: 'mail.●●●.jp' ←●●はドメインです。 > Windows Live メール エラー ID: 0x800CCC15 > プロトコル: SMTP > ポート: 587 > セキュリティ (SSL): いいえ ■セキュリティソフト:ウィルスバスター2008 ウィルスソフトを外すと、エラーメッセージは下記になります。 サーバー: 'mail.●●●.jp' Windows Live メール エラー ID: 0x800CCC0E プロトコル: SMTP ポート: 587 セキュリティ (SSL): いいえ ソケット エラー: 10061 仕事で使用しているので、困っております。 アドバイスいただけましたら幸いです。 どうぞよろしくお願いいたします。

  • アウトルックエクスプレスでメールが送れなくなりました。

    サーバーは接続を解除しました。 サーバーまたはネットワークに問題があるか、またはアイドル時間が長すぎた可能性があります。 アカウント : '****(goo)', サーバー : 'smtp.mail.goo.ne.jp', プロトコル : SMTP, ポート : 25, セキュリティ (SSL): なし, ソケット エラー : 10053, エラー番号 : 0x800CCC0F と サーバーへの接続は失敗しました。 アカウント : '****(goo)', サーバー : 'smtp.mail.goo.ne.jp', プロトコル : SMTP, ポート : 25, セキュリティ (SSL): なし, ソケット エラー : 10061, エラー番号 : 0x800CCC0E と言うエラーメッセージが出ています。何が原因なのでしょうか?

  • メールが送れません

    outlook expressでメールを受信は出来るのですが、送信すると、以下のようなエラーメッセージがでます。この間までは送信できていたのにどこがいけないのでしょうか? 「サーバーは接続を解除しました。 サーバーまたはネットワークに問題があるか、またはアイドル時間が長すぎた可能性があります。 アカウント : 'pop.mail.yahoo.co.jp', サーバー : 'smtp.mail.yahoo.co.jp', プロトコル : SMTP, ポート : 25, セキュリティ (SSL): なし, エラー番号 : 0x800CCC0F」

  • メール送信方法 

    すいません、先程、ヤフーのアカウントで、パソコンの電子メールを設定して、パソコンの電子メール より、自分の携帯電話にメールを送信したのですが、下の様な エラーが出て 送れません 設定方法は、先程のベストアンサーの方から教わりました通り、メール設定項目より、 アカウントも確認しましたので間違っては無いと思うのですが これは何が原因なのでしょうか・ 何度も質問してしまいすいません 【サーバーは接続を解除しました。サーバーまたはネットワークに問題があるか、またはアイドル時間が長すぎた可能性があります。 件名 'Windows Internet Explorer から投稿されたフォーム', アカウント: 'pop.mail.yahoo.co.jp', サーバー: 'smtp.mail.yahoo.co.jp', プロトコル: SMTP, ポート: 25, セキュリティ (SSL): なし, エラー番号: 0x800CCC0F】

  • Outlook Expressでのメールの送受信ができません

    こんにちは。 最近初期化をしたのでOutlook Express6の方も設定しなくてはと思いしてみたのですが、エラーがでてしまいできません・・・。 受信をしようと思うと セキュリティで保護されたパスワード認証でサーバーにログオンできませんでした。 アカウント : 'pop.mail.yahoo.co.jp', サーバー : 'pop.mail.yahoo.co.jp', プロトコル : POP3, サーバーの応答 : '-ERR popgate unknown command', ポート : 110, セキュリティ (SSL): なし, サーバー エラー : 0x800CCC90, エラー番号 : 0x800CCC18 と出てしまいます。 送信をするときは 送信者の電子メール アドレスが拒否されたため、メッセージを送信できませんでした。 送信者の電子メール アドレス : ju******@yahoo.co.jp 件名 'o', アカウント : 'pop.mail.yahoo.co.jp', サーバー : 'smtp.mail.yahoo.co.jp', プロトコル : SMTP, サーバーの応答 : '521 smtp.mail.yahoo.co.jp closing transmission channel. You must be pop-authenticated before you can use this smtp server, and you must use your yahoo mail address for the Sender/From field.', ポート : 25, セキュリティ (SSL): なし, サーバー エラー : 521, エラー番号 : 0x800CCC78 と出てしまいます。 メールアカウントの設定は、 受信メールサーバーの種類 「POP3」 POP3サーバー 「pop.mail.yahoo.co.jp」 SMTPサーバー 「smtp.mail.yahoo.co.jp」 にしています。 どうしたらいいのかまったくわかりません、、、。 何か御助力をお願いできないでしょうか?