需要在C中构建简单的DNS解析器

时间:2009-11-30 13:59:18

标签: c dns

  

可能重复:
  How to Build a custom simple DNS server in C/C++

正如标题所说,我需要在C中构建一个简单的dns解析器......

不是在C ++中,我在互联网上寻找一些教程来帮助我开始,但主要是找到C ++。

想知道是否有人知道让我入门的教程,或者可以给我一些关于如何在C中构建我的DNS请求标题的提示......

非常感谢任何帮助。

1 个答案:

答案 0 :(得分:7)

我在C中编写了一个简单的DNS解析器。

您可以采用以下三种方式之一:

  1. 学习BSD袜子
  2. 使用DSNQuery
  3. 使用gethostbyname
  4. 此示例使用BSD套接字: http://www.binarytides.com/blog/dns-query-code-in-c-with-winsock-and-linux-sockets/

    DSNQuery()函数在Windows中可用。你正在建造什么可能有点过分。它返回DNS服务器返回的所有资源记录。 此示例使用函数DSNQuery来解析主机名:  http://support.microsoft.com/kb/831226

    此示例使用gethostbyname: http://paulschreiber.com/blog/2005/10/28/simple-gethostbyname-example/

    我强烈建议使用DNSQuery()或gethostbyname()

    等API