Я знаю, что по этому поводу есть очень похожий вопрос, но предложенное исправление не сработает для меня, поэтому вместо того, чтобы захватить его ветку, я задал новый вопрос.
Я добавляю NS-запись в некоторые зоны через Powershell и dnscmd, каждая из которых дает один и тот же результат - звездочку рядом с IP-адресом, что означает, что это «IP-адрес, полученный в результате запроса DNS, и может не представлять фактические записи. на этом сервере ». Зона абсолютно не передается, если присутствует звездочка.
после использования сценария я смотрю на вторичные зоны, созданные на серверах DNS2,3 и 4, и там написано «Зона не загружена DNS-сервером», если я вернусь и удалю NS из первичного, созданного сценарием, и добавлю NS вручную, звездочка исчезает и после обновления вторичные зоны в порядке и загружаются DNS-сервером.
Если я добавлю тот же сервер через вкладку «Серверы имен» в графическом интерфейсе пользователя, звездочка не появится, и зона будет передана без проблем.
я делаю это, чтобы "черная дыра" в этих зонах
вот скрипт Powershell, который я создал (да, я знаю, что это может быть не лучший способ или лучший инструмент, но нет, у нас еще нет сервера 2012, я не могу импортировать какие-либо модули в свой Powershell, а инструмент DNSCMD - это все, что я должен работать и все, с чем мне разрешено работать в этой сети.
У меня есть текстовый файл с веб-адресами, которые я добавляю в «черную дыру», используя приведенный ниже скрипт
$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 направил меня в правильном направлении. Спасибо, Масса.
Несмотря на то, что я назвал NS в сценарии, и передача зоны была настроена для передачи на серверы на вкладке NS, это было не из-за * на вкладке NS в IP-адресах серверов. Добавив несколько строк в сценарий для установки 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"
}
Поняв, что я, возможно, не единственный в своей организации, кто будет использовать этот сценарий, я решил изменить его, чтобы использовать ввод пользователя вместо получения содержимого, и решил сделать его циклическим. см. новый код ниже.
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")