Webサービスからメールを送信する際、スパム扱いにならないようにしましょうね、の話。
まずどういった迷惑メール判定の仕組みがあるかについて。

(1)SPF(Sender Policy Framework) / Sender ID

どちらもIPアドレスベースの送信ドメイン認証。
受信先のメールサーバーが、「送信元のIP」と「Fromドメイン」をDNSサーバーに問い合わせて一致するかを判定する仕組み。

SPF SenderID

なので、メール送信側はSPFをDNSのTXTレコードに登録しておく必要アリ。
書き方はこんな感じで。

carp.com. IN TXT “v=spf1 +ip4:192.168.100.0/24 +ip4:10.0.0.0/24 ~all”

なお、SPFレコードが引けているかを確認する際は、以下のコマンドで可能。

$dig carp.com txt

これで、carp.comからのメールは、このネットワーク以外からは送りませんよ、となる。
Sender IDとSPFの基本的な仕組みはおんなじ。
ケータイキャリアのdocomo,au,softbankでも、この送信ドメイン認証を導入してます。

(2)DKIM / DomainKeys

これも送信ドメイン認証。
まず、送信元のメールサーバーが、暗号化した電子署名をメールヘッダに付加する。
身分証明書みたいなもん。

受信先のメールサーバーは、署名にある送信元ドメインのDNSサーバーに問い合わせて、
公開鍵を取得する。

なので、送信メールサーバー(SMTP)にDKIMやDomainKeysのロジックを実装する必要アリ。
なお、メール送信側/受信側ともに、サーバー負荷が増大するので、要注意。

(3)OP25B

これはプロバイダー(ISP)側の迷惑メール対策。
基本的に一般ユーザーがインターネットを使う場合は、プロバイダーと契約が必要なわけで、
プロバイダーの送信メールサーバー以外からメールを送ろうとした場合に、送信不可にする仕組み。

プロバイダー以外のメールサーバー向けをすべてブロックするパターンと、
携帯事業者のメールサーバー向けのみをブロックするパターン2つある。
迷惑メールが携帯電話宛てが多いから、携帯向けに絞っても効果が出るんだとか。
ちなみに、主要プロバイダーさんは、OP25Bに対応してます。

Webサービスでメールをユーザーなり、お客さん宛てに送付するサービスは多いと思いますんで、
迷惑メール扱いにならないように対策をー

Related posts:

  1. 全角スペースを半角スペースに変換する際に気をつけなきゃいけないこと(PHP&EUC-JPの場合)