您还可以查看opendns.net并检查它是否适合您的应用程序
以下是一些示例代码,可帮助您入门:
var query = new DnsQuery();
query.Servers.Add("ns1.domainname.com");
query.Servers.Add("ns2.domainname.com");
query.Servers.Add("ns3.domainname.com");
query.Domain = "domain.com";
query.QueryType = Types.TXT;
if (query.Send())
{
Console.WriteLine("TXT:");
var response = query.Response;
foreach (ResourceRecord answer in response.Answers)
{
Console.WriteLine(answer.RText);
}
}
query.QueryType = OpenDNS.Types.MX;
if (query.Send())
{
Console.WriteLine("MX:");
var response = query.Response;
foreach (MX answer in response.Answers)
{
Console.WriteLine("{0} {1}", answer.Preference, answer.Exchange);
}
}
Run Code Online (Sandbox Code Playgroud)
虽然这是一个很老的问题。由于 .NET Framework 仍然不支持此操作,因此仍在开发新的库来执行此操作;)
看看http://dnsclient.michaco.net。它易于使用、高性能且开源!
它也适用于 .NET Core 跨平台!
我认为最好的选择是研究 DNS 协议(这很容易)并使用 .net udp 套接字自己实现它。
DNS 确实是一个易于理解和实施的协议。
此外,您可以使用 DnDNS 的源代码来查看程序/协议中的捕获
| 归档时间: |
|
| 查看次数: |
6375 次 |
| 最近记录: |