Добавление записей NS в основные зоны DNS без AD с помощью DNSCMD и Powershell 3.0

Я знаю, что есть очень похожий вопрос по этому поводу, но предложенное исправление не сработает для меня, поэтому вместо того, чтобы захватить его ветку, я задал новый вопрос.

Я добавляю NS-запись в некоторые зоны через Powershell и dnscmd, каждая из которых дает один и тот же результат - звездочку рядом с IP-адресом, что означает, что это «IP-адрес, полученный в результате запроса DNS, и может не представлять актуальные записи на этом сервере ». Я не могу импортировать какие-либо модули в свой 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"
}
1
задан 27 September 2016 в 22:39
1 ответ

Итак, Масса Нердер послал меня в правильном направлении. Спасибо, Массачусетс.

даже несмотря на то, что я называл NS в сценарии и Zone transfer было установлено для передачи на серверах в NS вкладке, это было не из-за * в NS вкладке в IP серверов. Добавив несколько строк в сценарий, чтобы установить IP вторичных серверов во вкладке Zone Transfer и настройка передачи зоны, чтобы перейти к серверам в списке, все в порядке с миром и работает так, как это должно быть. (см. окончательный сценарий ниже)

спасибо всем и еще раз спасибо 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")
2
ответ дан 3 December 2019 в 20:34

Теги

Похожие вопросы