Windows Server

DNS Hizmetini Windows Server 2003’den Windows Server 2008 R2 Üstüne Taşıma DNS Migration

DNS bir isim çözümleme servisi olup internet dünyasının vazgeçilmez servislerinden biridir. Yine DNS pek çok kurumsal yapıda benzer şekilde isim çözümlemek için kullanılır. DNS konusunda portalımızda yazılmış çok detaylı bir makaleyi aşağıdaki linkte bulabilirsiniz.

 

http://www.cozumpark.com/blogs/windows_server/archive/2008/05/12/dns-doma_3101_n-name-system.aspx

 

Benim bu makaledeki amacım ise sizlerin hali hazırda bildiği, kullandığı bu servisin 2003 işletim sistemi üzerinden 2008 R2 işletim sistemine nasıl taşınacağı konusuna yer vereceğim. Yine Active Directory ortamları için bu konuda yazılmış makalelerimiz bulunmaktadır. Hali hazırda Active Directory Integrated bir Zone’ un ADC kurulumu ( ve tabiki üstüne dns servisini de kurarak ) ile beraber diğer sunuculara otomatik olarak replikasyonunu rahatlıkla yapabilirsiniz ( AD veri tabanında tutulduğu için zone bilgileri AD replikasyonu ile bu zone ortamdaki diğer DC lere ve onların üzerindeki DNS lere replike olur ). Yani özetle DC+ DNS olan bir ortamda siz ek bir sunucuyu ADC + DNS yaparsanız zaten DNS zone’ ları ( AD integrated olan ) otomatik olarak ilk replikasyon ile diğer DNS sunucusuna taşınacaktır. Benim amacım ise domain ortamları değil workgroup ortamlarında çalışan ( daha çok Hosting veya ISP yapıları için ) DNS sunucuları üzerindeki zone ların nasıl taşınacağını anlatacağım.

 

Bu işlem için temelde iki yolu bulunmaktadır.

 

1 – Primary – Secondary Çalışma yapısını kullanma

2 – Yedekleme ve Geri Yükleme işlemini gerçekleştirme

 

İlk olarak daha kolay ve kısa bir yöntem olan yedekleme – geri yükleme kısmını anlatacağım

Aşağıdaki resimde görüldüğü gibi sistemim üzerine pek çok zone bulunmaktadır.

 

 

image001

 

 

DNS zone’ larının bulunduğu Windows Server 2003 sistemimiz üzerindeki DNS servisini durdurmak ile işe başlayalım.

 

 

image002

 

 

Daha sonra ise DNS zone bilgilerinin tutulduğu “C:WindowsSystem32dns” klasörünü ve kayıt defteri yedeğini alalım.

 

 

image003

 

 

Klasörü komple alabilirsiniz.

Kayıt defterinde ise aşağıdaki dal’ı komple yine yedekleyebilirsiniz

[HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrentVersionDNS ServerZones]

 

 

image004

 

 

Bu iki bölümü yedekledikten sonra Windows Server 2008 sunucusuna bu dosyaları taşıyalım.

Windows Server 2008 üzerinde DNS servisini durdurmadan önce zone’ ları kayıt defterinden yükleyecek şekilde ayarlayalım

 

 

image005

 

 

Bu işlem için 2008 sunucusu üzerinde DNS konsoluna sağ tıklayarak özellikler bölümünden gelişmiş ( advanced ) sekmesine gelerek “Load zone data on startup” bölümünü “From registry” olarak değiştirin ve DNS Servisini durdurun.

 

Bu işlemlerin ardından aldığınız DNS yedeğini yine aynı dizine yapıştırın

 

“c:windowssystem32dns” ( not; üzerine yazma konusunda elinizi korkak alıştırmayın ancak tabiki burada hiç zone olmadığını düşünüyorum, eğer mevcut bir zone var ise zaten bunun üzerine yazılmayacaktır )

 

Daha sonra ise aldığınız “reg” dosyasına çift tıklayarak registry kayıtlarının da güncellenmesini sağlayın. Son olarak ise DNS Servisini çalıştırmanız yeterli olacaktır.

 

 

image006

 

 

Bu temel işlemlerin sonucunda Windows Server 2003 sisteminde çalışan DNS zone’ larını Windows Server 2008 R2 üzerinde çalışan bir DNS servisine taşımış olduk.

 

Bu ilk yöntemdi, ikinci yöntem ise mevcut 2003 sistemimizdeki zone’ ların teker teker 2008 üzerinde birincil – ikincil zone ( primary – secondary ) mantığı ile replikasyon sonucu taşınması olacaktır. Bu yöntem yine çok sayıda dns sunucusu olan sistemlerde kullanılabilir. Örneğin bir data center, Hosting firması veya bir servis sağlayıcı olarak elinizde misal 40 DNS server var ise, her bir zone için tek tek kayıt güncellemek son derece zor olacaktır, bu nedenle bir adet birincil dns server ile bunlardaki her değişikliği belirli zamanlarda alacak ikincil dns leri kullanmak mantıklı olabilir.

 

Bu işlem için ilk olarak 2003 sistemimiz üzerinde hangi zone ların replikasyonunu istiyor isek bu zone üzerinde “zone transferi” özelliğini açmamız yeterli.

 

 

image007

 

 

Zone üzerinde özellikler – Zone Transfers sekmesinde ister her sunucu için istersek sizin diğer DNS Serverların ip adreslerini yazabilirsiniz.

 

Bu işlemin ardından yeni sunucu üzerine giderek bir zone oluşturacağız .

 

 

image008

 

 

Ancak bu zone “Primary Zone” değil bir “Secondary Zone” olacaktır, yani asıl kayıtlar 2003 sistem üzerinde olacak ve oradan bir güncelleme yapılınca yine zone üzerindeki ayarlarda belirtilen sürede bilgiler 2008 sistemlere gelecektir.

 

 

image009

 

 

image010

 

 

Zone ismi olarak mevcut 2003 sistemler üzerinde tanımlı olan ve yukarıdaki adımlarda olduğu gibi zone transferini açtığınız zone isimlerinden birini yazabilirsiniz ( ben yukarıda cozumpark.com zone için transfere izin vermiştim )

 

 

image011

 

 

Bu bölümde ise 2008 DNS sistemlerinin ikincil zone oluştururken bilgileri alacağı birincil dns ip adresini yazıyoruz ( takdir edersiniz ki bu dns üzerinde cozumpark için bir bilgi yok, bu bilgiler ilk dns sunucusu üzerinde ve zaten bizim amacımızda oradaki bilgileri buraya çekmektir ).

 

 

image012

 

 

Bu sayede zone oluşturma işlemini tamamladık, ancak zone’ un yüklenmediğini göreceksiniz.

 

 

image013

 

 

Bunun temel sebebi bu tanımlamanın ardından ilk defa bizim zone bilgisini master olan ( primary ) DNS sunucusu üzerinden çekmemiz gerekmektedir.

 

 

image014

 

 

Bu işlem için zone üzerine sağ tıklayarak açılan menüden “Transfer new copy of zone from master” seçeneğini seçiyoruz. Bunu seçmemizin sebebi, ikinci seçenek olan “tranfer from master

” işlemi SOA kaydındaki seri numarasına bakıyor, ancak bizde henüz zone yüklü olmadığı için SOA kaydı da yok. Bu işlemin hemen ardından birkaç kere zone üzerinde tazeleme işlemi ( refresh ) yaptığımız zaman zone bilgilerinin geldiğini görebileceğiz.

 

 

image015

 

 

İkinci yöntem için yani Secondary zone yaptıktan sonra hangi aralıklar ile zone transferi gerçekleşir derseniz bunun kararını zone içerisindeki SOA kaydı belirlemektedir. SOA içerisindeki temel ayarlar aşağıdaki gibidir

 

Serial Number; Zone için güncellik bilgisidir. Zone içerisindeki her bir değişiklik ( ekleme, çıkarma, değiştirme vb ) bu sayıyı “1” arttırmaktadır. Bu sayı eğer bu zone ikinci bir dns üzerinde secodary zone olarak eklenmiş ise, bu ikincil zone’ un güncelleme olup olmadığını anlaması için kullanılır. Örneğin serial number primary zone üzerinde 53, secondary üzerinde 50, ikincil dns yine bu soa kaydındaki “Refresh interval” süresi dolunca birincil dns sunucusuna gelir ve bu numarayı kontrol eder, eğer numara aynı ise bir zone transferi talep etmez, ama numara daha güncel ise bu durumda bir değişiklik olduğu belli olur ve zone transferi talep eder.

 

Refresh interval; Bu zone için secondary bir zone tanımlanmış ise, bu secondary zone’ un hangi sürede bir güncelleme kontrolü yapacağını belirleyebiliyoruz.

 

Retry interval; Zone transferi için birincil dns sunucusuna erişimde sorun yaşanması durumunda ( yani refresh interval süresi doldu, dns sunucusuna gittiniz ancak cevap alamadınız ) bir sonraki deneme süresini belirleye biliyoruz.

 

Expires After; Herhangi bir nedenden dolayı ikincil dns sunucusu, birincil dns sunucusuna ulaşamaz ise bu durumda üzerindeki kayıtları ne kadar süre saklayacağını ayarlayabiliyoruz.

 

Time To Live (TTL); Bu zone için varsayılan kayıt cache süresidir. Yani bir istemci veya diğer bir dns bizden sorgu ile bir kayıt öğrenirse bunu cache inde ne kadar süre ile tutacağını belirleyen bir kayıttır.

 

TTL for this record; Yukarıda anlattığımız TTL zone içerisindeki kayıtlar için geçerli olup bu TTL süresi sadece SOA kaydı için geçerlidir.

 

Bu durumda sizde istediğiniz bir süre zarfında ikincil dns sunucusu üzerindeki zone’ un birincil dns üzerindeki zone’ dan bilgi çekmesini sağlayabilirsiniz. Bu işlem sırasında kullanılan protokolün ismi incremental zone transfer (IXFR)’ dir. Bu protokol sayesinde bu transfer sırasında tüm zone değil sadece en son transfer den sonra gerçekleşen değişiklikler alınır (full zone transfer (AXFR) protokolünde ise her seferinde tüm zone yüklenir, bu eski bir protokol olup non Microsoft sistemlerinde daha çok görülmektedir ).

 

Yine zone transferi yönteminde bir konuda Notify yani bilgilendirme yöntemidir. Bu da SOA kaydındaki iletişim süresini beklemek yerine birincil dns sunucusu üzerindeki zone’ da herhangi bir değişiklik yapıldığında ikincil dns sunucusuna bir bilgilendirme mesajı gönderilir. Bu süreç nasıl işler ?

 

DNS zone üzerinde herhangi bir güncelleme yapıldığında ilk olarak SOA kaydındaki serial number güncellenir. İkinci olarak bu dns sunucusu zone üzerindeki transfer edilecek sunuculara ( bunu biz tanımlayabiliyoruz ) bir bilgilendirme mesajı gönderir. Bu mesajı alan ikincil dns sunucuları hemen mesajı gönderen dns sunucusuna “SOA-type query” bir sorgu göndererek SOA daki “serial number” değerini alır, eğer bu değer kendi üzerinde tuttuğu zone içerisindeki SOA kaydındaki “serial number” dan büyük ise ( ki mutlaka büyüktür çünkü birincil dns bir uyarı mesajı gönderdiğine göre zone da değişiklik oldu, bu soa sorgusu aslen 15dk da bir git kontrol et gibi mekanizamada işe yarar ve örneğin 15dk, 1saat ve benzeri bir periyotta dns e giden ikincil dns soa sorgusu ile serial number aynı ise herhangi bir transfer yapmaz) bu durumda ikincil dns birincil dns den zone transfer isteği gönderir (AXFR IXFR protokolü ile ).

 

Peki zone transferi sırasında notify özelliği nasıl açılır ?

 

Bunun için ilgili zone üzerinde sağ tıklayarak özellikler bölümünden “Zone Transfer” sekmesine geliyoruz.

 

 

image016

 

 

Bu sekmede daha öncesinde sizlerle beraber yaptığımız gibi zone bilgilerini alacak dns sunucularını tanımlayabiliyoruz, birde yine alt bölümde “Notify” butonuna basarak açılan pencereden otomatik olarak güncelleme mesajları gönderilecek ip adreslerini seçebiliyoruz.

 

Son olarak secondary olarak açtığınız bu zone’ u istediğiniz ancak primary yapabileceğinizi unutmayın

 

 

image017

 

 

Görüldüğü gibi basit iki yöntem ile workgroup ortamlarındaki dns serverların içerisindeki zone bilgilerini kolaylıkla taşıyabiliyoruz. İlk yöntem daha çok migration ve yedekten dönme işlemleri için kolaylık sağlarken ikinci yöntem Hosting ve benzeri yapılarda birden çok name server yani dns konumlandırmanız gerektiği zamanlarda dns zone ları içerisindeki değişikliklerin otomatik olarak diğerlerine gönderilmesi için kullanılır.

 

Umarım faydalı bir makale olmuştur.

Hakan Uzuner

2002 yılından beri aktif olarak bilişim sektöründe çalışmaktayım. Bu süreç içerisinde özellikle profesyonel olarak Microsoft teknolojileri üzerinde çalıştım. Profesyonel kariyerim içerisinde eğitmenlik, danışmanlık ve yöneticilik yaptım. Özellikle danışmanlık ve eğitmenlik tecrübelerimden kaynaklı pek çok farklı firmanın alt yapısının kurulum, yönetimi ve bakımında bulundum. Aynı zamanda ÇözümPark Bilişim Portalı nın Kurucusu olarak portal üzerinde aktif olarak rol almaktayım. Profesyonel kariyerime ITSTACK Bilgi Sistemlerinde Profesyonel Hizmetler Direktörü olarak devam etmekteyim.

İlgili Makaleler

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Başa dön tuşu