2009-11-30 32 views
2

可能重複:
How to Build a custom simple DNS server in C/C++需要建立簡單的DNS解析器使用C

正如標題所說我需要建立在C簡單的DNS解析...

不是在C++中,我曾在互聯網上看過一些教程,以幫助我開始,但主要是找到C++。

想知道是否有人教程都知道讓我開始或可以給我一對夫婦如何建立我的DNS請求頭用C提示...

任何幫助將非常感激。

+0

是你在尋找關於DNS協議本身的信息,或者只是在C中的網絡幫助? – 2009-11-30 14:03:58

+0

幫助它在C編碼...我得到了關於DNS的信息,但它在C中的實際編碼是卡在哪裏... – Aran 2009-11-30 14:05:59

+0

這是功課嗎?如果不是的話,你最好的辦法是大量「剽竊」djbdns(或者只是使用它)。除了它不會是抄襲,因爲djbdns的源代碼是在公共領域。如果你運行的是UNIX的某個版本,則更容易,因爲它可能未經修改就工作。 – 2009-11-30 14:11:19

回答

7

我在C.

寫了一個簡單的DNS解析器

你可以去三這一個辦法:

  1. 學習BSD襪子
  2. 使用DSNQuery
  3. 使用的gethostbyname

本例使用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)的API(或的gethostbyname()

+0

binarytides一個幫助很多謝謝... :-) – Aran 2009-11-30 15:31:14

+0

+1幫助新來C的人,並非常豐富。 – 2009-11-30 19:45:31