smtpfeed の機能一覧

* LMTP(RFC2033) を用いて sendmail の外部メーラとして動作します。
* 未配送宛先管理は sendmail にまかせます。
* 全てオンメモリ上で処理し、ファイルを作成しません。
* 必要な DNS への問い合わせ (MX/A RRs) を同時に行い、DNS の問い合わせに関
  する全体的な所要時間を節約します。
* 複数のホストに対する SMTP 配信処理を同時に行うことで、メールの配信に関す
  る全体的な所要時間を節約します(上限は、プロセス当たりの最大ファイルディ
  スクリプタ数の制約を受けます)。
* MX レコード単位の相乗り判定を行います(domain A の 1st MX と domain B の
  2nd MX が同じホストで、domain B の 1st MX に到達不能の場合に相乗り配送す
  る)。
* ESMTP Pipelining (RFC2197) をサポートしています。
* 同一メールの配信処理において、SMTP connection のキャッシュを行い、後に同
  じホストへの配送が必要となった場合は、できるだけ SMTP connection を再利
  用することができます(connection caching; -u option)。
* run queue 処理において、sendmail が起動した smtpfeed が継続して用いられる
  場合、SMTP で接続できなかったホストに関する情報は再利用され、接続ができない
  ホストに対するタイムアウト待ちは発生しない (failure caching)。
* Fallback MX ホスト(DNS から得られた MX のどれにも配信することができなかっ
  た場合の送り先)を指定することが可能です。
* ドメイン単位で配信先を静的に定義することができます(Static routing map)。
  (OPTIONS ファイルの -M オプションの部分を参照)
* IPv6 をサポートしています(KAME, v6d)。


既知の問題点

* ESMTP DSN(Delivery Status Notification; RFC1891) で定義されるエンベロープ
  情報は、宛先ホストが DSN をサポートしていなかった場合に捨てられてしまいま
  す。
* 8bit 文字を含むメッセージは、宛先ホストが ESMTP 8BIMIME (RFC1652) をサポー
  トしていなかった場合でも、7bit (base64 or quoted-printable) への変換を行わ
  ずに転送してしまいます。
* sendmail が提供している Checkpointing 機能(配送の途中でサーバがリブートし
  た場合でも、できるだけ重複した配送を避けるために、最新の未配送リストをファ
  イルに定期的に書き込む) が利用できません。