使用C#查找MX记录?

Dor*_*nai 6 c# smtp mx-record

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

小智 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);
}
Run Code Online (Sandbox Code Playgroud)

如果您不想重写所有内容,有一个完整的解决方案可以完成整个工作.寻找GetMxRecords静态方法.