MailBox UnAvailable 5.7.1。服务器响应为:5.7.1无法中继

时间:2015-01-08 13:29:36

标签: asp.net-mvc-4 c#-4.0 smtp sendmail

如果我发送xyz.rw域中的邮件(如abcd@xyz.rw,test@xyz.rw),下面的代码工作正常。当我尝试将邮件发送到我的Gmail帐户时,发生以下错误。它不适用于其他域邮件ID

  

MailBox不可用5.7.1。服务器响应是:5.7.1无法执行   中继

请告诉我如何解决这个问题。

SmtpClient smtp = new SmtpClient();
smtp.Port = 25;
smtp.Host = "10.8.12.242";
smtp.UseDefaultCredentials = false;
smtp.EnableSsl = false;
smtp.DeliveryMethod = SmtpDeliveryMethod.Network;
smtp.Credentials = new System.Net.NetworkCredential(senderID, senderPassword);
smtp.Timeout = 30000;

MailMessage message = new MailMessage(senderID, "abcd@xyz.rw", "Information Entreprise", "Hello, that message has been sent as consiquence of mail sending test.");
try
{
    smtp.Send(message);
}
catch (Exception ex)
{
    MessageBox.Show(ex.Message);
}

2 个答案:

答案 0 :(得分:1)

550 5.7.1无法中继'代码错误通常发生在用户尝试在其域外发送电子邮件时。

错误原因:

  1. 发送邮件服务器无法识别发件人。
  2. 在服务器上验证发件人时存在一些问题 因而限制他们发送电子邮件。
  3. 接收者域名的收件人政策已施加限制 发件人的域/部门。 Exchange数据库已损坏。
  4. 正确配置的邮件服务器极其严格 转发,以防止它被垃圾邮件发送者滥用来发送邮件。
  5. 所以,这是邮件服务器中的配置问题。它不允许您(您的IP,您的发件人地址)向收件人发送邮件。

    解决方案:您需要将地址添加到IIS管理器。转到 IIS管理器 - > Default SMTP Server - > Properties - > Access - > Relay - > allow only from the list below - > add - > '地址' - >点击OK

答案 1 :(得分:0)

在我的情况下,解决方案设置为 访问-连接控制-连接:“除以下列表外的所有列表” 访问-中继限制-中继:“以下列表以外的所有内容” 安全-添加域用户

并记住将防火墙设置设置为允许端口25出站