İnternet tarayıcısında bir site ye girmek için ne yaparsınız? Adres barına web sitesinin ismini yazıp (örn: example.com) return tuşuna basıp sitenin açılmasını beklersiniz. Bildiğiniz üzere bilgisayar harfler ile çalışmaz sadece sayılar ile çalışır. İnternete bağlanırken de aynı durum gözükmektedir. Bilgisayar yazdığınız web sitesinin adını anlamaz ve eğer bir DNS sunucusuna bağlı değilseniz internete olan erişiminizin gerçekleşmesi çok zorlaşır. Tek çareniz girmek istediğiniz sitenin IP adresini bilip adres barına IP adresini yazıp bağlanmanız. Bütün sitelerin IP adreslerini bilemeyeceğimize göre, insanlar için daha kolay olan harfler ile oluşan site isimleriyle ile bizim ilgilenip, bu site isimlerine karşılık gelen IP adres bilgilerinin de DNS sunucusun ilgilenmesi.DNS’i bir telefon rehberine benzetebiliriz. Rehberinizdeki isimlere karşılık gelen bir telefon numarası vardır. Siz rehberdeki telefon numaralarını bilmezsiniz ama arayacağınız kişinin ismini bilirsiniz ve sizin bilmeniz gereken şeyde sadece isimdir. Peki, bu işlem tam olarak nasıl gerçekleşiyor?
1. Adres barına girmek istediğiniz web sitesinin ismini girip return tuşuna basınca bilgisayarınız ilk olarak kendi DNS önbelleğinde bu adrese karşılık gelen bir IP adresi var mı diye bakar. Eğer bulamazsa DNS sorgusu yapılması gerekir.
2. Eğer bilgisayarınız kendi önbelleğinde istenilen bilgiyi bulamazsa, internet sağlayıcınızın otomatik olarak atadığı ya da sizin kendinizin ayarladığı (örn: Google DNS) recursiveDNS sunucusundaki önbellekte, kendisi için bir DNS sorgusu yapmasını ister. RecursiveDNS sunucularına birden fazla bilgisayar bağlandığı için popüler sitelerin adresleri genellikle önbellekte bulunur ve istenilen bilgi bilgisayara geri gönderilir ve sorgulama tamamlanmış olur.
3. Eğer recursiveDNS sunucusunda istenilen bilgi yok ise, root name sunucularında sorgulanır. Name sunucusu, alan adlarıyla ilgili soruları cevaplayan bir bilgisayardır, örneğin IP adresleri. Bu bilgisayarlar sorunun cevabını bilmiyor olabilirler ama DNS sorgusunu cevabı bilen birisine yönlendirebilirler.
4.Root name sunucuları yolladığımız adrese göre sağdan sola olacak şekilde bakar örnek olarak www.example.com ve sorgumuzu “.com” için top-level domain (TLD) name sunucusuna iletir. Her TDL’nin (.com, .org, .tr) kendine özgü name sunucuları vardır. Bu sunucular ihtiyacımız olan bilgiyi bilmezler ama bizi bilginin bulunduğu sunuculara gönderirler.
5. TLD name sunucusu isteğimizin devamını inceler (www.example.com) ve sorgumuzu bu alan adı ile ilgilenen name sunucularına yönlendirir. Bu yetkili name sunucuları belirli bir alan adı için gereken bütün bilgiyi bilmekle sorumludur. Bu örnekte bizim öğrenmek istediğimiz bilgi alan adının IP adresidir. Bu yüzden yetkili name sunucusundan adres kaydını (A kaydı) isteriz.
6. Recursive DNS sunucusu, yetkili name sunucusundan alınan A kaydını alıp yerel önbelleğinde saklar. Eğer başka bir bilgisayarda bizim bağlanmak istediğimiz siteye bağlanmak isterse recursive DNS sunucusunda bu bilgiyi bulabilecektir ve 3, 4 ve 5. adımların tekrarlanmasına gerek kalmayacaktır. Bütün kayıtların time-to-live (yaşama süresi) değeri vardır. Bir süre sonra sunucu, önbelleğindeki bilginin eski kalmaması için yeni bir kopya isteyecekir.
7. Cevabı bulmuş bir şekilde recursive DNS sunucusu A kaydını bilgisayara gönderir. Bilgisayarımız bu bilgiyi kendi DNS önbelleğinde saklar, kayıttaki IP adresini okur ve bu bilgiyi internet tarayıcısına gönderir. Tarayıcı internet sunucusuyla bağlantıyı kurar ve web sitesini tarayıcıda açar.
Bu bütün işlemler, başlangıçtan bitime kadar birkaç milisaniye sürer.