PowerShell ile Bulk olarak Spesifik DNS Kayıtlarını Silmek
Merhabalar,
Aging ve Scavenging kullanmadigimiz zamanlarda –ki biz kullanmanizi tavsiye ediyoruz ve bu konuyu bir sonraki blogpost ile detayli olarak incelemeyi planliyorum- Windows Server 2008 R2 serverlarda belirli kayitlari silmek için kullanilmasi kolay birkaç PowerShell komutunu sizinle paylasmak istedim.
Asagidaki komut ile “Kayit_Adi” kismindaki alani silmek istedigimiz kayit adi ile degistirirsek bize Reverse lookup zone’da bulunan yazdigimiz kayit adi ile ayni olan butun NS kayitlarini listeliyor;
gwmi -Namespace root\MicrosoftDNS -Class MicrosoftDNS_NSType | ?{$_.recorddata -eq "Kayit_Adi" -and $_.ContainerName -like "*arpa*" } | %{$_.recorddata}
Asagidaki komut ile ise yukarida listelenen butun NS kayitlarini silebiliyoruz;
gwmi -Namespace root\MicrosoftDNS -Class MicrosoftDNS_NSType | ?{$_.recorddata -eq " Kayit_Adi " -and $_.ContainerName -like "*arpa*" } | Remove-WmiObject
Asagidaki komut ile ise yine “Kayit_Adi” kismina yazarak bütün zonelardaki ( Reverse ve Forward look zone farketmeksizin ) kayit adi ile ayni olan NS kayitlarini listeliyor;
gwmi -Namespace root\MicrosoftDNS -Class MicrosoftDNS_NSType | ?{$_.recorddata -eq " Kayit_Adi " } | %{$_.recorddata}
Bu komut yukaridaki komut ile listelenen yukaridaki bütün kayitlari siliyor;
gwmi -Namespace root\MicrosoftDNS -Class MicrosoftDNS_NSType | ?{$_.recorddata -eq " Kayit_Adi " } | Remove-WmiObject
Eger diger cesit kayitlari da silmek isterseniz MicrosoftDNS_AType, MicrosoftDNS_AAAAType, MicrosoftDNS_CNAMEType ve bunun gibi degerleri de kullanabilirsiniz. Detayli liste için asagidaki DNS VMI Classlarini inceleyebilirsiniz;
https://msdn.microsoft.com/en-us/library/windows/desktop/ms682123(v=VS.85).aspx
Kutlay ASLAN