根域的 Windows 服务器 DNS

根域的 Windows 服务器 DNS

我有一台 Windows Server 2003 计算机用作 DNS 服务器,我用它来覆盖许多 DNS 条目,以将它们路由到本地 IP 地址而不是公共地址。我可以为 www.foo.com 创建 DNS 条目 (HOST / A),但我一直无法弄清楚如何覆盖 foo.com 本身的 DNS 条目。

以下是我所拥有的:

在公共 DNS 服务器上,foo.com 和 *.foo.com 指向 1.2.3.4,1.2.3.4 是一个 NAT 设备,它将 1.2.3.4 映射到本地网络 10.1.1.1 中的一台机器

我正在尝试在我的网络内部创建一个 DNS 条目,以便使用本地 DNS 服务器在 foo.com 上执行查找的客户端将解析为 10.1.1.1 而不是公共地址(因为我无法通过 NAT 设备“往返”)。

我在 DNS 管理单元中创建了一个名为“foo.com”的新区域,并为“www”添加了一个主机条目,其 IP 地址正确(10.1.1.1)。这似乎可以正常工作。但是,当我尝试为“”(无名称)添加条目时,配置 UI 中的一切似乎都正常工作,我得到了一个条目,其名称显示为“(与父文件夹相同)”,但客户端无法解析此名称。

有没有什么办法可以完成我想做的事情?

答案1

我不知道 Windows 如何做到这一点,但 BIND 的方法是:

[root@dhdx421 internal]# head -n 20 example.com
$ORIGIN .
$TTL 21600      ; 6 hours
example.com              IN SOA  ns3.example.com. hostmaster.example.com. (
                                2009111201 ; serial
                                10800      ; refresh (3 hours)
                                3601       ; retry (1 hour 1 second)
                                259200     ; expire (3 days)
                                21600      ; minimum (6 hours)
                                )
                        NS      ns2.example.com.
                        NS      ns3.example.com.
                        A       172.18.1.100
$ORIGIN example.com.

上面的 A 记录是 example.com 记录。指定*.example.com表示“anything”.example.com,但“anything”不能为空,因为您指定了“.”,并且句点在 DNS 中具有特殊含义。

此外,请记住,如果您覆盖了其他人的 DNS,除非您正确设置转发,否则您将只能解析已覆盖的地址(即,使您的服务器具有权威性的地址)。

相关内容