我有代码如下:发送邮件失败(SmtpClient)
var smtpClient = new SmtpClient("my.mail.server");
smtpClient.Send(mailmessage);
但是发送方法调用失败,出现“远程机器积极拒绝”异常消息。我知道没有防火墙阻塞因为我可以telnet到相同的地址,并通过服务器手动处理Smtp协议。我知道代码正在工作,因为我可以连接到不同于默认端口的端口25.没有软件防火墙阻止传输。
当wiresharking我可以看到telnet'ing时设置的包,我可以看到,当我尝试使用代码时,没有任何东西离开我的机器。所以这是一个安全的假设,问题出在我的机器上,并且与网络无关。
基本上我可以连接到所有其他地方而不是.NET代码,这导致我的问题可能是一个配置问题,但我缺乏什么我需要配置不同的想法。任何建议可能的原因?
编辑: 在只有两行发送邮件的项目中,我遇到同样的问题。当试图通过代码建立TCP连接时,我得到了同样的问题,所以我知道这与SMTP协议(或认证)无关,问题在于TCP套接字连接尝试被阻止,但我仍然不知道为什么
如果您启动一个新项目并只包含此代码会发生什么? – jim
你使用什么SMTP服务器? –
@DaveG不知道它不在我的管理下,它被外包了 但我确信它与服务器无关,因为TCP包永远不会离开我的机器 –