Merhaba bu makalemde Windows DNS sunucusundaki bir DNS Host A kaydının Nasil güncelleneceğinden bahsedeceğim. Yani örneğin www.astronur.com Host A kaydının ip adresini 1.2.3.4 den 5.6.7.8 olarak değiştirmek istiyoruz diyelim.
Bu işlemi Windows DNS Konsolundan arayüz kullanarak gerçekleştirebiliriz. Ancak bazen bu işlemi bir scriptin içinden gerçekleştirmemiz gerekir. İşte bunun için bu işlemin cmd komut satırından Nasil yapılacağını anlatacağım.
Öncelikle şunu itiraf edeyim cmd den DNS kayıtlarını güncelleyemiyoruz. Ancak mevcut bir kaydı silip yeniden oluşturabiliyoruz :)
Yani önce www.astronur.com – 1.2.3.4 Host A kaydını sileceğiz, ardından www.astronur.com – 5.6.7.8 Host A kaydını oluşturacağız.
Bu işlemi yapmak için kullanacağımız cmd komutu dnscmd dir. DNS rolü yüklü sunucularda kullanabileceğimiz bir komuttur.
Windows Komut Satırından DNS Host A Kaydının Silinmesi
Öncelikle silme işlemine bakalım. Silme işlemi için DNS sunucusunda komut satırını (cmd) yönetici olarak çalıştır diyerek açalım.
Daha sonra aşağıdaki şekilde komutumuzu yazalım.
dnscmd <DNS Sunucu adı> /Recorddelete <ZoneAdı> <HostA Adı> <Kayıt Tipi> /f
Benim senaryoma göre komut aşağıdaki gibi olmalı
dnscmd localhost /Recorddelete astronur.com www A /f
Bu komutu çalıştırdığımda DNS sunucumdan www.astronur.com Host A Kaydı silinecek. /f parametresi silmek için onay sormadan silinmesini sağlayacak.
Windows Komut Satırından DNS Host A Kaydının Oluşturulması
Şimdi sildiğimiz www kaydının yenisini oluşturmamız gerekmekte. Bunun içinde komut aşağıdaki gibi olmalıdır.
dnscmd <DNS Sunucu adı> /Recordadd <ZoneAdı> <HostA Adı> <Kayıt Tipi> <ip adresi>
Benim senaryoma göre komut aşağıdaki gibi olmalı.
dnscmd localhost /Recordadd astronur.com www A 5.6.7.8
Bu sefer /f parametresine gerek yok.
Gördüğünüz gibi silip yeni kayıt oluşturarak DNS Kaydını güncellemiş olduk. Tabii ki bu yaptığımız Host A kaydının ip değerini güncelleme işlemi istemci bilgisayarlara bu kaydın TTL değeri kadar sonra yansır. DNS ve TTL değeri hakkında detaylı bilgi için DNS Cache ve TTL Değeri Nedir? isimli makalemi okuyabilirsiniz.
Eğer bir script yazıyor ve DNS kaydı güncelleme ihtiyacınız var ise bu iki satırı alt alta yazarak kullanabilirsiniz. Elbette DNS sunucu adı, ZoneAdı, HostA adı gibi parametereleri değişkenlerle kullanabilirsiniz.
Hatta elinizde csv şeklinde bir liste var ve toplu DNS Host A kaydı değişikliğine ihtiyacınız var ise TechNet Script Gallery de bulunan Update Microsoft DNS records with PowerShell and DNSCMD isimli scripti kullanabilirsiniz.
Ben bu yazıyı aslında hazırlamakta olduğum bir diğer makaledeki bir adımda kullanmanız için yazdım. Diğer makalede bu makaleye referans vereceğim. Anak tek başına da birilerine lazım olabilir.
Umarım faydalı olmuştur.