Posts Tagged ‘ DNS

Powershell til rutine opgaver

Jeg havde i dag behov for at undersøge hvor en række domæner (ca. 50) var hostet.

Da jeg ikke havde lyst til at slå dem op manuelt, besluttede jeg mig for at undersøge hvordan man kunne gøre det på en smartere måde.

Der er selvfølgelig mange forskellige måde man kan gøre det på, men valget faldt i denne omgang på et lille Powershell script. Scriptet tjekker indholdet af en tekst fil, hvor jeg har domænerne liggende, og tjekker for hver linje i filen, hvor domæner er hostet.

Jeg endte med nedenstående script:

1
2
3
4
5
6
# Loop over each line in my domain document
foreach ($domain in Get-Content "C:\Development\Powershell\DomainList.txt")
{
# Do nslookup
nslookup -querytype=NS $domain
}

Mit script gemte jeg i nslookup.ps1 og derefter kunne jeg kører scriptet med denne kommando i powershell prompten:

1
C:\Development\Powershell\nslookup.ps1 > C:\Development\Powershell\output.txt

kommandoen gemmer outputtet fra mit script i filen output.txt.

Outputtet fra scriptet kan ses her under, og her får man hurtigt et overblik over hvor de forskellige domæner ligger

Server:   UnKnown
Address:  10.211.55.1

hardcode.dk nameserver = ns3.gratisdns.dk
hardcode.dk nameserver = ns2.gratisdns.dk
hardcode.dk nameserver = ns5.gratisdns.dk
hardcode.dk nameserver = ns4.gratisdns.dk
hardcode.dk nameserver = ns1.gratisdns.dk
Server:   UnKnown
Address:  10.211.55.1

google.com  nameserver = ns2.google.com
google.com  nameserver = ns1.google.com
google.com  nameserver = ns3.google.com
google.com  nameserver = ns4.google.com

Scriptet tog et par minutter at lave, og jeg sparede knap en times “spændende” rutine arbejde.

Tak til Kevin Steffer for at give mig ideen til at bruge Powershell til opgaven :-)