我们正在推出 IPv6,我正在考虑我们的 DNS 策略。这不是一个技术问题,而是一个“最佳实践”问题。
我们内部有 Active Directory,域控制器既处理我们“内部”区域(例如domain.local
,16.172.in-addr.arpa
)的权威 DNS,也处理所有用户的递归。我们有大约 1200 名用户,因此 5 个域控制器可以轻松处理 DNS 递归,只需转发到思科 Umbrella DNS对于他们不具有权威性的区域。我们严重依赖动态 DNS,无论是内部主机的 A 记录还是 PTR 记录。对于我们的公共区域,我们使用DNS 变得简单。
现在我们正在研究 IPv6,我们希望保留在内部使用动态 DNS 的能力,包括 AAAA 和 PTR 记录。由于 IPv6 中不需要 NAT,因此给定主机在内部和外部将具有相同的地址。是否仍然应该为 ip6.arpa 区域维护两个单独的数据库(一个内部数据库和一个外部数据库)?另一种方法是在我的防火墙中设置一条规则,允许公共 DNS 服务器成为 ip6.arpa 区域的辅助服务器。我不是说允许整个互联网直接查询我的 DC,而是允许 DNS Made Easy 传输代理保留它的副本。
这样做会“泄露”我所有的内部 DNS 条目,但这真的那么可怕吗?
当我写这篇文章时,我在想,最好只维护两个数据库——一个内部数据库和一个外部数据库,就像我过去一直做的那样。社区怎么看?
答案1
这是一个最佳实践问题,没有真正的正确答案,但这些是我会问自己以得出适合我的正确答案的问题。
这样做会“泄露”我所有的内部 DNS 条目,但这真的那么可怕吗?
如果你的老板不认为这很糟糕,你也不认为这很糟糕,那么你就有答案了。IPv6 比 IPv4 需要更长的时间来抓取,但它仍然可以被抓取。如果你不关心 DNS 查找是否2001:db8::1产量您的金融服务器.示例.com 并且您的管理链中似乎也没有人关心,您可以使用面向 DNS 授权的边缘来管理所有 IPv6 反向 DNS,然后就完成了。
是否仍然应该为 ip6.arpa 区域维护两个独立的数据库(一个内部数据库和一个外部数据库)?
这是由上一个问题决定的。如果这是应该做的,下一步就是确定你的私有路由网络的逻辑分离。
- 在理想情况下,您的网络团队已经明确划分出无法通过互联网路由的 IPv6 空间部分,您可以使用这些部分来设计如何在权威服务器之间划分反向 DNS。您可以在面向内部的递归服务器上设置转发器,以将针对私有路由 V6 空间的反向请求引导至您的内部权威机构,并让递归将其余请求正常发送到面向互联网的权威机构。
- 在一个不太理想的世界中,您的 IPv6 空间处于设计不断变化的状态,没有明确划分公共和私有的规则。在最坏的情况下,您的地址被防火墙分散在公共和私有之间,而没有被划分为明确用途的网络。这使得您的递归服务器的转发规则难以(几乎不可能)管理,并且您可能不得不在公共和私有之间管理相同权威区域的两个完全不同的版本。如果没有明确的自动化来在您的设备退役时删除记录,这种情况很快就会变得不一致。