• ベストアンサー

DNSサーバへの問い合わせ方法?

私は、今オリジナルのメールサーバを作っています。クライアントからのメールを受け付け、それにある処理を加えて送信元に送り返すというものです。 しかし、今のままではこのメールサーバを悪用され、いらずらメールを送信されてしまう可能性があります。 そこで、送信元のメールアドレスやサーバが実在するものか調べる方法はないのでしょうか? クライアントから受け取る情報は以下の通りです。 ・サーバ名 ・送信元のメールアドレス ・送信先のメールアドレス やはり、情報量が少ないということもあり、難しいでしょうか?今、考えているのはサーバ名をDNSサーバに問い合わせてやれば、なんとかなりそうなんですが、その方法が分かりません。 どなたか、この方法が分かる方がいらっしゃいましたら、どうかご教授願います。 また、他の方法がありましたら、教えて頂けると幸いです。 よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • Xaval
  • ベストアンサー率58% (61/105)
回答No.2

ローカルのnslookupを呼び出す手もありますよ。 $a = `command `; だったかなんだか、システムコールの仕方がありますよね? なお、Aレコードではなく、MXレコードも見てください。 docomo.ne.jpなどは、通常の引き方すなわちAで引けません。 引数をつけるだけなので、 詳しくは、nslookupのリファレンスを見てください。 ついでに、フィルタは以下のようにするといいと思います。 ・A,MXともに正引き不可のドメインをはじく ・逆引き不可の接続元IPアドレスをはじく ・海外のダイヤルアップIPと思しきものをはじく(接続元IPアドを逆引きして) ・ブラックリスト(niku.2ch.netなど)に載っているIPアドレスをはじく

その他の回答 (1)

  • ralf124c
  • ベストアンサー率52% (232/446)
回答No.1

この仕組みそのものが危ない機能だと思います。 送信元を偽装して送ってくるやつはどうなるでしょうか? この機能はメール自動中継とほぼ同義だと思います。 スパムやアタックの温床になってしまうのがオチかと思います。 ただ、よくあることで発注元はここまで考えてくれないのでフォーム解答者への自動返信機能とか付けたりしますが・・・当初は危ないからとよく諭したのですが、言う事聞くクライアントなんかひとりもいやしねえ! せめて、メールアドレスは複数個記述できないようにしてください。

関連するQ&A