用NET自带的Email模块发送邮件,为什么域内的可以收到,外部邮件都发送不出去?
已经确认服务器上POP3、SMTP和IMAP都是开着的
网页登录邮箱,发送内部、外部邮件都可以。
用代码可以发送内部邮件(domain内的),但是发送外部邮件就不行。
Web.Config
<system.net>
<!--email begin-->
<mailSettings>
<smtp from="OSS@XXX.com">
<network host="192.168.1.16" password="Win2003" port="25" userName="XXX\OSS" defaultCredentials="true" />
</smtp>
</mailSettings>
<!--email end-->
</system.net>
C# Code:
using (var smtpclient = new System.Net.Mail.SmtpClient())
{
smtpclient.EnableSsl = true;
smtpclient.DeliveryMethod = SmtpDeliveryMethod.Network;
System.Net.ServicePointManager.ServerCertificateValidationCallback = (s, certificate, chain, sslPolicyErrors) => true;
smtpclient.Send(message);
}
------解决方案--------------------192.168.1.16 .这个要用外网IP吧。
------解决方案--------------------参考详细:
http://www.cnblogs.com/insus/p/3471534.html
http://www.cnblogs.com/insus/p/3474472.html
------解决方案--------------------
这个协议无关,只记得得用外网的,你可以申请163的邮件试试就知了,
记得MS发送邮件的,他里里有并接了字符串,你要是有做登录的验证,所以要用外网的IP吧
m.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate", "1" ); //basic authentication
m.Fields.Add("http://schemas.microsoft.com/cdo/configurat