fml8 チュートリアル (バージョン 7.99.1-20180910)
Prev | Chapter 29. トラブルシューティング | Next

# 同じメールが何度も送られてくる場合

元々送信者が複数のメールを出していたということもあります。 この場合メールの Received: や Message-Id: が異なります。

同じメール(たとえば Message-Id: が同一) [1] が二通届いたという場合、単なる再送かもしれません。

電子メール業界では 「行方不明になるくらいなら重複して届いた方がまし」 と考えられています。 データを失うくらいなら冗長でも重複して届けてしまう方が良いです。 よって MTA は配送が失敗した可能性のある場合、重複の可能性があってもあ えて再配送を行ないます。

ただ何通も送られてくるようであれば、やはりシステムに何かかの異常があります。

いずれにせよ調べるべきポイントは「だれに同じメールが送られているのか？」 です。

ＭＬ受信者の一部にだけ送られているなら fml8 以外の配送システムのどこ かが犯人です。 一方、ＭＬ受信者全員に送られているなら fml8 が犯人でしょう。 まずは fml8 のログを調べて下さい。

どの場合でも、メールヘッダを解析する必要があります。 複数届くというメールのサンプルを手に入れて下さい。 ただし、この時メールヘッダが省略されていない完全な形のものを 手に入れないと意味がありません。

## メール受信時の失敗

同じ内容の複数のメールで本文だけでなく From: や Message-ID: や Received: までが同じです。

## どこかの MTA が再配送している。

同じ内容の複数のメールで本文や From: は同じでも Received: が異なります。 メールサーバ A B C を通過してくると次のような Received: がついているはずです。

    Received: by サーバC 時刻C
    Received: by サーバB 時刻B
    Received: by サーバA 時刻A

再送しているサーバ以降の時刻は各メールで異なるはずですから、 時刻の異なる Received: が現れているところが犯人のサーバです。 たとえば

    Received: by サーバC 時刻C'
    Received: by サーバB 時刻B
    Received: by サーバA 時刻A

なら B と C の間で問題があります （まず、まちがいなく B が犯人 ）。

## 同じメールが何度も送られてくる場合(メールのループ)

fml8 から MTA にいって MTA (もしくは配送されていった先のどこか別のサ イトの MTA)から fml8 に再度メールが配送される可能性がないわけではあ りません。

ループが起こらないように、受信したメール、fml8 が生成して送信したメー ルの Message-Id: はキャッシュされているので、そのメールが回り回って返っ てきても fml8 はループとみなして配送しません。

なんにせよ、その再送されてくるというメールの完全なヘッダを手に入れて分 析する必要があります。

### Notes

[1] | fml8 は受信したメールの Message-Id: の記録をとっています。 fml8 がこれらの Message-Id: が同じメールを受けとった場合、 最初の一通だけが通過します。 ここでいう「再送」は、fml8 ではなく、 そのあとの MTA による再送の可能性のほうが高いです。 もちろん fml8 自体が MTA 化した今では fml8 による再送もありえます。

Prev | Home | Next
ファイルシステムがエラーの場合の動作は？ | Up | デザイン

fml 8.0 (fml-devel) project homepage is www.fml.org/software/fml8/.
fml 4.0 project homepage is www.fml.org/software/fml4/.
about one floppy bsd routers, see www.bsdrouter.org/.
other free softwares are found at www.fml.org/software/.

author's homepage is www.fml.org/home/fukachan/.
Also, visit nuinui's world :) at www.nuinui.net.

For questions about FML, e-mail <fml-bugs@fml.org>.