使用C#查找MX记录?

7

我该如何在C#中查找邮件服务器的MX记录?

3个回答

5
您可以使用RobertRPK所提供的答案来获取给定域名的MX记录。但是,您需要一个DNS服务器才能完成这项工作。如果您想检测代码执行的机器的DNS服务器,则可以使用以下方法。
NetworkInterface[] adapters = NetworkInterface.GetAllNetworkInterfaces();
foreach (NetworkInterface adapter in adapters)
{
    IPInterfaceProperties properties = adapter.GetIPProperties();

    if (properties.DnsAddresses.Count > 0)
        foreach (IPAddress ipAddress in properties.DnsAddresses)
             dnsServers.Add(ipAddress.ToString(), 53);
}

如果您不想重写一切,那么完整的解决方案(或在此处github)将完成整个工作。查找GetMxRecords静态方法。


3

看一下codeproject.com上的DNS解析器项目。该库有一个Resolver类,其中包含一个名为Query的方法,可用于查找MX记录。


0

NMail项目包含一个位于trunk/NMail.DnsClient下的DNS客户端。该项目可在Apache许可证下使用。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接