繁体   English   中英

如何从电子邮件地址获取 SMTP 服务器

[英]How to get the SMTP server from email address

我想通过特殊的电子邮件帐户自动发送邮件,但现在,我只知道电子邮件地址: tsp.monitor@qorosauto.com 和密码。 那么您知道如何获取 SMTP 服务器吗? 下面是我的 C# 代码:

        SmtpClient client = new SmtpClient();

        client.Host = "What is the SMTP Server, I want to get from email address, can you help me";
        string account = "tsp.monitor@qorosauto.com";
        string password = "Qoros111";

        client.Port = 587;
        client.EnableSsl = true;
        client.Timeout = 100000;                

        client.DeliveryMethod = SmtpDeliveryMethod.Network;
        client.UseDefaultCredentials = false;
        client.Credentials = new System.Net.NetworkCredential(account, password);

您可以通过获取电子邮件地址的主机部分(在您的示例中为qorosauto.com )并查找它的MX 记录来找到域的 SMTP 服务器。

$ dig +short mx qorosauto.com
10 euq2.qorosauto.com.
5 euq1.qorosauto.com.

主机名前面的数字表示偏好 - 在这种情况下, euq1.qorosauto.com是要连接的首选服务器。

在 .Net 中执行此操作并不简单,因为此问题的答案表明: 如何使用 System.Net.DNS 获取 dns 名称的 mx 记录?

雪上加霜的是,许多 ISP 会在防火墙中过滤您的连接,并且不会让您与除 ISP 之外的任何 SMTP 服务器通信,后者又会将邮件转发给收件人。

本质上,您希望使用您的 ISP 或组织的 SMTP 服务器- 而不是收件人 MX。

反复试验可能会让你到达那里..

  • mail.quorosauto.com
  • smtp.quorosauto.com
  • www.quorosauto.com
  • smtp.gmail.com

如果您已经用尽了所有可能性,您将需要提供您自己的 SMTP 服务器。 有一些免费赠品服务器:

http://freesmtpservers.com/

但是,如果您是专业人士,您可能想使用您组织的 SMTP 服务器,因此您可能想询问您的老板或同事。

要找出负责的邮件服务器,您必须询问 DNS。 例如,通过使用网络转到此 nslookup 页面

通常,您从提供商的域服务器开始,但您也可以从根服务器(例如 198.41.0.4)开始并请求域google.com和查询类型MX - Mail exchange

你会得到一个负责的 dns 服务器的列表。 只需从列表中选择一个(例如 192.26.92.30)并将相同的查询再次发送到该服务器。 重新运行这个序列,直到你得到一个类型为MX的列表。 只需从该列表中选择一个地址(可能是第一个,也可能是优先选择丢失值的地址)并使用它来建立您的 smtp 连接。

这就是每个邮件服务器的工作方式。 现在由您来将其实现到您的应用程序中。 ;-)

您可以尝试 mail.orosauto.com 或 smtp.orosauto.com。 登录到您的域帐户并检查邮件设置。 希望你能在那里找到邮件服务器的详细信息。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM