【问题标题】:What are the APIs to get SOA record from a dns query in linux c programming?从 linux c 编程中的 dns 查询获取 SOA 记录的 API 是什么?
【发布时间】:2013-05-27 15:48:35
【问题描述】:

我使用 dig 来查看 dns 查询相关信息,但现在我需要找到一些用于 dns 查询的 API,通过这些 API,我可以在 C 中以编程方式获取我的查询的特定 SOA 记录。最后一个选项我可以通过阅读套接字来尝试并解析格式。

但是,如果有人告诉我有关 c 在 linux 上的任何函数和 API 可以让我获取 SOA 记录,那对我来说将是非常棒的。谢谢您的帮助。

【问题讨论】:

    标签: c linux dns


    【解决方案1】:

    首先要尝试的是res_* API。这是自 4.3BSD 以来 Unix C 库的一部分,这意味着它非常便携(只要您不关心 Windows)但是它也有点,呃,不方便使用(特别是您必须仅使用最少的库帮助来解析查询响应)并且不支持像 DNSSEC 这样的闪亮现代的东西。

    如果你想要一些更精致的东西,你将不得不去第三方库;我听说过关于 Unbound 的好消息,但我自己从未使用过。

    【讨论】:

    • 感谢您的回答.....我是初学者,我想我正在寻找一些煮熟的东西,因为我以前使用过一些 ssl 库等......另一方面,根据你的解决方案,我试图通过首先使用 res_* 来获得这个。我什至在函数 API 的简单实现方面都遇到了困难。 ATlast 我想问一些带有 res_* 的示例程序,这对我来说真的很有帮助,再次感谢。
    • 我不知道在哪里可以找到示例 res_* 代码,抱歉。您可能会发现 Unbound 更易于使用; 4.3BSD 时代的 API 通常对初学者非常不利。 Unbound has a tutorial.
    猜你喜欢
    • 1970-01-01
    • 2013-04-06
    • 2010-12-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-10-08
    • 1970-01-01
    相关资源
    最近更新 更多