gpt4 book ai didi

c# - 从域中获取 SPF 记录

转载 作者:可可西里 更新时间:2023-11-01 08:58:22 25 4
gpt4 key购买 nike

检查域的 SPF 记录的方法有哪些?

有一个网站,我可以在其中手动使用 - http://www.mxtoolbox.com/SuperTool.aspx

如何通过 ASP.NET 和 C# 实现?基本上我想验证/检查域上的 SPF 记录,如果它支持自己的邮件 Web 服务器的话。

最佳答案

我有同样的问题,并设法找到两个三个解决方案:

nslookup 解决方案

您可以通过在命令行中键入以下命令来获取 SPF:

nslookup -type=TXT <hostname>

您可以在 C# 中使用 System.Diagonstics.Process 自动执行此操作,如 this blog post 中所述.

DNS.NET 解析器项目

我找到了 this CodeProject article关于DNS解析。它带有演示项目。我运行了该项目并获得了 stackexchange.com 的以下结果:

DNS Dig screeenshot

注意: 在按下 之前,请确保将 QType 字段设置为 TXT发送按钮

以黄色突出显示的部分代表 SPF 记录。我还没有深入研究代码以了解它是如何完成的,但这似乎是上述 nslookup 解决方案的一个很好的替代方案。

[更新] ARSoft.Tools.Net 项目

如果您需要做的只是检查域是否支持邮件服务器,您可以使用 ARSoft.Tools.Net库(也可以作为 NuGet Package 获得)。

安装包后,我设法用这段代码执行 SPF 检查:

var spfValidator = new ARSoft.Tools.Net.Spf.SpfValidator();

var mailIpAddress = IPAddress.Parse("X.X.X.X");
var domain = "example.com";
var senderAddress = "sender@example.com";

ARSoft.Tools.Net.Spf.SpfQualifier result =
spfValidator.CheckHost(mailIpAddress, domain, senderAddress);

关于c# - 从域中获取 SPF 记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11846705/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com