我想获得有关指定主机名的DNS别名的信息。我用了 :
IPHostEntry hostEntry = Dns.GetHostEntry("hostname")
Run Code Online (Sandbox Code Playgroud)
不幸的是,如MSDN中所述:
此方法未填充返回的IPHostEntry实例的Aliases属性,并且该属性始终为空。
我计划通过以下方式获取DNS别名:
在注册表中获取DNS服务器的ipAddresses SYSTEM\CurrentControlSet\Services\Tcpip\Parameter。
使用DNS WMI提供程序在DNS服务器中获取CNAME记录。但是在这种情况下,需要访问DNS服务器的权限。
我的计划正确吗?是否有另一种未经DNS服务器许可即可获取CNAME记录的方法?
小智 0
关于 DNS Lookup 项目,值得注意的是它有一个名为 DnsProvider 的辅助类,它提供了在不使用注册表的情况下从系统获取 DNS 服务器的“正确”方法。
有关详细信息,请参阅 http://dnslookup.codeplex.com/wikipage?title=Usage&referringTitle=Documentation 。