c#:从域名获取CNAME和MX记录?

问题描述:

谁能告诉我如何以编程方式检索从互联网域名(www.example.com)使用c#的cname和mx记录? 根据我的简短研究,我知道可以通过使用UDP套接字探测到DNS服务器,但是,有可能在不知道DNS服务器地址的情况下实现,只有像“www.example.com”这样的域名? 我认为这是可能的,因为我已经使用一些第三方免费工具包成功获取MX记录,而不知道DNS服务器地址。c#:从域名获取CNAME和MX记录?

THX很多

我还没有尝试过上面提到的库,但我会考虑使用服务而不是库。我不知道期望的用例是什么,但即使在asp.net Web应用程序,跨平台移动应用程序或移动网站上,您也可以提供此功能。

  1. 查找在线DNS工具(如DNSWatch),它通过URL参数返回必要的域信息。
  2. 检查结果页面

您可以处理这个HTML的HTML stucture,但雅虎可以做的是使用HTML YQL处理器为你肮脏的工作,并返回XML或JSON的相关部分。

  1. 访问YQL Console
  2. 填写SQL语句textarea的有以下: SELECT * FROM HTML其中URL = “您PARAMETRIC DNS地址” 和 的XPath ='XPath查询来访问NS或MX记录结果HTML'
  3. 在控制台中测试您的YQL语句
  4. 开发单个客户端应用程序,该应用程序通过HTTP请求执行YQL语句。你可以从这个YQL JavaScript tutorial获得提示。

优点: - 你的应用程序可以很轻便 缺点: 结果页面的HTML -the结构可以改变或DNSWatch可以过度使用资源后,拒绝你的要求。

不过你可以在1小时内实现工作原型。

在.NET框架不支持支持直接,但平台SDK确实MSDN Entry for DnsQuery。所有你需要做的就是导入它DllImport