我们正在运行 Windows Server 2008 AD,为 300 多台 PC 提供 DHCP 和 DNS 服务。
当名为“harry”的 PC 桌面连接到网络时,DHCP 服务器会为其提供租约,并通过 Windows DHCP+DNS 添加适当的 A 和 PTR 记录。
这工作正常;harry.my.domain 指向 192.168.1.3,客户端知道它的名称是 harry.my.domain,192.168.1.3 指向回 harry.my.domain,一切都很棒。
现在我希望每台 PC 都有一个通配符:例如 *.harry.my.domain 解析为 192.168.1.3,但我不想为 AD 中的 300 台 DHCP PC 中的每一台手动准备一个通配符记录。
有没有办法做到这一点?
谢谢!
PS:我的需求与这个其他问题非常接近(但使用 unix、isc-dhcpd 和 bind,我更熟悉...)所以我将其作为模板:DHCP-DDNS 自动添加子域名通配符?
答案1
在 DNS 服务器上的 cmd.exe 中:
for /F %%a in (host-list.txt) do
dnscmd /recordadd mydomain.tld *.%%a cname %%a.mydomain.tld.
注意:host-list.txt 应包含网络上的每个主机名。创建 host-list.txt 的一种方法是编辑以下命令的结果:
dnscmd /enumrecords mydomain.tld @ /type A
但它并不完美,因为它在 DNS 中创建了许多新的子区域。