#Skrypt dodający do DNS rekordy typu ‘A’ i ‘PTR’
$DnsServer = "DC1-MSFT" #nazwa serwera DNS
$Zone = "MSFT" #nazwa Zony
$ReverseZone = "192.in-addr.arpa"
#pobieranie danych, plik w postaci:
# Name,IP
# SRV01-MSFT,192.168.10.1
# SRV02-MSFT,192.168.10.2
$dane = import-csv D:\DNS.csv
$ip = $dane | Select-Object -expand IP
for($i=0;$i -le ($ip.Length);$i++)
{
$z = $ip[$i] | %{$_.Split(".") | Select-Object -Index 3}
$y = $ip[$i] | %{$_.Split(".") | Select-Object -Index 2}
$x = $ip[$i] | %{$_.Split(".") | Select-Object -Index 1}
$name = $dane | Select-Object -Expand Name
$nameAd = $name[$i] | %{$_.Insert($_.length,".MSFT")}
#utworzenie zapisu rev dla IP
$revip="$z.$y.$x"
#zapis danych potrzebnych do dodania rekordu PTR w DNS
#powstanie plik o zawartości np:
#
#1.10.168.192,SRV01-MSFT
#2.10.168.192,SRV02-MSFT
"$revip,$nameAd" | Out-File D:\Reverse.csv -Append
}
#nadanie nagłówków kolumnom
$header = "IP","Name"
#
$rev = Import-Csv D:\Reverse.csv -Header $header
#Dodawanie rekordu ‘A’ do DNS Forward Lookup Zone
$dane | %{dnscmd $dns /recordadd $Zone $($_.Name)A $($_.IP)}
#Dodawanie rekordu ‘PTR’ do DNS Reverse Lookup Zone
$rev | %{dnscmd $dns /recordadd $ReverseZone $($_.IP)PTR $($_.Name)}