« 久しぶりにすき家に行ってきた | メイン | 平成19年度 AC 認定者のブログ »

2006年10月28日

携帯にメールを転送

僕が持っている携帯電話のキャリアは、最大手の DoCoMo です。スパムメールが届くのが嫌で、携帯電話からのメールしか届かないように設定してあります。

この設定には、少し盲点があります。携帯電話を対象とした ML を受け取れなくなるんですよね。

ML の設定方法には色々ありますが、大きく分けると「送信元を送信者にする」と「送信元を ML のアドレスにする」の2つに分けられるんじゃないかと。指定受信の設定を行っている場合、前者のメールが受け取ることができなくなります。

なぜ?

えっと。リレーサーバを挟んでしまうので、キャリア側が送信元偽装と判断してしまうのですよね。ん?分かりにくいか…。要は From を example@docomo.ne.jp にしておきながら smtp.example.com から送信されるのを防いでいるというわけ(指定受信設定の場合のみ)。

ということは、指定受信の設定で From ではなく、送信元 SMTP サーバを設定できればいいんだけど、普通な携帯利用者にはわかりっこない。ので、キャリア側がそんな機能を準備してくれるのは、絶望的なわけです。

ということで、オレオレゲートウェイを準備します。

オレオレゲートウェイの役割

1. mb@example.com でメールを受け取る
2. From を mb@example.com に書き換える(指定受信対策)
3. 携帯電話 mobile@example.jp に送信

ML の受信用に、外部にメールアドレスを準備するだけですね…。そして From が example@docomo.ne.jp などの場合に備えて、書き換えると。そうすれば、指定受信設定で mb@example.com を許可していれば、携帯で受信できる。

From を書き換えて送信するプログラム (mb_forward.pl)

CPAN モジュールを使えばもっと美しく書けるような気がしますが、標準インストールな環境で動くように心がけているので、一部は力技で。タイトルの抽出なんか、感動物ですよ。

外部プログラムの起動方法として procmail を利用します。別に .forward でも良いと思いますけど。

$ vi .procmail
:0 :
* for <mb@example\.com>
| /home/user/mb_forward.pl

レシピに To: mb@example.com などと書くのは時代遅れですね…。とか言ってみる。今回のように for <mb@example.com> などと書けば、送信者が BCC で送信しても、きちんと振り分けられます。

僕が .procmail を利用するのは、エイリアス設定で mb に相当する部分が、何であっても受信するようにしているからです。メールを受信して云々をいうプログラムを結構書くので、レシピは沢山あります。

example@docomo.ne.jp は、説明用のメールアドレスとして利用しました。もしかしたら実際に利用者がいる可能性もありますので、悪戯とかの無いようによろしく御願いいたします。

それでは、良き携帯 ML ライフをお過ごしください。

2006年10月28日 17:24 | Programming

トラックバック

コメント

:0 f
| formail -i "From: mb@example.com"

:0 :
! mobile@example.jp

投稿者 IKeJI : 2006年10月28日 21:22

>> IKeJI さん
もっと調べるべきだった…。
送信元を本文に加えることもできるのかな?

投稿者 ceekz : 2006年10月28日 21:39

携帯でML使いまくりのオレが来ましたよ.それをやると,
・自分からはそのアドレス(ここではmb@example.com)で返信できない
・返信すると,mobile@example.jp が分かってしまう
という罠がある気がするのだが,どうだろうか.
なので,DoCoMoというキャリアを捨てるのが正解だと
思うわけだが…….
あるいは携帯からgmailを読むとかでもおk.
gmailの携帯モードはかなりコンパクトだし.

投稿者 takot : 2006年10月31日 15:59

>> takot さん
今回の場合ですと mobile@example.jp でやり取りしたいんだけど、出来ないので、便宜的に受信のみ mb@example.com を使うだけなので、特に問題ないです。
関係ないけど、そろそろ 504iS から FOMA に代えたいな…。流行の GPS 付のを探すかな。

投稿者 ceekz : 2006年10月31日 17:14