Nelle scorse settimane mi sono trovato nella necessità di aggiungere decine di record DNS ad un server, ho ovviamente scartato subito per pigrizia e poca tolleranza all’errore la strada di farlo a mano.
Ho creato quindi questo script power shell:
#Definizione nome server, dominio appartenenza record e posizione file con gli hosts
$ServerName = "DNS01"
$domain = "dominio.it"
#Schema del csv e path (C:\dns.csv)
#host,IP - riga intestazione obbligatoria
#host1,192.168.0.1
#host2,192.168.0.2
Import-Csv C:\dns.csv | ForEach-Object {
#Definizione delle variabili
$host = "$($_.host).$domain"
$addr = $_.IP -split "\."
#Comando di creazione degli A Record
dnscmd $Servername /recordadd $domain "$($_.host)" A "$($_.IP)"
}
Lo script con i commenti è abbastanza auto-esplicativo, deve semplicemente essere accompagnato dal suo file csv in base allo schema definito con la riga di intestazione.