Check-Host.cc

Start of Authority (SOA) Kontrol Aracı

SOA (Start of Authority) kaydı, herhangi bir DNS zone'unun yönetimsel kalbi olarak işlev görür. Zorunlu bir kayıttır; geçerli bir SOA olmadan, alan adı küresel routing tablosunda var olmaktan çıkar. SOA Payload'u, alan adı için temel operasyonel parametreleri dikte eder, hangi sunucunun kesin gerçeklik kaynağı olduğunu, onu kimin yönettiğini ve ikincil, yedekli name server'ların zone verilerini nasıl kopyaladığını dikte eden katı zamanlama mekanizmalarını belirler.

Zone Seri Numarası ve Durum Kopyalama (State Replication)

SOA Payload'undaki en kritik tam sayı Seri Numarasıdır (Serial Number). Endüstri kuralı gereği, bu genellikle bir tarih damgası olarak biçimlendirilir (örneğin, 24 Ekim 2023'teki ilk değişiklik için 2023102401). Bir yönetici bir A, MX veya TXT kaydını her değiştirdiğinde, bu seri numarasının artırılması gerekir. İkincil (slave) name server'lar rutin olarak birincil sunucunun SOA kaydını sorgular (poll). Yerel cache'lerinde depolanandan daha yüksek bir seri numarası tespit ederlerse, güncellenmiş routing tablolarını çekmek için derhal bir AXFR veya IXFR zone transferi tetiklenir. Düzenleme sırasında seri numarası artırılmazsa, ikincil sunucular hiçbir zaman senkronize olmaz ve bu da parçalanmış, tutarsız DNS yanıtlarına yol açar.

Yönetimsel Zamanlama: Refresh, Retry ve Expire

SOA kaydı, zone'un dayanıklılığını (resilience) yöneten üç özel zamanlayıcı tanımlar:

  • Refresh (Yenileme): İkincil sunucuların seri numarası değişiklikleri için birincil sunucuyu yoklamadan (poll) önce beklediği aralık (saniye cinsinden).
  • Retry (Yeniden Deneme): Bir yoklama sırasında birincil sunucu çevrimdışıysa, bu, ikincil sunucunun tekrar denemeden önce ne kadar bekleyeceğini tanımlar.
  • Expire (Sona Erme): Birincil sunucunun kalıcı olarak çevrimdışı olması durumunda ikincil bir sunucunun cache'lenmiş kayıtları sunmaya devam edeceği mutlak maksimum süre. Bu zamanlayıcıya ulaşıldığında, ikincil sunucu sorguları yanıtlamayı bırakır, ciddi şekilde güncel olmayan verilerin sunulmasını önlemek için alanı etkili bir şekilde kapatır.

Negative Caching ve Minimum TTL

SOA kaydının sıklıkla yanlış anlaşılan bir parametresi Minimum TTL değeridir. Tarihsel olarak bir taban çizgisi cache'leme süresi ayarlamak için kullanılan RFC 2308, bu tam sayıyı yalnızca Negative Caching (Olumsuz Önbellekleme) için yeniden amaçlandırmıştır. Bir kullanıcı mevcut olmayan bir alt alan adını sorgularsa (örneğin, fake.example.com), authoritative sunucu bir NXDOMAIN hatasıyla yanıt verir. Resolver, bu başarısızlığın tam olarak ne kadar süre cache'leneceğini belirlemek için SOA Minimum TTL'ini kullanır. Düşük bir değer, bir yönetici bir yazım hatasını hızlıca düzeltirse uzun süreli kesintileri önlerken, yüksek bir değer authoritative sunucuyu rastgele, var olmayan alt alan adlarını sorgulayan DDoS taşkınlarından (floods) korur.