我在Windows Server 2008计算机上运行IIS 4下的ASP.NET 4应用程序。该应用程序使用System.Net.Mail
类通过SMTP服务器发送电子邮件。我使用端口587进行SSL连接。当我从服务器内浏览应用程序时,电子邮件发送正常。但是,当我从远程(客户端)计算机浏览到该应用程序时,电子邮件发送失败,SmtpException
具有StatusCode = GeneralFailure
。该消息表明无法连接SMTP服务器,并且内部有SocketException
。
服务器正在运行F-Secure防病毒系统。我试过禁用它,但错误仍然存在。
电子邮件发送是否有效取决于我访问网络服务器的方式:
localhost
),那么它也可以。
从服务器浏览时,邮件发送是如何工作的,但远程浏览时却没有?在这两种情况下,它都是发送电子邮件的同一台服务器。如果我从Visual Studio中浏览我的开发机器上的应用程序,那么一切正常。
请同时查看:https://serverfault.com/questions/845606/iis-randomly-returning-inet-e-resource-not-found
修改即可。服务器具有在工作时内部使用的专用IP地址,以及公共DNS解析为的公共IP地址。服务器本身未配置此公共IP地址;相反,它是由我们的互联网接入提供商执行的转发服务。是否有可能因为连接请求来自声称拥有地址的客户端,但其名称解析为不同的地址而导致SMTP服务器感到困惑?
有什么想法吗?感谢。
答案 0 :(得分:2)
经过多次调查,我们发现了根本问题。我们的Internet访问提供商在NAT表中发现了一个配置错误,该错误将公共IP地址映射到服务器的内部IP地址。这导致一些请求被删除。他们已经修复了配置,现在情况很好。
感谢所有为此提供帮助的人。