【问题标题】:Best way to check the availability of a SMTP server with VB.NET使用 VB.NET 检查 SMTP 服务器可用性的最佳方法
【发布时间】:2015-04-09 18:20:03
【问题描述】:

我工作的地方有很多邮件流量,几乎所有邮件都是通过 Web 应用程序发送的,我必须检查是否存在电子邮件地址。我已经阅读了很多关于它的帖子,它们都将我发送到同一个过程。

  1. 首先检查语法
  2. 然后检查域 DNS 和 MX 记录
  3. 最后检查 SMTP 服务器的响应。

(我省略了灰名单检查和邮箱检查)

嗯,我已经为前两个步骤找到了很好的资源,但我在最后一个步骤中遇到了麻烦。我尝试了一些服务,例如EmailArchitect 提供的服务,但没有结果,我认为这是因为我公司服务器的防火墙。因此,我尝试了一些通过 HTTP 方法(如 verify-mail)提供替代方案的服务,但它只提供了 DNS 检查。最后,我现在正在考虑使用MS SMTP-Diag 并从我的代码或其他东西中执行该过程,但我认为必须有其他解决方案。

所以,我的问题是,如果还有其他方法我还没有尝试过,我只想检查 SMTP 的可用性,甚至不用担心服务器停机等异常情况。非常感谢您的帮助

【问题讨论】:

    标签: vb.net email dns smtp


    【解决方案1】:

    如果 MX 记录是 URL,请检查它的 DNS 记录以确保它存在。然后尝试连接到端口 25 上的 smtp 服务器,如下所示:

      Using tcp As New TcpClient
        Try
          tcp.Connect(ip, 25)
          ' server found
        Catch ex As Exception
          ' server not found
          End Try
        tcp.Close()
      End Using ' tcpclient
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-03-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-06-03
      • 1970-01-01
      • 2017-09-06
      • 2011-01-11
      相关资源
      最近更新 更多