特定のMTAから同じメールを何回も受信してしまう updated!
特定のMTAから同じメールを何回も受信してしまう場合、いちばん考えられる可能性として、受け側=こちら側のメールサーバでメール受信(受領)までに、処理時間がかかり、その結果相手MTAから接続タイムアウトと見なされ、再送されてくるケースです。特にこちら側がメールフィルタやウイルスチェックに処理時間がかかることによって、その時間が長すぎると判断された結果、完了応答を待たずして、相手MTA側が送信切断、再送してくることが推測されます。
対処できることとして、下記の内容について確認してください。
1.Enterprise 版では「チェック不要なIP」にメールサーバマシンのIPアドレスを登録
Enterprise 版の場合、E-POSTコントロールセンターのメールサーバ管理から[システム管理メニュー]をクリック、[メールフィルタ]を選択すると表示される「メールフィルタ」画面にて[チェック不要なIP]ボタンをクリック、画面内にメールサーバマシンのIPアドレスを登録してください。
これにより、内部転送しているものに対してフィルタチェックをパスするようになります。さらにローカルアドレス内にあってチェック不要なマシンがある場合は、そうしたIPアドレスも定義してください。
2.「ORDBによる制限」で設定済みサイトを見直し
「ORDBによる制限」(DNSRBL方式)に設定しているサイトが複数あったり、レスポンスの悪いサイトが指定されているときは、設定を減らし、レスポンスの良いサイトを1つだけに設定してください。
E-POSTコントロールセンターのメールサーバ管理から[システム管理メニュー]をクリック、[中継の制限]にある[RBL(ORDB)]ボタンをクリックすると設定が行えます。
3.メールフィルタ設定をできるだけシンプルに
メールフィルタ(mail.dat)の設定をできるだけシンプルにしてください。メールフィルタの登録パターンがたとえば100パターン以上とかなり多い状況では、フィルタ処理にどうしても時間がかかってしまいます。できるだけ、シンプルな記述にしてください。
4.レスポンスのよい有力なSURBLサイトを1つ指定
メールフィルタ設定で、RBLコマンドでURLBL方式(SURBL方式)サイトの指定ができますが、たくさんのフィルタパターンを記述するより、1つの有力なSURBLサイトを指定する方が大きい効果を発揮し、処理負担を少しでも減らすことができます。
ただし、フィルタ設定でSURBLサイトをすでに指定していて、処理時間がかかっていると思われるときは、設定をはずして確認してみることも必要です。もし、これで改善するのであれば、SURBLサイトへの問い合わせレスポンスに問題があると考えるべきです。
また、添付ファイルとしてPDFファイルなどがあり、そのファイル内にたくさんのURLが書かれているような場合は、下記の参考記事にあるように、SURBLによるメールフィルタ機能を通さないようにすれば、よけいな処理時間がかかることを避けることができます。
5.メールフィルタ設定でマシンIPをパスさせる設定に
内部転送しているものに対してフィルタチェックをパスするように、ホワイトリストにメールサーバマシンのIPを定義してください。
E-POSTコントロールセンターのメールサーバ管理から[システム管理メニュー]をクリック、[中継の制限]にある[RBL(ORDB)検査しないIP]ボタンをクリック、「メールフィルタ」にある「チェック不要なIP」ボタン、以上の2カ所の設定を行います。
6.ハードウェア上のボトルネックはまずディスクアクセス
ウイルスチェックやメールフィルタの処理時間をできるだけ減らすように、ディスクI/O性能を中心として、ディスクアクセスの性能向上を図ってください。
または、フラグメンテーションが極度に進んでいないか確認してください。
メールサーバの特性は、ファイル一つ一つはサイズが小さくても、非常に多数のファイルを頻繁に読み込んだり、書き込み、消去することです。
ほとんどのケースでディスクアクセスがボトルネックになります。
なお、そうした観点から言えば、E-Postクラスタ機能を利用するときには、ネットワーク共有ドライブを使いますが、ネットワーク共有ドライブは、ローカルドライブよりも圧倒的にディスクアクセスの性能が劣るため、処理速度の点や高負荷時には非常に不利になります。
7.相手MTAに申し入れ
もし可能であれば、相手サイト管理者に多重送信が発生している旨を伝えて、接続タイムアウト時間を延ばしてもらうようにする、という方法も検討してください。特に、MTAによっては、接続タイムアウト時間の設定を短めにしているところがあるのかもしれません。
8.巨大なメールの受信を制限する
通常は何も問題がなくても、巨大なサイズ、たとえば数百MB、数GBクラスの添付ファイル付きメールを相手側が送ってきたときには、受信完了処理までに相応の時間が当然かかりますから、同じメールを受信してしまう結果になりかねません。
同じことがたびたび起きて心配なときは、「(SMTPメール)受信時のサイズ制限」を設け、一定サイズ以上のメールを拒絶するようにしてください。
E-POSTコントロールセンターのメールサーバ管理から[システム管理メニュー]をクリック、[中継の制限]にある「メール受信時のサイズ」で設定を行います。
9.LDAPアカウント(AD)連携しているときの通信状況を確認
LDAPアカウント(AD)連携している場合、ADのドメインコントローラとのやりとりで非常に時間がかかっているというようなことは起きていないか確認してください。ADとの通信に時間がかかっていると、ユーザー・パスワード認証に時間がかかり、結果的にメール受領時に時間がかかる原因となります。それが複数のメール受信につながる可能性も出てきます。下記記事を参考にして負荷の軽減策をはかってください。
10.特定のユーザーアカウントのメールボックスフォルダに膨大なメールデータが残っていないか
特定のユーザーアカウントについて、該当メールボックスフォルダに膨大なメールデータが残ったままになっていないか確認してください。万が一、メールボックスフォルダに万単位のメールを残しているユーザーアカウントがある場合、OSのファイルシステム自体のもつ問題のため、パフォーマンス低下を引き起こし、受領に時間がかかる原因になります。メールデータファイルを削除してください。
11.メール作業用フォルダ下の特定フォルダに膨大な数のファイルが蓄積されていないか
メール作業用フォルダ下の特定フォルダに膨大な数のファイルが知らず知らず蓄積されてしまっている場合、パフォーマンス低下を引き起こし、メールの受領に時間がかかってしまう原因になることがあります。長年にわたって運用を続けている場合、ファイルが蓄積されている可能性があるのは「メール作業用フォルダ」下のdeadフォルダ、mxcashフォルダ、viruslogフォルダです。詳細は下記記事を参照してください。
(関連FAQ)
●Active Directory(LDAP)への問い合わせ負荷の軽減方法について
●クライアントからのメール送信が遅いケースとhostsファイルの必要性
●PDFファイルなどの添付ファイル付きメールをメールフィルタ機能に通さないようにするには
●メールボックスにメールデータを残す運用をしているときの注意点
●deadやmxcash、viruslogフォルダなど特定フォルダに膨大な数のファイルが蓄積されたときのパフォーマンス低下現象について