DNS çökerse internet altyapısı çalışır, ancak sitelere erişim zorlaşır
DNS, alan adlarını bilgisayarların kullandığı IP adreslerine çeviren dağıtılmış bir sistemdir. Küresel ölçekte erişilemez hale gelmesi fiber hatları, router’ları ve sunucuları doğrudan durdurmaz. Ancak önbelleklerdeki kayıtlar süresi doldukça web siteleri, uygulamalar, e-postalar ve bulut hizmetleri giderek kullanılamaz hale gelebilir.

İnternette bir siteye girmek için google.com, youtube.com veya başka bir alan adı yazıyoruz. Ancak bilgisayarlar bu isimlerle değil, IP adresleriyle iletişim kuruyor. DNS, yani Domain Name System, yazdığımız alan adını ilgili sunucunun IP adresine çevirerek bağlantının kurulmasını sağlıyor.
Bu yüzden DNS’e sık sık internetin telefon rehberi deniyor. Eğer DNS küresel ölçekte gerçekten çökerse internet altyapısının kendisi ortadan kalkmaz; fiber hatlar, routerlar ve sunucular çalışmayı sürdürür. Fakat bilgisayarlar ve uygulamalar hangi hizmetin nerede bulunduğunu bulamadığı için internet kullanıcı açısından büyük ölçüde kullanılamaz hale gelir.
Tarayıcıya bir alan adı yazıldığında bilgisayar önce bu adresin IP karşılığını öğrenmeye çalışıyor. Aranan kayıt cihazın veya tarayıcının önbelleğinde yoksa sorgu genellikle internet servis sağlayıcısının ya da Google Public DNS ve Cloudflare DNS gibi bir recursive resolver’ın sunucularına gönderiliyor.
Resolver cevabı bilmiyorsa DNS hiyerarşisini takip ediyor. Önce root DNS sisteminden ilgili üst seviye alan adının nerede bulunduğunu öğreniyor, ardından .com, .net veya .tr gibi TLD sunucularına ulaşıyor. Son aşamada alan adının authoritative DNS sunucusuna giderek gerçek IP kaydını alıyor.
Bu yapı tek bir merkezi veri tabanından oluşmuyor. DNS dünyanın farklı noktalarındaki çok sayıda bağımsız sistemin birlikte çalıştığı dağıtılmış bir altyapı olduğu için tek bir sunucunun kapanması bütün interneti devre dışı bırakmıyor.
Hayır. İlk anda beklenenden daha az şey değişebilir çünkü DNS sistemi yoğun biçimde önbellek kullanıyor. Bilgisayarlar, tarayıcılar, router’lar ve recursive DNS sunucuları daha önce çözdükleri alan adlarını belirli süre boyunca saklıyor.
Her DNS kaydının TTL, yani Time To Live adı verilen bir geçerlilik süresi bulunuyor. Bu süre dolana kadar resolver aynı alan adı için yeniden authoritative sunucuya gitmek zorunda değil.
Bu nedenle küresel DNS altyapısının teorik olarak bir anda erişilemez olduğunu düşünürsek daha önce ziyaret edilmiş birçok hizmet bir süre çalışmaya devam edebilir. Ancak önbellekteki kayıtlar süresi doldukça yenileri alınamaz ve giderek daha fazla site ile uygulama ulaşılamaz hale gelir.
Bazı DNS resolver’ları süresi dolmuş kayıtları olağanüstü durumlarda geçici olarak kullanmaya devam edebiliyor. Bu da büyük bir kesintinin etkisinin bütün dünyada aynı saniyede ortaya çıkmasını engelliyor.
DNS sisteminin en üstünde root zone bulunuyor. Ancak root sunucuları internetteki bütün sitelerin IP adreslerini saklamıyor; daha çok resolver’lara .com, .org, .net ve diğer üst seviye alan adlarının hangi DNS sistemlerinde bulunduğunu söylüyor.
Root sisteminin tamamı erişilemez hale gelse bile recursive resolver’lar daha önce öğrendikleri TLD bilgilerini önbellekten kullanabilir. Bu yüzden root DNS’in kaybolması da interneti anında kapatmaz.
Burada sık yapılan bir yanlış anlaşılma da yalnızca 13 fiziksel root sunucusu bulunduğu düşüncesi. A’dan M’ye kadar 13 root server kimliği bulunuyor ancak bunlar anycast sayesinde dünyanın farklı bölgelerine dağıtılmış çok sayıda fiziksel sunucu üzerinden hizmet veriyor.
Bu yapı sayesinde tek bir veri merkezinin veya tek bir ülkenin bağlantısını kesmek root DNS sistemini ortadan kaldırmaya yetmiyor. Küresel ölçekte bütün root altyapısının uzun süre erişilemez olması son derece sıra dışı bir olay olurdu.
DNS ile internetin temel ağ altyapısını birbirinden ayırmak gerekiyor. Router’ların IP paketlerini farklı ağlar arasında taşıması DNS’e bağlı değil. Bir cihaz hedef sunucunun IP adresini zaten biliyorsa teorik olarak DNS olmadan da bağlantı kurabilir. Daha önce kurulmuş açık bağlantılar da tekrar isim çözümlemesi gerekmediği sürece çalışmaya devam edebilir.
Fakat modern internet yalnızca sabit IP adreslerine bağlanan birkaç sunucudan oluşmuyor. Web siteleri, uygulamalar, bulut hizmetleri ve API’ler büyük ölçüde alan adlarına bağımlı çalışıyor. Bu yüzden DNS kesildiğinde internet fiziksel olarak hâlâ orada olsa bile günlük kullanıcı açısından sonuç “internet gitti” hissine oldukça yakın olur.
İlk bakışta çözüm basit görünüyor: DNS yoksa sitenin IP adresini doğrudan tarayıcıya yazmak. Günümüz internetinde bu yöntem çoğu büyük hizmet için yeterli değil. Tek bir IP adresi aynı anda çok sayıda web sitesine hizmet verebilir. Sunucu kullanıcının hangi siteye ulaşmak istediğini alan adı üzerinden anlayabiliyor. HTTPS sertifikaları da çoğunlukla belirli alan adlarına düzenleniyor ve yalnızca IP adresi kullanıldığında sertifika doğrulaması başarısız olabilir.
CDN kullanan hizmetlerde durum daha karmaşık. Aynı alan adı Türkiye’deki kullanıcıyı İstanbul veya Avrupa’daki bir sunucuya yönlendirirken başka ülkedeki kullanıcıya farklı IP adresi döndürebiliyor. DNS burada yalnızca “isim-IP çevirisi” değil, trafik yönlendirme sisteminin de bir parçası. Dolayısıyla Google, Netflix veya başka büyük servislerin birkaç IP adresini ezberlemek küresel DNS kesintisine gerçekçi bir çözüm olmaz.
DNS problemi yalnızca web sitelerinin açılmaması anlamına gelmiyor. Telefon uygulamaları da arka planda API sunucularına ve medya sistemlerine alan adları üzerinden ulaşıyor. WhatsApp veya benzeri bir uygulamada mevcut bağlantı kısa süre daha çalışabilir. Ancak bağlantının yenilenmesi veya farklı bir sunucuya ulaşılması gerektiğinde DNS çözümlemesi başarısız olursa mesajlaşma hizmeti de sorun yaşamaya başlayabilir.
E-posta sistemi DNS’e daha doğrudan bağımlı. Bir mail sunucusu başka bir alan adına mesaj göndermek istediğinde MX kayıtlarını kullanarak hedef mail sunucusunu buluyor. DNS çalışmıyorsa yeni e-postaların teslimatı gecikebilir ve mesajlar gönderici sunucularda kuyruğa alınabilir.
Bulut sistemlerinde etki daha da büyüyebilir. Tek bir web hizmeti kimlik doğrulama, ödeme, CDN, veri tabanı ve onlarca farklı API’ye bağımlı olduğundan birkaç DNS çözümlemesinin başarısız olması bile bütün uygulamayı kullanılmaz hale getirebilir.
Birçok şirket kendi authoritative DNS altyapısını işletmek yerine büyük DNS sağlayıcılarını kullanıyor. Bu nedenle tek bir sağlayıcı aynı anda çok sayıda alan adına hizmet verebiliyor. Bu altyapılardan biri büyük çaplı kesinti yaşadığında gerçek web sunucuları hâlâ çalışıyor olabilir. Ancak kullanıcıların DNS resolver’ları bu sunucuların IP adreslerini öğrenemediği için hizmetler çevrim dışı görünür.
Bu durum geçmişte büyük internet kesintilerinde defalarca görüldü. Kullanıcı açısından “site çöktü” gibi görünse de aslında web sunucusuna hiç ulaşılamamış olabiliyor. DNS’in internetin görünmez ancak kritik katmanlarından biri olmasının nedeni de bu. Çalıştığı zaman fark edilmiyor fakat arızalandığında birbirinden bağımsız görünen çok sayıda hizmet aynı anda bozulabiliyor.
Evde kullanılan internet servis sağlayıcısının DNS sunucuları çökerse başka bir resolver’a geçmek sorunu çözebilir. Google Public DNS veya Cloudflare gibi hizmetlere geçildiğinde bilgisayar farklı bir DNS altyapısı üzerinden isim çözümlemeye başlayabilir. Ancak sorun hedef sitenin authoritative DNS sunucularındaysa resolver değiştirmek işe yaramaz. Google, Cloudflare veya başka bir DNS hizmeti de sonunda aynı authoritative sunucudan cevap almak zorunda.
Gerçek anlamda küresel DNS altyapısının büyük bölümünün çöktüğü bir senaryoda da alternatif resolver seçmenin faydası kalmaz. Herkes aynı üst katmanlara erişmeye çalışacağı için problem resolver seviyesinin ötesine geçmiş olur. Kendi DNS sunucunuzu çalıştırmak da yalnızca belirli arızalara karşı bağımsızlık sağlar. Cache’inizde bulunmayan yeni bir alan adının bilgisini dış DNS sisteminden almadan kendiniz üretemezsiniz.
İlk dakikalarda oldukça garip bir internet ortaya çıkardı. Bazı siteler açılırken bazıları hata verir, bir kullanıcının erişebildiği hizmet başka bir kullanıcıda çalışmayabilir ve mevcut uygulama bağlantılarının bir bölümü açık kalabilir. Saatler ilerledikçe önbellek kayıtlarının daha fazlası sona erer ve sorun büyür. Yeni web bağlantıları, uygulama API’leri, e-posta teslimatları ve bulut servisleri giderek daha sık başarısız olmaya başlar.
Buna rağmen internet omurgası tamamen durmuş olmazdı. IP adresleri bilinen özel sistemler, doğrudan adreslenmiş bağlantılar ve DNS’e bağımlı olmayan bazı ağ servisleri çalışmayı sürdürebilir. Kullanıcıların kullandığı modern internet ise alan adlarına o kadar bağımlı ki uzun süreli ve gerçekten küresel bir DNS çöküşü pratikte dünyanın önemli bölümünde internetin kullanılamaz hale gelmesiyle sonuçlanırdı.
Telefon rehberi benzetmesi DNS’in temel görevini anlatmak için hâlâ oldukça iyi ancak günümüzde sistem bundan fazlasını yapıyor. Alan adlarını IP adreslerine dönüştürmenin yanında CDN yönlendirmeleri, e-posta sunucuları, hizmet keşfi ve birçok güvenlik mekanizması da DNS kayıtlarına dayanıyor.
Bu yüzden DNS’in tamamen kaybolması yalnızca kullanıcıların sitelerin IP adresini bulamaması anlamına gelmez. Modern internetin hizmetleri birbirine bağlama yöntemlerinden biri ortadan kalkmış olur. İronik olan ise sunucuların büyük bölümünün çalışmaya devam etmesi. İnternet fiziksel olarak hâlâ ayakta durur ancak bilgisayarlarımız oradaki hizmetlerin önemli bölümünü nerede bulacağını bilemez hale gelir.
1996 yılında Üsküdar’da doğan Mert Can Aka, sinema, bilim, teknoloji ve tarih alanlarına duyduğu ilgiyle şekillenen kariyerinde teknoloji editörlüğüne odaklandı. Öğrenmeyi ve bilgiyi aktarmayı merkeze alan Aka, farklı kurumlarda çeşitli görevler üstlendi. Bu süreçte MediaMarkt’ın MediaTrend Teknolojik Yaşam dergisini son sayısına kadar yöneterek dergicilik tarafında da deneyim kazandı. Bilgisayar Mühendisliği, Bilgisayar Programcılığı, Web Tasarım ve Kodlama ile birlikte Adalet ve İktisat alanlarında akademik geçmişe sahip olan Aka, bugün Technopat’ta Yazı İşleri Müdürü olarak görev yapıyor. Otomotivden yapay zekaya, donanımdan ev teknolojilerine uzanan geniş bir yelpazede ürettiği on bini aşkın içerik yüz milyonlarca okura ulaştı.
Kaynak: Technopat
