![分割 DNS——LAN 的私有地址,Internet 的全局地址?](https://linux22.com/image/778661/%E5%88%86%E5%89%B2%20DNS%E2%80%94%E2%80%94LAN%20%E7%9A%84%E7%A7%81%E6%9C%89%E5%9C%B0%E5%9D%80%EF%BC%8CInternet%20%E7%9A%84%E5%85%A8%E5%B1%80%E5%9C%B0%E5%9D%80%EF%BC%9F.png)
我认为这个问题以前有人问过,但我似乎找不到正确的答案。如何在我的 Windows 服务器上设置拆分 DNS,以便特定的 FQDN 应该是两种 IP 地址之一的服务器 - 如果请求来自本地端点(LAN),则提供私有地址,如果请求来自外部(Internet),则提供全局地址(NATTed)地址?
我该如何进行此配置?或者是否有其他更巧妙的解决方案来规避此问题 - 目前我已将 DNS 配置为提供 GLOBAL 地址(NATTed),但这导致本地客户端也以迂回的方式到达目的地,而如果为它们提供本地地址,它们可以直接到达目的地。
DNS 服务器位于“内部”。
我考虑过以下选项:
选项1:https://docs.microsoft.com/en-us/windows-server/networking/dns/deploy/split-brain-dns-deployment
这是无法配置的,因为 DNS 服务器只有一个接口,并且它无法区分来自外部和内部的查询,因为来自外部的请求被防火墙“未进行自然对接”,所以它本身看起来像一个内部请求。
这也是我无法配置的原因-(选项2)https://docs.microsoft.com/en-us/windows-server/networking/dns/deploy/split-brain-dns-deployment- 因为当流量到达 DNS 服务器时,它看起来就像内部流量本身。
那么,我有哪些选项可以正确配置它?
谢谢你!
答案1
如果您无法添加第二个 NIC(为什么不呢?),您可以选择向服务器 NIC 添加第二个 IP 地址并将其用于 DNS 策略,因为它需要专用 IP 地址(第 3 层),而不一定是专用 NIC(第 2 层)。
其中一个 IP 地址指向 NAT 路由器,另一个用于 LAN 客户端。