- PR -

SmtpMailクラスで送ったメールがInetpub\mailroot\Queueにスタックしてしまいます

1
投稿者投稿内容
かわ
会議室デビュー日: 2007/03/19
投稿数: 4
投稿日時: 2007-03-19 14:37
いつもは閲覧するだけで解決できるのですが、今回だけはどうしてもできず投稿することにしました。
VB.NETでWebアプリケーションを開発しています。VS2003、.NET Framework1.1です。

組織のメンバーが自分のメールアドレスを登録すると、そのアドレス宛に自動的にメールを送信したいと思っています。System.Web.Mail.SmtpMailクラスのSendメソッドを使っていますが、メールが送れません。見るとInetpub\mailroot\Queueにスタックしているようです。

唯一送れるのが自分のISPのドメインのアドレスで、他のドメインには送れません。当初IISの中継の制限が掛かっているのではないかと思いましたが、「上のコンピュータのリストに関係なく、正しく認証されたすべてのコンピュータを中継に使用する」にチェックが付いています。

イベントビューアで見てみると、警告で、
「DNS サーバー 'XX.X.XXX.XXX' に SMTP を使用して接続できませんでした。使用されたプロトコルは 'UDP' です。サーバーが停止しているか、またはアクセスできない状態になっている可能性があります。」
または
「次の理由により、リモート ドメイン 'XXXXX.com' へのメッセージの配信に失敗しました。The remote server did not respond to a connection attempt.」
が出ていますが、サーバーが停止しているわけではありません。

ログをとろうと思い、IISで「規定のSMTP仮想サーバー」のプロパティを開け、全般タブのログ収集を有効にするにチェックを付けてみましたが、なぜか指定してあるデフォルトのファイルが出来ません。

ちなみにスマートホストの設定はデフォルトで変えていません。

何度も何度もIISやPC(サーバ)を立ち上げなおしましたが直りません。

どなたか助けて頂けないでしょうか?よろしくお願いします。
EMMS
会議室デビュー日: 2007/03/10
投稿数: 3
投稿日時: 2007-03-20 09:25
判断出来る材料が少ないので憶測になりますが、
Outbound Port25 Blocking に引っかかってる可能性は無いでしょうか。

http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=33490&forum=6&4

似たような事例が。
かわ
会議室デビュー日: 2007/03/19
投稿数: 4
投稿日時: 2007-03-20 14:33
EMMSさん、お返事ありがとうございます。ご指摘の通りかと思います。
私の契約しているISPは、ポート25を通して動的にIPアドレスを振る形態をとっており、スパムメールをブロックするため、自分のメールサーバー(今回はIIS)からは他のドメインにメールが送信できないようになっているそうです。

これを解決するには固定IPアドレスサービスを契約するか(有料)、スマートホストを設定するしか方法がないようです。ボランティアサイトのアプリなのでコストがかかるのはできるだけ避けたいのですが、スマートホストの設定も面倒そうです。ちょっと考えたいと思います。

それにしても、最近ではこのポート25によるメール送信の形態をとるプロバイダが増えてきているそうですが、同じような問題にあたっている人はどう対処しているんでしょうかね・・・?
1

スキルアップ/キャリアアップ(JOB@IT)