【问题标题】:DNS infrastructure conception IssuesDNS 基础架构概念问题
【发布时间】:2018-10-05 13:00:27
【问题描述】:

我给您写信是因为我的 DNS 基础设施.DNS 存在概念问题。我的基础设施由一台 DNS 机器(递归或转发)和另一个根据客户端的来源具有发言权的权威组成(即使不是这种情况,我们也可以将其同化为 Bind)。这台授权机器不应该直接查询,而必须经过另一台。在这里总结一下基础设施:

> Client Location 1     Client Location 2   Client Location 3
>               \           |           /
>               DNS Recursive ou Forwarding
>                           |           
>               DNS Authoratitve with 3 « views ».

我想到了不同的解决方案来解决这些问题:

  • 在 DNS 递归(或转发)上创建不同的端口,每个端口都包含一个 DNS,该 DNS 对应于查询权威 DNS(并因此识别来源)的视图。但我发现这个解决方案相当丑陋,如果观看次数增加,这种情况会迅速增加。
  • 使用 DNS 扩展:EDNS 来转发客户端网络(但这似乎相当复杂)。

我想知道您是否有其他解决方案,如果没有,什么是最好的。 提前谢谢你!

【问题讨论】:

    标签: dns bind powerdns


    【解决方案1】:

    第一个解决方案似乎并不真正可行,因为几乎无法更改各种终端客户端操作系统中的默认 DNS 端口。相反,您需要在单独的 IP 地址上使用单独的递归名称服务器,并且每个客户端都配置有它需要使用的特定名称服务器。

    第二种解决方案可以工作,它是 ECS 的“EDNS 客户端子网”功能,在RFC7871 中进行了描述,并在各种名称服务器中得到支持。参见绑定中的示例:https://www.isc.org/wp-content/uploads/2017/04/ecs.pages.pdf

    现在您确定需要此设置,或者这是实现目标的唯一方法吗?很难提出其他想法,正如您从一开始就描述的解决方案,但不是真正的问题,也不是您的限制。

    例如,在某些情况下,只需为每个客户端配置不同的域搜索列表即可解决。 client1 将具有 client1.example.com 作为后缀,client2 将具有 client2.example.com 等等。现在,只有一个标准递归名称服务器和一个用于example.com 的权威名称服务器,没有任何类型的扩展或复杂设置,当client1 尝试解析www 时,它将(可能)得到与client2 不同的回复也尝试将www 解析为最后两个完全限定域名确实会有所不同(www.client1.example.comwww.client2.example.com),因为搜索列表不同。当然,这在很大程度上取决于每个客户端上运行的应用程序类型。

    使用更简单的名称服务器(例如 dnsmasq)也可能会有所帮助,但同样您的空间问题还不够明确,无法确定建议的内容。

    【讨论】: