获取DNS TXT记录
本文关键字:记录 TXT DNS 获取 | 更新日期: 2023-09-27 18:00:24
我想在C#中查找TXT记录,特别是我想从Unity3d中查找(我认为基本上是mono 2.1,而不是成熟的.NET)。
我该怎么做?
除了实际的DNS解析之外,即使在完整的.Net框架中也没有内置任何东西来获取TXT或任何其他DNS记录。
DNS类是唯一一个处理DNS的类,它只提供IP到名称和反向的映射。
您需要直接查找库或构造请求。考虑从CodeProject上的DNS Resolver文章中查看现有示例作为起点。
https://github.com/MichaCo/DnsClient.NET使用这个nuget包。
附言:我不是附属公司,但我们确实在我们的项目
基于DnsDig项目,我创建了一个DLL,可以在任何.net(vb、c#、窗体、web等)项目上使用
https://devselz.com/software/devselz_dnsdig_dns-txt-etc-query-domain-register.zip
下载,解压缩,并添加作为您项目的参考(如果网站位于root/bin文件夹:
DnsDig.dll
nunit.framework.dll
(共126KB)
然后使用此示例作为ASP.Ne网站(vb.net代码)
Imports DnsDig
Imports Heijden.DNS
Partial Class lib_u_l_Default
Inherits System.Web.UI.Page
Public Resolver As Resolver
Protected Sub Page_Load(sender As Object, e As EventArgs) Handles Me.Load
Resolver = New Resolver
Dim SW As New System.Diagnostics.Stopwatch
SW.Start()
Dim DNSResponse As Heijden.DNS.Response = Resolver.Query(Request.QueryString("d"), QType.TXT, QClass.ANY)
SW.Stop()
If DNSResponse.header.ANCOUNT > 0 Then
For Each answerRR As AnswerRR In DNSResponse.Answers
Response.Write("<br/>" & answerRR.ToString)
Next
End If
End Sub
End Class