DNS Nedir Kısaca : DNS, Domain Name System’in kısaltılmış şeklidir. Türkçe karşılığı ise Alan İsimlendirme Sistemi olarak bilinir. Yani internetin telefon rehberidir. Kolay hatırlanan isimleri (Hosting.com.tr) IP adreslerine çevirir (77.245.157.253)

DNS, 256 karaktere kadar büyüyebilen host isimlerini IP’ye çevirmek için kullanılan bir sistemdir. Host ismi, tümüyle tanımlanmış isim (full qualified name) olarak da bilinir ve hem bilgisayarın ismini hem de bilgisayarın bulunduğu internet domainini gösterir. DNS, verilen bir makina adının IP adresini çözerek makinaların internet üzerinde host isimleri ile haberleşmelerine olanak tanır.

DNS’in Kullanım Amacı Nedir?

DNS’in kullanım amacı son derece basittir, kolay anlaşılabilir ve kullanılabilir makine ve alan isimleri ile makine IP adresleri arasında çift taraflı dönüşümü sağlar. IP adreslerinin gündelik hayatta kullanımı ve hatırlanması pek pratik olmadığı için domain isimlendirme sistemi kullanılır.
Ana amacı, ağ üzerinden gelen alan adı veya IP numarası ile ilgili sorgulamalara yanıt vermektir. Bu amaç için çok yaygın olarak “Berkeley Internet Name Domain (BIND)” yazılımı kullanılmaktadır. Siz bir siteye erişmek istediğinizde, DNS sayesinde hangi site nerede, hangi IP hangi bilgisayara ait olduğu belirlenir ve istediğiniz yere erişirsiniz.

DNS Nasıl Çalışır?

DNS sistemi isim sunucuları ve çözümleyicilerinden oluşur. İsim sunucuları olarak düzenlenen bilgisayarlar host isimlerine karşılık gelen IP adresi bilgilerini tutarlar. Çözümleyiciler ise DNS istemcilerdir. DNS istemcilerde, DNS sunucu ya da sunucuların adresleri bulunur.
Bir DNS istemci bir bilgisayarın ismine karşılık IP adresini bulmak istediği zaman isim sunucuya başvurur. İsim sunucu, yani DNS sunucu da eğer kendi veri tabanında öyle bir isim varsa, bu isme karşılık gelen IP adresini istemciye gönderir. DNS veri tabanına kayıtların manuel girilmesi gerekir.
İnternet adresleri ilk önce ülkelere göre ayrılır. Adreslerin sonundaki tr, de, uk gibi ifadeler adresin bulunduğu ülkeyi gösterir. Örneğin tr Türkiye’yi, de Almanya’yı, uk İngiltere’yi gösterir. ABD adresleri için bir ülke takısı kullanılmaz çünkü DNS ve benzeri uygulamaları yaratan ülke ABD’dir.
İnternet adresleri ülkelere ayrıldıktan sonra com, edu, gov gibi daha alt bölümlere ayrılır. Bu ifadeler DNS’de üst düzey (top-level) domainlere karşılık gelir. Üst düzey domainler aşağıdaki gibidir:

  • Com : Ticari kuruluşları gösterir.
  • Edu : Eğitim kurumlarını gösterir.
  • Org : Ticari olmayan, hükümete de bağlı bulunmayan kurumları gösterir.
  • Net : İnternet omurgası işlevini üstlenen ağları gösterir.
  • Gov : Hükümete bağlı kurumları gösterir.
  • Mil : Askeri kurumları gösterir.
  • Num : Telefon numaralarını bulabileceğiniz yerleri gösterir.
  • Arpa : Ters DNS sorgulaması yapılabilecek yerleri gösterir.

Alan isimleri, ağaç yapısı denilen ve belli bir kurala göre dallanan bir yapıda kullanılmaktadır. Amerika haricinde, internete bağlı olan tüm ülkelerdeki adresler, o ülkenin ISO3166 ülke kodu ile bitmektedir. Türkiye`deki tüm alt alan adresleri, .tr ile bitmektedir.

DNS Zone Dosyaları ve Kayıt Tipleri

DNS için gerekli olan dosya türleri şunlardır:

  • named.boot: Bu dosya, DNS çalışmaya başladığında program tarafından okunan ilk
    dosyadır.
  • named.local: Bu dosya, “loopback” denilen ve makinenin kendisini gösteren adresin
    çözümlenmesi için kullanılan bir dosyadır.
  • named.ca: En üst seviyede bulunan ve “root server (.)” denilen makinelerin adreslerini içerir.
  • named.hosts: Bu dosya, DNS çalıştıran bir alt alanda bulunan makinelerin adreslerinin yazıldığı yani sorumlu olduğunuz alanınızda çalışan tüm bilgisayarların adreslerinin tutulduğu dosyadır.
  • named.reverse: Bu dosya, yukarıda açıkladığımız named.hosts dosyasının içerdiği IP adreslerini makinelerin isimlerine çevirmek için kullanılır ve yapı olarak named.local dosyasına benzer.

DNS Dosyaları İçinde Kullanılan Anahtar Sözcükler
Directory: Belirtilen dosyaların bulunacağı dizin burada verilir.
Cache: Cache dosyasını belirtir.
Primary: Ana sunucunun (Primary Name Server) adı burada verilir. Alana ait temel bilgiler burada bulunur ve program ilk olarak aramaya bu sunucudan başlar.
Forwarders: Ana sunucuda makine bulunamazsa burada belirtilen sunucuda aramaya başlanır
Serial: Burada seri numarası bulunur ve bu numaranın dosyada yapılan her değişiklikten sonra bir artırılması gerekir.
Refresh: Burada, ayarlama yapılan dosyaların ne kadar sürede bir kendini yenilediği belirtilir.
Retry: Burada ne kadar sürede bir aramanın yeniden deneneceği belirtilir.
Expire: Ne kadar süre sonra aramanın sonlandırılacağı belirtilir.
Ttl (Time-To-Live): Belirtilen süre kadar cache tutulabileceğini belirtir.
Name: Makine adı belirtilir.
Data: IP numarası belirtilir.

 

DNS Tarihçesi

1984 yılına kadar DNS diye bir şey yoktu. O yıla kadar isim-IP çözümlemesi HOSTS adında bir metin dosyası ile yapılmaktaydı. İnternetteki bilgisayarların isimleri ve IP adresleri bu dosyaya elle kaydediliyordu. İnternetteki bilgisayarların her birinde bu dosyanın bir kopyası bulunmaktaydı. Bir bilgisayar bir başka bilgisayara ulaşmak istediğinde bu dosyayı inceliyor eğer dosyada o bilgisayarın kaydı bulunuyorsa IP adresini alıyor ve iletişime geçiyordu.
Bu sistemin iyi işleyebilmesi için HOSTS dosyası içeriğinin hep güncel kalması gerekiyordu. Bunu sağlamak için de dosyanın aslının saklandığı ABD’deki Stanford Üniversitesine belli aralıklarla bağlanarak kopyalama yapılıyordu.
Ama internetteki bilgisayarların sayısı arttıkça hem bu dosyanın büyüklüğü olağanüstü boyutlara ulaşmaya başladı hem de internetteki bilgisayarların dosyayı kopyalamak için yaptığı bağlantı Standford’daki bilgisayarları kilitlemeye başladı.
Tek bir HOSTS dosyası kullanmanın başka bir kötülüğü de şuydu; bütün bilgisayarlar aynı düzeyde yer aldığı için bir bilgisayar isminin bütün internette bir eşinin daha bulunmamasını sağlamak gerekiyordu.
Bu sorunlar yüzünden internet yetkili organları 1984 yılında DNS’i ürettiler. DNS hem bilgisayar veri tabanını dağıtık bir yapıya sokuyor hem de bilgisayarlar arasında hiyerarşik bir yapı kurulmasını sağlıyordu.
DNS’de dağıtık veri tabanı şöyle sağlanıyordu. Bilgisayarlar bulundukları yerlere ait oldukları kurumlara göre sınıflandırılıyorlardı. Örneğin Türkiye’deki bilgisayarların listesini(.tr domaini) Türkiye’den sorumlu bir DNS sunucu makine tutuyordu. Böylece internet ortamındaki bütün bilgisayarların bilgisinin tek bir yerde tutulması zorunluluğu kalmıyordu.

Yaygın DNS Sunucu Yazılımları

Yukarıda da anlatıldığı gibi en yaygın kullanılan DNS Sunucu yazılımı BIND, Daha sonra Microsoft DNS Servisi, PowerDNS gibi farklı platform ve niteliklerde yazılımlar mevcuttur. İşlediği veri miktarı göz önünde bulundurulduğunda çok az kaynak tüketimi gerçekleştirirler. Bu sayede çok eski ve düşük CPU gücüne sahip ilkel bir sunucuda bile onbinlerce DNS Zone yayın yapabilir. Detaylı karşılaştırma için ilgili DNS Sunucu yazılımları bağlantısını inceleyebilirsiniz.