使用DNSCMD和Powershell 3.0将NSlogging添加到主要的非AD DNS区域

我知道有一个非常类似的问题发布了这个,但提供的修复将不会为我工作,所以不是劫持他的线程,我开始了一个新的问题。

我通过Powershell和dnscmd向某些区域添加了一个NSlogging,每个logging的结果都是相同的 – IP地址为星号,意味着它是“作为DNS查询结果检索到的IP地址,可能不代表实际logging在这个服务器上“。 当星号出现时,该区绝对不会转移。

在使用脚本之后,我查看在DNS2,3和4服务器上创build的辅助区域,如果我回去并从脚本创build的主节点中删除NS,并说明“DNS Server未加载区域”,并添加NS手动,星号消失,刷新后,辅助区域是好的,由DNS服务器加载。

如果我通过GUI中的名称服务器选项卡添加相同的服务器,则不会有星号,并且区域传输没有问题。

我正在这样做“黑洞”这些区域

这里是我创build的Powershell脚本(是的,我知道它可能不是最好的方式或最好的工具,但没有我们没有服务器2012年,但我不能导入任何模块到我的Powershell和DNSCMD工具是我必须与我一起工作,并允许我在这个networking上工作。

我有一个使用下面的脚本添加到“黑洞”的url的文本文件

$a = Get-Content "D:\filelocation\blackholetest.txt" $b = "@" foreach ($a in $a) { dnscmd DNS1 /zoneadd $a /Primary /File $a".dns" dnscmd DNS1 /recordadd $a WWW A IP.ADD.RE.SS dnscmd DNS1 /recordadd $a $b NS DNS2.fully.qualified.domain.name dnscmd DNS1 /recordadd $a $b NS DNS3.fully.qualified.domain.name dnscmd DNS1 /recordadd $a $b NS DNS4.fully.qualified.domain.name dnscmd DNS2 /zoneadd $a /Secondary MASTER.DNS.Server.IPAddesss /File $a".dns" dnscmd DNS3 /zoneadd $a /Secondary MASTER.DNS.Server.IPAddesss /File $a".dns" dnscmd DNS4 /zoneadd $a /Secondary MASTER.DNS.Server.IPAddesss /File $a".dns" } 

所以,Mass Nerder把我送到了正确的方向。 谢谢Mass。

即使我在脚本中命名NS,并且将区域传输设置为传输到NS选项卡中的服务器,但并不是因为服务器IP中的NS选项卡中的*。 通过在脚本中添加几行来设置“区域传输”选项卡中的辅助服务器的IP,并将区域传输设置为列表中的服务器,所有这一切都与世界一致,并且正在按照它所需的方式工作。 (见下面的最后脚本)

谢谢大家,再次感谢Mass为我指出了正确的方向。

 $a = Get-Content "D:\filelocation\blackholetest.txt" $b = "@" foreach ($a in $a) { dnscmd DNS1 /zoneadd $a /Primary /File $a".dns" dnscmd DNS1 /recordadd $a WWW A IP.ADD.RE.SS dnscmd DNS1 /recordadd $a $b NS DNS2.fully.qualified.domain.name dnscmd DNS1 /recordadd $a $b NS DNS3.fully.qualified.domain.name dnscmd DNS1 /recordadd $a $b NS DNS4.fully.qualified.domain.name dnscmd DNS1 /zoneresetsecondaries $a /securelist DNS2.IP.ADD.RESS DNS3.IP.ADD.RESS DNS4.IP.ADD.RESS /notify dnscmd DNS2 /zoneadd $a /Secondary MASTER.DNS.Server.IPAddesss /File $a".dns" dnscmd DNS3 /zoneadd $a /Secondary MASTER.DNS.Server.IPAddesss /File $a".dns" dnscmd DNS4 /zoneadd $a /Secondary MASTER.DNS.Server.IPAddesss /File $a".dns" } 

在意识到我可能不是我组织中唯一使用此脚本的人之后,我决定修改它以使用用户input而不是get-content,并决定使其循环。 请参阅下面的新代码。

 do { $a = Read-Host "Enter Domain name you want to add to the black hole. If you are done type Exit" if ($a -eq "Exit") {break} else { $b = "@" dnscmd DNS1 /zoneadd $a /Primary /File $a".dns" dnscmd DNS1 /recordadd $a WWW A IP.ADD.RE.SS dnscmd DNS1 /recordadd $a $b NS DNS2.fully.qualified.domain.name dnscmd DNS1 /recordadd $a $b NS DNS3.fully.qualified.domain.name dnscmd DNS1 /recordadd $a $b NS DNS4.fully.qualified.domain.name dnscmd DNS1 /zoneresetsecondaries $a /securelist DNS2.IP.ADD.RESS DNS3.IP.ADD.RESS DNS4.IP.ADD.RESS /notify dnscmd DNS2 /zoneadd $a /Secondary MASTER.DNS.Server.IPAddesss /File $a".dns" dnscmd DNS3 /zoneadd $a /Secondary MASTER.DNS.Server.IPAddesss /File $a".dns" dnscmd DNS4 /zoneadd $a /Secondary MASTER.DNS.Server.IPAddesss /File $a".dns" } } until ($a -eq "Exit")