【问题标题】:Controlling Name Resolution server (DNS) address per request控制每个请求的名称解析服务器 (DNS) 地址
【发布时间】:2012-02-23 11:18:06
【问题描述】:

寻找有关如何生成名称解析请求并指定将请求分派到哪个服务器的想法。

我在 Linux 上工作。

到目前为止,我找到了两个选择:

  1. 使用可挂钩的外部库来实现此目的。 有人知道可用于生产系统的可靠DNS library吗?

  2. 使用网络命名空间来虚拟化堆栈并使用挂载来链接每个命名空间的名称解析服务器文件(请参阅 iproute2 最新版本)。每个命名空间发出的请求可能有不同的服务器。

请分享你的想法...

【问题讨论】:

    标签: c linux network-programming linux-kernel dns


    【解决方案1】:

    Linux 实际上带有一个解析器 API。请参阅 man(3) 页面以获取“解析器”,并将您的应用程序与 -lresolv 链接。

    DNSSEC-Tools 项目中的 libsres 库 (dnsval) 绝对可以让您向特定服务器发送查询。我知道是因为我已经在 DNSSEC-Check 应用程序中完成了这项工作,该应用程序也是 DNSSEC-Tools 项目的一部分。

    【讨论】:

    • 我认为 getaddrinfo() 会在这里提供更好的掩护。主要问题仍然存在,没有选项可以控制用于每个查询(或查询组)的 DNS 服务器,它们都使用来自系统级池(文件)的 DNS。
    • 好的,我添加了另一个我知道会做你想做的事的参考。
    猜你喜欢
    • 2016-04-08
    • 2012-06-15
    • 1970-01-01
    • 2012-12-09
    • 2013-12-12
    • 1970-01-01
    • 2016-09-11
    • 2011-08-31
    • 1970-01-01
    相关资源
    最近更新 更多