DNS Sorgulama: Bir İsim Nasıl Bir Rotaya Dönüşür?

Bir alan adı sözel, neredeyse edebi hissettirir. Bir IP adresi ise sayısal, özlü ve makinemsidir. DNS bu dünyaların arasında durur. İsmin kendisi, Alan Adı Sistemi (Domain Name System), teknik ve bürokratik tınlar ancak kültürel rolü zariftir: Bilgisayarlar adreslerle konuşmaya devam ederken insanların isimleri kullanmasını sağlar. Eski Latince terimlerle bu hareketi numerus'tan nomen'e, yani sayıdan isme bir geçiş olarak adlandırabilirsiniz.

Bir DNS sorgusu çalıştırdığınızda, dağıtılmış çözümleyici ve yetkili sunucu hiyerarşisine doğrudan bir soru sorarsınız: Şu anda genel bir ana bilgisayar adına hangi talimatlar eklenmiştir? Cevap basit bir hedeften çok daha fazlasını ortaya koyabilir. Bir sitenin nerede yaşadığını, postaları kimin işlediğini, bir taşımanın hala yayılıp yayılmadığını, TXT içinde bir doğrulama belirtecinin yayınlanıp yayınlanmadığını veya bir alt alan adının yalnızca başka bir yeri işaret eden bir takma ad (alias) olup olmadığını ortaya çıkarabilir.

Kayıtlar Gerçekte Ne Anlama Gelir?

Bir A kaydı, bir ana bilgisayar adını bir IPv4 adresine eşler. Bir AAAA kaydı aynısını IPv6 için yapar. Bir CNAME kaydı, bir ana bilgisayar adının kendi başına bir uç nokta değil, bir takma ad olduğunu söyler. MX kayıtları postaların nereye ve hangi öncelik sırasıyla teslim edilmesi gerektiğini tanımlar. NS kayıtları bölgeden sorumlu yetkili ad sunucularını (Name Server) işaret eder. TXT kayıtları serbest biçimli metin taşır, ancak pratikte genellikle SPF kurallarını, alan adı doğrulama belirteçlerini, DKIM parçalarını ve diğer operasyonel meta verileri tutarlar. Yetki Başlangıcı kaydı olan SOA, bir bölgenin idari omurgası gibi davranır: Birincil yetkiliyi adlandırır, seri numarasını taşır ve yenileme ve yeniden deneme davranışını etkileyen zamanlama değerlerini ayarlar.

DNS'i iyi okumak niyeti okumak demektir. Temiz bir kayıt seti genellikle tutarlı bir hikaye anlatır. Bir CDN üzerindeki bir site CNAME yönlendirmesi gösterebilir. Harici posta kullanan bir işletme web barındırıcısı tamamen başka bir yerde otururken MX'i Google, Microsoft veya başka bir sağlayıcıya işaret edebilir. Bir TXT kaydı halkın asla görmediği bir hizmet için sahipliği sessizce onaylayabilir. DNS genellikle az ve özdür, ancak nadiren anlamsızdır.

DNS Değişiklikleri Neden Yavaş Hissedilir?

Birçok insan yeni değer bir kontrol panelinde kaydedildiği için DNS değişikliğinin anlık olduğunu varsayar. Gerçek hayat daha yavaştır. Önbellekler birçok katmanda mevcuttur: Tarayıcılar, işletim sistemleri, özyinelemeli (recursive) çözümleyiciler, yukarı akış sağlayıcıları. Yaşam Süresi'nin kısaltması olan TTL, yeni bir yanıt istenmeden önce bir kaydın ne kadar süreyle yeniden kullanılabileceğini önbelleklere söyler. Daha düşük TTL değerleri planlanan taşımalar sırasında bekleme süresini kısaltabilir, ancak tüm önbellekleri bir kerede silmez. İnsanların rahatça yayılma (propagation) dediği şey bu gecikmedir.

Bir adres değişirse ve dünyanın bir kısmı hala eski sunucuya ulaşıyorsa, neden genellikle DNS'tir. Bir taşımadan sonra e-postalar eski bir sağlayıcıya düşmeye devam ediyorsa, MX TTL ve çözümleyici önbellekleri hala devrede olabilir. Bir şehir bir ana bilgisayar adını diğerinden farklı çözüyorsa, bu her zaman sabotaj veya kaos anlamına gelmez; bazen sadece zamanlama, önbellek durumu veya coğrafyaya duyarlı altyapıdır.

Bir DNS Raporunda Nelere Dikkat Edilmelidir?

Yanlış sunucuyu işaret eden A kayıtları bir siteyi doğrudan bozabilir. Eksik AAAA kayıtları ölümcül değildir, ancak ana bilgisayar adının IPv6 için tam olarak yayınlanmadığını söyler. Beklenmedik bir CNAME bir proxy katmanını veya unutulmuş bir üçüncü taraf kurulumunu ortaya çıkarabilir. Hatalı hedeflere sahip MX kayıtları posta teslimatını batırabilir. Gerçek yetkilendirilmiş bölgeyle eşleşmeyen NS kayıtları, bir panelin bir şey söylediği ve kamuya açık internetin başka bir şey gördüğü bir bölünmüş beyin karmaşası yaratabilir. Yıllar geçtikçe TXT karmaşası yaygındır; eski doğrulama dizeleri ve terk edilmiş hizmet kayıtları arkeolojik katmanlar gibi kalma eğilimindedir.

SOA seri numaraları göründüklerinden daha önemlidir. Geleneksel DNS işlemlerinde bu seri, ikincil sunucuların bölge güncellemelerini algılamasına yardımcı olur. Bir bölge değişir ancak seri işleme bozulursa, bayat yanıtlar garip şekillerde devam edebilir. Sıradan web sitesi sahipleri için seri günlük bir kontrolden ziyade adli bir ipucudur. Yöneticiler için ise değişiklik yönetiminin kendi parmak izi olabilir.

Alan Adı vs. Web Sitesi IP'si: Neden Farklılaşırlar?

Bir alan adı bir isimdir. Bir IP adresi belirli bir andaki bir konum uç noktasıdır. İkisi ilişkilidir, ancak aynı varlık değillerdir. Tek bir alan adı yük dengeleme, yük devretme (failover), anycast veya coğrafyaya duyarlı teslimat için birden fazla IP adresine çözümlenebilir. Birden fazla alan adı tek bir IP'yi paylaşabilir. Bir ana bilgisayar adı arkasındaki uygulama sunucusu yerine bir ters proxy'yi işaret edebilir. Bu nedenle alan adı kullanıcılar için kararlı ve tanıdık kalırken "web sitesi IP'si" değişebilir.

Bu değişiklikler otomatik olarak şüpheli değildir. Barındırıcılar taşınır. CDN'ler kenar noktalarını döndürür. Sağlayıcılar trafiği yeniden dengeler. Güvenlik hizmetleri kendilerini kaynakların önüne yerleştirir. Yine de ani kayıt değişiklikleri incelenmeyi hak eder. A kaydı bilinmeyen bir ağa atlarsa veya planlı bir taşıma olmadan NS kayıtları değişirse, dikkatli olmak akıllıcadır. DNS; ele geçirmelerin, süresi dolmuş hizmet artıklarının ve yanlış yönlendirilmiş altyapının görünür hale geldiği en erken yerlerden biridir.

Ne Yapılmalı ve Nelerden Kaçınılmalı?

Bir site yanlış sunucuyu işaret ettiğinde, posta başarısız olduğunda, bir taşıma eksik göründüğünde, bir TXT belirtecinin canlı olup olmadığını doğrulamanız gerektiğinde veya genel gerçekliği bir barındırma panelinin iddia ettiğiyle karşılaştırmak istediğinizde DNS sorgusunu kullanın. Ana bilgisayar adını dikkatlice kontrol edin, A ve AAAA'yı birlikte karşılaştırın, MX'i öncelik sırasına göre okuyun ve CNAME kurallarının varsayımlarınızı yeniden şekillendirebileceğini unutmayın.

Yaygın bir hatadan kaçının: Önbelleğe alınmış yerel bir yanıtı evrensel gerçek olarak ele almak. DNS tasarımı gereği dağıtılmıştır. Bir diğer hata bir taşıma sırasında eski kayıtları çok agresif bir şekilde silmektir. Örtüşme genellikle kesinti süresini önler. Ancak karşıt hata da yaygındır: Bölge geçmiş hizmetlerin bir parşömeni haline gelene kadar eski kayıtları yerinde bırakmak. İyi DNS hijyeni ne panik ne de ihmaldir. Düzenli yayınlama, ölçülü zamanlama ve periyodik incelemedir.