读书人

用NET自带的Email模块发送邮件为何域

发布时间: 2014-01-14 23:14:00 作者: rapoo

用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
[解决办法]
引用:
Quote: 引用:

192.168.1.16 .这个要用外网IP吧。

这个是SMTPSERVER,请问为什么要用外网地址呢?
不太懂这块的协议,不好意思。

这个协议无关,只记得得用外网的,你可以申请163的邮件试试就知了,
记得MS发送邮件的,他里里有并接了字符串,你要是有做登录的验证,所以要用外网的IP吧
m.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate", "1" ); //basic authentication

m.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendusername", SmtpServerUserName ); //set your username here

m.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendpassword", SmtpServerPassword ); //set your password here
[解决办法]
这个八成是smtp邮件服务器的设置问题吧。

读书人网 >asp.net

热点推荐