[PHP-users 24509] Re: メールサーバー確認方法
YOSHIMURA Keitaro
ramsy @ ramix.jp
2005年 2月 14日 (月) 11:19:16 JST
らむじぃです。
ML間違えてませんか?メールシステムの話でしょう?
phpで書いてたとしても、それ以前の単なるアルゴリズムの話ですよね。
> 1.まず、@マーク以降(ホスト名)を「ping」で叩く。
> 反応が返ってこなければDNSがないという理由で、メールサーバーも存在しない。
@の右辺はホスト名ではありません。domain partです。
世の中にはNDRを返すときに自身のFQDNではなくdomain nameで返す所もあります。
やるべきはDNSでの名前解決であり、いきなりpingを叩くのはナンセンスです。
あと、icmp pingをfilterしている所もままありますのでそういう意味でもナン
センスかな。
> 2.上記ホスト名を使いMXレコードを検索する。
> 見つかった場合、メールサーバーは存在する。
> 見つからなければ、「3.」に進む。
MX -> A と探すべきです。
> 3.上記ホスト名にtelnetで25番ポートに接続テストをする。
> 反応がなければメールサーバーは存在しない。
outboundとinboundでip addressが違うことはままあります。
その判定ロジックは無意味かと思いますけど。
# 実際、某社に納めたシステムでは別々になりました。
--
<|> YOSHIMURA Keitaro/ramsy
<|> ramsy @ ramix.jp
<|> http://ramix.jp/~ramsy/
PHP-users メーリングリストの案内