DDR ve DNR Nedir? Şifreli DNS Hizmeti Nasıl Keşfedilir?

DNS, alan adlarına ait IP adreslerini ve diğer kayıtları bulmayı sağlar. Bu sorguları şifreli taşımak için istemcinin yalnızca DNS sunucusunun IP adresini bilmesi her zaman yeterli değildir. DoH (DNS over HTTPS) sorguları HTTPS bağlantısıyla, DoT (DNS over TLS) doğrudan TLS bağlantısıyla, DoQ (DNS over QUIC) ise QUIC taşıma protokolüyle iletir. Bu yöntemler istemci ile DNS hizmeti arasındaki trafiği şifreler. Bağlantı için desteklenen protokol, sunucu adı, hizmetin kullandığı port numarası ve DoH isteklerinin gönderileceği adres yolu gibi bilgiler gerekebilir.
DDR ve DNR, bu bilgileri her cihaza tek tek elle girme ihtiyacını azaltan iki farklı mekanizmadır. Buradaki recursive resolver (özyinelemeli DNS çözümleyicisi), istemci adına DNS yanıtını önbellekten veya diğer DNS sunucularına başvurarak bulan hizmettir. DDR, mevcut recursive resolver'ın kendi yerine kullanılması için belirlediği şifreli DNS hizmetini DNS kayıtları üzerinden keşfeder; DNR ise yerel ağın seçtiği şifreli recursive resolver'ı ağ yapılandırması sırasında bildirir.
Her iki yöntem de bağlantı bilgilerini keşfeder, ancak bu bilginin alınması şifreli recursive resolver'ın kimliğini doğrulamaz. İstemci, seçilen DDR veya DNR modelinin doğrulama koşullarını ayrıca uygular; aşağıda açıklanan fırsatçı DDR kullanımında şifreleme, doğrulanmış sunucu kimliği anlamına gelmez.
DDR Nasıl Çalışır?
DDR, Discovery of Designated Resolvers ifadesinin kısaltmasıdır. İstemci yalnız şifresiz recursive resolver'ın IP adresini biliyorsa DDR ile bu resolver'ın kendi yerine kullanılmak üzere belirlediği şifreli DNS hizmetini bulabilir. RFC 9462, bu şifreli hizmeti Designated Resolver olarak adlandırır. Şifreli recursive resolver'ın adı zaten biliniyorsa istemci, hizmetin bağlantı parametrelerini taşıyan SVCB kaydını bu adın başına _dns. ekleyerek sorgulayabilir. Örneğin bilinen ad resolver.example ise sorgu adı _dns.resolver.example. olur.
Mevcut Recursive Resolver SVCB Yanıtı Döndürür
DDR destekleyen bir istemci, mevcut recursive resolver'a _dns.resolver.arpa adı için SVCB sorgusu gönderebilir. Recursive resolver bir Designated Resolver tanımlamışsa yanıt, hedef resolver'ın adıyla birlikte desteklenen protokol, port ve gerektiğinde DoH yolu gibi hizmet parametrelerini bildirebilir.
SVCB kaydı, şifreli recursive resolver'a nasıl bağlanılacağını belirten hizmet bilgilerini taşır. Birden fazla şifreli seçenek sunulursa SVCB öncelikleri, istemcinin seçenekleri hangi sırada değerlendireceğini belirlemesine yardımcı olur.
DDR'de Şifreli Recursive Resolver Nasıl Doğrulanır?
Yalnız IP adresinden başlatılan DDR keşfinde ilk SVCB sorgusu şifresiz DNS üzerinden yapılabilir; bu yanıt tek başına hizmete güvenmek için yeterli değildir. Doğrulanmış keşifte istemci, sunucunun TLS bağlantısı kurulurken sunduğu sertifika zincirini güvenilen bir köke kadar denetler. Sertifikadaki kimlikleri belirten subjectAltName alanının iPAddress kaydı, başlangıçtaki şifresiz recursive resolver'ın IP adresini içermelidir. Şifreli bağlantı farklı bir IP adresine kurulsa bile kontrol edilen adres, başlangıçta kullanılan adrestir.
Özel veya yerel IP adresi kullanan recursive resolver'larda bu kimlik doğrulaması çoğu zaman mümkün değildir. Şifreli ve şifresiz recursive resolver aynı özel veya yerel IP adresini kullanıyorsa istemci, DoT veya DoQ bağlantısını RFC 9462'deki fırsatçı gizlilik modeliyle kullanabilir. Bu yöntem DNS trafiğini şifreler, ancak şifreli resolver'ın kimliği doğrulanmadığı için doğrulanmış keşifle aynı güvenceyi sağlamaz.
Bilinen bir sunucu adından yapılan DDR keşfinde ise istemci, sertifika zincirinin güvenilirliğini ve sertifikada o adın bulunduğunu doğrular. SVCB kaydı başka bir hedef adı gösterse bile denetim başlangıçta bilinen ada göre yapılır; IP adresinden yapılan keşfin sertifika koşulu bu duruma aynen uygulanmaz.
DNR Nasıl Çalışır?
DNR, Discovery of Network-designated Resolvers ifadesinin kısaltmasıdır. Bu yöntemde başlangıç noktası mevcut recursive resolver'ın DNS yanıtı değil, bağlanılan ağın yapılandırma bilgisidir. Cihaz ağ ayarlarını alırken yerel ağ, şifreli recursive resolver bilgisini de aynı süreçte duyurabilir.
Ağ, Recursive Resolver Kimliğini ve Bağlantı Bilgilerini Bildirir
RFC 9463, DNR için DHCPv4, DHCPv6 ve IPv6 RA (Router Advertisement) seçeneklerini tanımlar. DHCPv4 ve DHCPv6, sırasıyla IPv4 ve IPv6 ağlarında istemcilere adres ve diğer ağ ayarlarını dağıtmak için kullanılır. IPv6 RA ise yönlendiricinin yerel bağlantıdaki cihazlara ağ bilgilerini duyurduğu mesajdır. DNR seçeneğinde kimlik doğrulama alan adı (ADN) bulunur; seçeneğe recursive resolver'ın IP adresleri ve desteklenen şifreli DNS hizmetinin parametreleri de eklenebilir.
ADN, istemcinin bağlandığı recursive resolver'ın kimliğini sertifika üzerinden doğrularken kullandığı addır. IP adreslerinin aynı seçenek içinde verilmesi, istemcinin önce başka bir DNS sunucusuna gidip bu adı çözmesine gerek kalmadan şifreli recursive resolver'a ulaşabilmesini sağlar.
DNR Duyurusu Recursive Resolver'ın Kimliğini Tek Başına Doğrulamaz
DNR bilgisinin DHCP veya Router Advertisement üzerinden gelmesi, şifreli recursive resolver'ın kimliğinin otomatik olarak doğrulandığı anlamına gelmez. İstemci şifreli bağlantı kurarken sertifika zincirini doğrular ve DNR ile aldığı ADN'nin sunulan sertifikayla eşleşmesini kontrol eder.
Bu denetim yalnız recursive resolver'ın bildirilen kimliğe sahip olup olmadığını sınar; DHCP veya Router Advertisement duyurusunu gönderen ağ bileşeninin güvenilir olduğunu kanıtlamaz. Yerel ağdaki yapılandırma mesajlarının korunması ise ayrı bir güvenlik konusudur.
DDR ile DNR Arasındaki Temel Farklar
İki mekanizma aynı hedefe, yani uygun şifreli recursive resolver'ın otomatik bulunmasına hizmet eder; ancak keşfi başlatan kaynak ve doğrulama bağlamı farklıdır.
| Karşılaştırılan özellik | DDR | DNR |
|---|---|---|
| Keşif kaynağı | Mevcut recursive resolver için veya bilinen sunucu adına göre alınan SVCB yanıtı | Bağlanılan ağın DHCP veya IPv6 RA yapılandırması |
| Kullanılan yöntem | SVCB sorgusu | Şifreli DNS için tanımlanmış ağ seçenekleri |
| Başlangıç bilgisi | Genellikle şifresiz recursive resolver'ın IP adresi | Ağdan alınan DNR yapılandırması |
| Doğrulamada kullanılan bilgi | Doğrulanmış keşifte başlangıçtaki IP adresi veya bilinen sunucu adı; fırsatçı kullanımda aynı IP adresi koşulu | DNR ile bildirilen ADN ve TLS sertifikası |
| Kullanım amacı | Mevcut recursive resolver'ın belirlediği şifreli DNS hizmetini bulma | Yerel ağın tercih ettiği şifreli recursive resolver'ı duyurma |
İstemci Keşfedilen Bilgiyi Nasıl Kullanır?
Keşif bilgisi, istemcinin hangi recursive resolver hizmetini kullanacağını tek başına belirlemez. İşletim sistemi veya uygulama ilgili keşif mekanizmasını ve bildirilen şifreli DNS protokolünü desteklemelidir. İstemci, kullanabildiği bağlantı seçenekleri arasından seçim yapar ve seçilen keşif modelinin doğrulama koşullarını uygular.
Yerel politika da hangi hizmetin kullanılacağını belirler. Kimliği doğrulanmış şifreli DNS zorunluysa istemci bu koşulu sağlayamayan bağlantıyı kullanamaz; yalnız keşif başarısız oldu diye şifresiz DNS'e geçmesi uygun değildir. Şifresiz bağlantıya dönüşe izin veren bir politikada ise mevcut DNS ayarı kullanılabilir; bu durumda sorguların şifrelendiği varsayılamaz.
DDR ve DNR Birlikte Görüldüğünde Ne Olur?
Bir istemci aynı ağda hem şifresiz recursive resolver bilgisi hem de DNR üzerinden şifreli DNS yapılandırması alabilir. Ağdan gelen DNR yapılandırması, DDR ile keşfedilen bilgiye göre önceliklidir; RFC 9462 özellikle aynı recursive resolver için çelişen bildirimlerde DNR bilgisinin tercih edilmesini belirtir. Bu öncelik, kullanıcının veya yöneticinin ayrıca tanımladığı yerel DNS politikasını ortadan kaldırmaz.







