İçeriğe geçHisnLabs
← DNS: internetin adres defteri

Ders 1 / 4 · 6 dk

DNS ne yapar

Bilgisayarların ziyaret ettiğiniz her web sitesi için neden bir isimden numaraya arama yapmaya ihtiyaç duyduğu ve bu aramayı gerçekte kimin yanıtladığı.

TCP/IP kursu, bilgisayarların birbirini nasıl numarayla adreslediğini ele alır. Kimse haber okumak veya e-posta göndermek için numaraları ezberlemek istemez, bu yüzden internetin, çevrimiçi yaptığınız hemen hemen her şeyin arkasında çalışan bir isimden numaraya arama sistemi vardır: Alan Adı Sistemi, ya da DNS. Cloudflare’ın Öğrenme Merkezi buna basitçe “İnternetin telefon rehberi” der.

Tek bir liste değil, bir ağaç

DNS, RFC 1034’e göre, “kaynaklara atıfta bulunmak için kullanılacak tutarlı bir ad alanı” etrafında, “ağaçtaki her düğüm ve yaprağın bir kaynak kümesine karşılık geldiği” bir “ağaç yapısı” olarak tasarlandı. Pratikte bu ağacın katmanları vardır, her biri isimlerin daha küçük bir diliminden sorumludur:

  • Ağacın en tepesindeki kök, hiçbir web sitesinin adresini bilmez, ama hangi sunucuların her üst düzey alan adından (.com, .org ve benzerleri) sorumlu olduğunu bilir.
  • Bir üst düzey alan adı (TLD) sunucusu da sizin belirli web sitenizi bilmez, ama o alan adından hangi yetkili sunucunun sorumlu olduğunu bilir.
  • Bir yetkili sunucu, belirli bir alan adı için gerçek yanıtı tutar: example.org’un şu anda hangi IP adresine işaret ettiği.
  • Bir çözümleyici (resolver, ya da recursor) cihazınızın gerçekte sorduğu sunucudur. Sizin adınıza ağacı aşağı doğru yürüme işini yapar, ardından her istek için tüm yürüyüşü tekrarlamak zorunda kalmamak için yanıtı bir süreliğine önbelleğe alır.

Cloudflare’ın Öğrenme Merkezi aynı fikir için bir kütüphane benzetmesi kullanır: “çözümleyici, bir kütüphanede belirli bir kitabı bulması istenen bir kütüphaneci olarak düşünülebilir”, oysa “kök sunucu, insan tarafından okunabilir ana bilgisayar adlarını IP adreslerine çevirmenin (çözmenin) ilk adımıdır… diğer daha belirli konumlara bir referans görevi görür.”

Tek bir aramayı takip etmek

  1. Mac’iniz, genellikle internet servis sağlayıcınız, Wi-Fi yönlendiriciniz veya herkese açık bir hizmet tarafından işletilen yapılandırılmış çözümleyicisine, bir ismin arkasındaki adresi sorar.
  2. Çözümleyici yanıtı zaten önbelleğe almamışsa, bir kök sunucuya hangi TLD sunucusunu deneyeceğini sorar.
  3. O TLD sunucusuna hangi yetkili sunucuyu deneyeceğini sorar.
  4. Yetkili sunucudan gerçek yanıtı ister, ardından bu yanıtı cihazınıza döndürür ve diğer istekler için önbelleğe alınmış bir kopya tutar.

RFC 1035, bu sorgular ve yanıtlar için kesin mesaj biçimini tanımlar ve bunların tipik olarak 53 numaralı bağlantı noktasında UDP veya TCP üzerinden ilerlediğini belirtir. O aramada varsayılan olarak gizli hiçbir şey yoktur; bir sonraki ders bunu kimin görebileceğini ve bunun neden önemli olduğunu ele alır.

Komut satırından bir DNS araması
dig example.com

;; ANSWER SECTION:
example.com.		233	IN	A	104.20.23.154
example.com.		233	IN	A	172.66.147.243

O tek komut, bu dersteki tüm sürecin yaklaşık saniyenin onda biri kadar bir sürede gerçekleşmesidir: çözümleyiciniz ağacı yürüdü (ya da önbelleğe alınmış bir yanıt sundu) ve ismin arkasındaki sayısal adresi geri verdi.

Akılda kalsın

  • DNS, insan tarafından okunabilir isimleri, bilgisayarların bağlanmak için gerçekte kullandığı sayısal IP adreslerine çevirir.
  • RFC 1034, DNS’i bir ağaç olarak düzenler: kök, ardından üst düzey alan adı sunucuları, ardından her alan adı için yetkili sunucular.
  • Bir çözümleyici (recursor), cihazınız adına o ağacı aşağı doğru yürür ve yanıtı önbelleğe alır.
  • RFC 1035, sorgu/yanıt biçimini tanımlar; aramalar tipik olarak 53 numaralı bağlantı noktasında UDP veya TCP üzerinden ilerler.
  • Bir DNS araması varsayılan olarak gizli değildir; özellikle şifrelenmedikçe düz, okunabilir bir trafiktir.

Kendinizi sınayın

  1. 1. DNS’in temel görevi nedir?

    • Web trafiğini şifrelemek
    • Alan adlarını bilgisayarların bağlanmak için kullandığı IP adreslerine çevirmek — Doğru.
    • Ev cihazlarına özel IP adresleri atamak
    • Bir uygulamanın hangi bağlantı noktasını kullandığını yönetmek

    Cloudflare, DNS’i “İnternetin telefon rehberi” olarak tanımlar: alan adlarını IP adreslerine çevirir.

  2. 2. RFC 1034’te tanımlanan DNS ağacında, bir kök sunucu gerçekte neyi bilir?

    • Her web sitesinin IP adresini
    • Bireysel web sitesi adreslerini değil, her üst düzey alan adından hangi sunucuların sorumlu olduğunu — Doğru.
    • Hiçbir şeyi; yalnızca süslemeden ibarettir
    • Yalnızca .com ile biten adresleri

    Cloudflare’ın benzetmesi: kök sunucu, doğrudan yanıt vermek yerine TLD sunucularına işaret ederek “diğer daha belirli konumlara bir referans görevi görür.”

  3. 3. Bir DNS çözümleyicisi (recursor) ne yapar?

    • Her web sitesinin dosyalarını saklar
    • Cihazınız adına DNS ağacını yürür ve bulduğu yanıtı önbelleğe alır — Doğru.
    • Yalnızca e-postayı işler
    • IP adreslerine olan ihtiyacı tamamen ortadan kaldırır

    Cloudflare, çözümleyiciyi gidip yanıtı bulan bir kütüphaneciye benzetir, ardından çözümleyici gelecekteki aramaların daha hızlı olması için bunu önbelleğe alır.

  4. 4. Tipik bir DNS araması varsayılan olarak şifreli midir?

    • Evet, her zaman
    • Hayır, özellikle şifrelenmedikçe düz, okunabilir bir trafiktir — Doğru.
    • Yalnızca .com alan adları için
    • Yalnızca Wi-Fi üzerinde

    RFC 1035, DNS mesaj biçimini yerleşik bir şifreleme olmadan tanımlar; DNS’i şifrelemek, daha sonraki bir derste ele alınan ayrı bir mekanizma gerektirir.

FireAI ile uygulayın

Bu dersi kendi Mac’inizde uygulamaya koyun.

Kaynaklar

Mac’inizde uygulayın

Tüm özellikleri 17 gün ücretsiz deneyin, kart gerekmez.

Mac için indir Belgeler