DNS istemcileri birden çok yanıt aldıklarında bir IP adresini nasıl seçer?


25

Bir DNS sunucusu bir istemci için bir IP adresi ararken ve sorgulanacak birden fazla DNS sunucusunun listesini alırken, birini nasıl seçer? Benzer şekilde, bir DNS istemcisi bir FQDN için birden fazla IP adresi listesi aldığında, birini nasıl seçer? Uygulamaya özel mi yoksa bir RFC'de kapsanıyor mu?

Yanıtlar:


18

Bir sorguyu çözen bir DNS sunucusu, geçmiş yanıt süresi verilerine göre listelenen sunucuları kullanma sırasına öncelik verebilir (RFC1035 bölüm 7.2). Ayrıca daha yakın bir alt-ağ tarafından önceliklendirilebilir (bunu RFC'de gördüm ama hangisini hatırlamıyorum). Geçmiş veya alt net önceliği yoksa, rastgele seçebilir veya ilkini seçebilir. Yukarıda yapılan çeşitli kombinasyonları yapan DNS sunucu uygulamalarını gördüm.

Bir listeden (A / AAAA kayıtlarından) bir IP adresi seçen bir istemci programı genellikle adresleri DNS sunucusu (yuvarlak robin) tarafından döndürüldüğü sırayla dener. İstemci, döndürülen ilk IP adresine bağlanamazsa, ikincisini vb. Denemelidir. Örneğin, tüm büyük tarayıcılar bunu yapar, ancak diğer birçok Internet istemcisi programı bu adımı "unutur" ve ilk IP adresine bağlanamazlarsa başarısız olur.


4

RFC 1794 , sorduğunuz Round Robin sorusunu kapsıyor.

Yanıtlar geldiğinde, çoğu DNS müşterisi listedeki ilk IP adresini kullanacak, bazıları hangisinin daha yakın olduğunu bulmak için alt ağ hesaplamaları yapacak, diğerleri rastgele seçiyor, ancak çoğu listeyi göndermek için DNS sunucusuna bağlı.


3

Müşteriye bağlıdır - özellikle bir Windows mağazası çalıştıran herkes için alaka düzeyi, Vista \ Windows Server 2008'in, ilk adresi seçecek olan önceki Windows sürümleri için (ipv6 yığını kuruluysa) farklı bir mekanizma kullanarak adresi seçmesi gerektiğidir. . Çoğu durumda bu, her zaman aynı olanı seçecekleri anlamına gelir; yani, önceki sürümlerle aynı şekilde DNS yuvarlak robin yanıtlarını "onurlandırmazlar". Bu teknik blog blog makalesinde bunun ayrıntılı bir açıklaması var .

Bağlantılı makale, Windows 7 ve Server 2008 R2’nin bu varsayılan davranışı yeniden değiştirdiğini ancak bunu yedeklemek için hiçbir şey bulamadığımı gösteriyor.

Ayrıca bunun, ipv6 için söyleyebildiğim kadarıyla standartlara uygun davranış olduğunu belirtmeye değer, ancak yanıldığımı öğrenmekten çok memnun olacağım.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.