DNS Server Nedir? Nasıl Çalışır? Çıkabilecek Sorunlar Nasıl Çözülür?

Emre AYDIN tarafından yazıldı
Salı, 02 Mayıs 2006 11:54

DNS Server nedir? Sanırım sektörümüzde ki çoğu kişi DNS Server ların ne amaçla kullanıldığını biliyor. Peki, çalışma prensibi ve sorun çözmede kullanabileceğimiz yöntemler hakkında detaylı bilgi sahibi miyiz? Bu yazımda DNS Server ların çalışma prensipleri ve sorun anlarında neler yapılabileceği üzerinde duracağım.

Tüm DNS hiyerarşisi bir root domain yapısına bağlı dır ve bu root domainler tüm dünyada ticari kuruluşların, kamu ve eğitim kuruluşlarının yönettiği 13 ayrı sunucuda tutulur. Örneğin yerel ağımızda ki bir istemci test.mshowto.org ismine ulaşmaya çalışıyor. Bu işlemle ilgili olarak on adımlık Şekil-1 i inceleyebiliriz.

Şekil-1

Şekil-1 de görüldüğü gibi Local DNS Server recursive olarak test.mshowto.org adresinin IP sine ulaşana kadar diğer tüm iterative DNS Server ları sorgular. Bu sorgu çerçevesinde root DNS Server lar gün içerisinde bir çok sorguya cevap vermek ile yüz yüze kalabilirler. Peki, bu yoğunluğu bir DNS Server nasıl kaldırabilir? İşte burada devreye önbellekleme (cache) giriyor.

Şekil-1 deki Local DNS Server test.mshowto.org için ilk sorgusundan, mshowto.org ismini nerede bulacağını öğrenir. Bu sayede mshowto.org için gelecek isteklerde, Local DNS Server, Root DNS Server ları sorgulamadan authoritative DNS Server dan çözümlemeyi sağlayacaktır. Bu sayede iletişim trafiğinde %40 lara varan bir azalma olacaktır.

Test.mshowto.org için ikinci istek geldiğinde ise zaten az önce bu adres önbelleğe alındığı için external ortama hiç sorgu çekilmeden çözümleme gerçekleşecektir. Bu isim çözümlemesindeki kazancımız ise yaklaşık % 75 ler seviyesindedir.

Önbellekleme sadece DNS Server larda yapılmaz. İstemci bilgisayarlarda önbellekleme yaparlar. Çoğumuz sorunsuz çalışan network ortamında DNS Serverlara dönüp bakmayız. Ta ki çalışanlarınızdan bir tanesi sizi arayana kadar. Şimdi bir DNS Server ın nasıl çalıştığına bakalım. Gelen istek için ilk olarak önbelleğe bakılır. Cevap önbellekte ise DNS Server buradaki kaydı alır ve client bilgisayara aktarır. Önbellekten çözümleme gerçekleşmez ise işlem devam eder. Önbellek yapısı içinde daha öncesinde çözümlenmiş adresler ve c:\windows\system32\drivers\etc\host dosyasındaki girdiler bulunur. Gelen ilk istekten sonra kayıt önbelleğe alınır ve TTL (Time to Live) değerine göre önbellekte kalır. Önbellekteki adresler ve kalan TTL değerlerini komut satırında ipconfig /displaydns yazarak görebiliriz. Burada dikkat etmemiz gereken nokta ise Windows ulaşamadığı isimleri de önbelleğe kaydeder. Buradaki TTL süresi Windows un sürümüne bağlı olmakla beraber 5–15 dakika arasında değişir. Bu tarz kayıtları önbellekten silmek için ise ipconfig /flushdns komutunu kullanabiliriz. Bu işlemi DNS Server konsolunda Clear Cache şeklinde de gerçekleştirebilirsiniz.

Önbellek hem daha öncesinde çözümlenmiş isimleri hem de host dosyası içerisindeki kayıtları bulundurur. Çoğu zaman istemcilerimizin sıkça çözümledikleri yerel ya da external isimleri host dosyasına girerek ağ trafiğini azaltma yoluna gidebilirsiniz.

Gelen istek önbellek ten çözümlenemez ise Windows TCP-IP nin özeliklerinde bulunan Preferred DNS Server da tanımlanmış sunucuya recursive bir sorgu gönderir ve cevap (olumlu ya da olumsuz) için 1 saniye bekler. Cevap alamazsa sistemde tanımlı tüm ethernet kartları üzerinden aynı DNS Server a aynı sorguyu bir daha gönderir ve cevap için (olumlu ya da olumsuz) 2 saniye bekler. Yine cevap alınamaz ise sistemde tanımlı tüm ethernet kartlarından üzerlerindeki tüm DNS Server lara 3 farklı sorgu daha gönderilir. Her bir sorgunun zaman aşımı 2 saniye, 4 saniye ve 8 saniye şeklindedir. İsim çözümleme işleminin toplam süresi 17 saniyeyi aşamaz. Ayrıca bir ethernet kartı üzerindeki tüm DNS Server lara istekte bulunup hiçbirinden cevap alınamaz ise o ethernet kartı 30 saniye süreyle dikkate alınmaz.

Şimdi, biraz da DNS sorunlarında en sık başvurduğum araçların başında gelen nslookup.exe ye göz atalım. Örnek olarak:

Nslookup www.mshowto.org

şeklinde bir sorgu çekersek TCP-IP nizde bulunan Preferred DNS Server a domain adı için sorgu çekilir. Fakat komutu aşağıdaki gibi uygularsak:

Nslookup www.mshowto.org 10.0.5.60

Bilgileri bizim belirlediğimiz 10.0.5.60 DNS Server ından çeker. Sorgulama süreci içinde daha fazla bilgi edinmek istiyorsak set debug veya set d2 seçeneklerini kullanabiliriz. Bir diğer seçenek ise set type tır. Set type ı kullanarak türe (A, NS, MX…) göre sorgu çekebiliriz.

DHCP Client servisi çalışan sistemlerde, Windows TCP-IP sinde tanımlı DNS Server lara kendini kayıt ettirir. İstemci sistemin IP adresini manuel bile verseniz bu işlem bu şekilde gerçekleşecektir. DNS server lardaki dinamik yapı buradan gelmektedir. Bir bilgisayarın DNS e bu şekilde kayıt edilmesini istemiyorsak TCP-IP nin özelliklerindeki Register This Connection’s Addresses kutucuğunu boşaltabiliriz.

DNS Server lardaki SRV kayıtları ise Active Directory e özel değildir. Bunlar, bir alan adındaki servisleri, servislerin sunucularını ve kullanacakları protokolleri tanımlayan DNS kayıt türleridir. Örneğin, www.mshowto.org web sitesini tanımlayan bir SRV kaydı şöyle görünebilir:

_http._tcp.example.com SRV 0 0 80 www.mshowto.org

Active Directory ortamında DC ler üzerilerinki DNS Server lar için dört tür SRV kaydı yaratırlar:

_ldap._tcp.mshowto.org SRV 0 0 389 dc.mshowto.org

_kerberos._tcp.mshowto.org SRV 0 0 88 dc.mshowto.org

_ldap._tcp.dc._msdcs.mshowto.org SRV 0 0 389 dc.mshowto.org

_kerberos._tcp.dc._msdcs.mshowto.org SRV 0 0 88 dc.mshowto.org

Bu kayıtlar istemcilerin mshowto.org için Active Directory kaynaklarını bulup bu kaynakları yetkilendirmesi için gerekli LDAP ve Kerberos servislerini nerede bulacaklarını bilmelerini sağlar.

Evet, Bu makalemde DNS Server ların çalışma prensipleri, istemcilerin isim çözümlemelerinde gerçekleştirdiği işlemler, sorun anında yapılabilecek ilk birkaç işlem ve SRV kayıtlarından bazılarını inceledik. Makalenin bundan sonraki çıkabilecek DNS sorunlarında yardımcı olacağını düşünüyorum.


http://mshowto.org/index.php/server-ailesi/server-2003/95-dns-server-nedir-nasal-kabilecek-sorunlar-nas

Followers


Recent Posts