İçeriğe geç
DomainQ
Alan Adı ve DNS

RDAP’te Alan Adı Sorgusu ile Nameserver Sorgusu Ne Zaman Ayrılmalı?

RDAP’te doğru başlangıç, ekranda görünen alanlara değil sorduğunuz sorunun hedefine bağlıdır: alan adı, tek nameserver veya arama sonucu.

RDAP’te Alan Adı Sorgusu ile Nameserver Sorgusu Ne Zaman Ayrılmalı? — DomainQ blog kapak görseli

RDAP yanıtında bir nameserver adı gördüğünüzde, sonraki adım her zaman aynı değildir. Bazen sorunuz yalnızca alan adının hangi nameserver adlarıyla ilişkilendirildiğidir. Bazen belirli bir nameserver adına odaklanırsınız. Başka bir durumda ise bir nameserver veya IP adresiyle bağlantılı alan adlarını ararsınız. Bu üç soru farklı RDAP yollarına yönelir. RDAP nameserver sorgusu seçerken pratik ölçüt, yanıtta hangi alanların göründüğü değil, inceleme hedefinizin alan adı mı, tek bir nameserver mı, yoksa arama sonucu mu olduğudur.

RDAP sorgu yolunu seçme: Soruyu sınıflandır; Alan adı: domain/alan-adi; Tek nameserver: nameserver/nameserver-adi; Çoklu sonuç: domains veya nameservers araması; Destek yok: HTTP 501
RDAP sorgu yolunu seçme

Kısa özet

  • RDAP’te alan adı ve nameserver ayrı nesne sınıflarıdır; önce inceleme sorusunun hangi nesneye yöneldiğini belirleyin.
  • Bir alan adının hangi nameserver adlarıyla ilişkilendirildiğini incelemek için domain sorgusuyla başlayın; soru belirli bir nameserver nesnesine yönelirse nameserver sorgusunu kullanın.
  • Nameserver veya IP adresinden hareketle birden çok sonuç arıyorsanız, doğrudan nesne sorgusu yerine ilgili arama yolunu seçin.
  • Sunucular tüm RDAP sorgu türlerini desteklemeyebilir; desteklenmeyen tür için HTTP 501 döndürmelidir.

Önce soruyu üç hedefe ayırın

RDAP, alan adlarını ve nameserver’ları ayrı nesne sınıfları olarak tanımlar. Her iki nesne sınıfı da Bölgesel İnternet Kayıtları ile Alan Adı Kayıt Sistemleri tarafından döndürülebilir. Bu ayrım, sorguya başlamadan önce soruyu açıkça yazmayı yararlı kılar: Bir alan adı hakkında mı bilgi istiyorsunuz, belirli bir nameserver nesnesini mi inceliyorsunuz, yoksa bir ölçüte uyan birden çok kaydı mı arıyorsunuz?

Nameserver nesnesi, ileri ve ters DNS’te kullanılan DNS ad sunucularına ilişkin bilgiyi temsil eder. Ancak kayıt sistemlerinin nameserver bilgisini sunma biçimi değişebilir. Bazı kayıt sistemleri bu bilgiyi alan adının bir özniteliği olarak sunarken, bazıları nameserver’ı birinci sınıf nesne olarak modeller. RDAP standardı bu farklı modelleri ve aradaki değişkenliği kapsar.

Bu nedenle karar kuralı basittir: Alan adıyla ilgili bir soruda alan adı yolunu, belirli nameserver nesnesiyle ilgili bir soruda nameserver yolunu, birden çok sonuç bulma ihtiyacında ise arama yolunu değerlendirin. Bu yaklaşım, bir yanıtı başka bir sorgu hedefinin yerine koymadan ilerlemenizi sağlar.

  • Alan adı hedefi: Bir alan adı hakkında bilgi istiyorum.
  • Tek nameserver hedefi: Belirli bir nameserver nesnesini incelemek istiyorum.
  • Arama hedefi: Bir nameserver adı veya IP adresiyle ilişkili sonuçları bulmak istiyorum.

Kaynak: [2]

Alan adı sorusunda domain yoluyla başlayın

Sorunuz belirli bir alan adıyla ilgiliyse domain sorgusu uygun başlangıçtır. RDAP’te alan adı sorgusunun biçimi domain/alan-adi şeklindedir. Alan adı, köke göre tam nitelikli olmalıdır. Örneğin, example.com hakkında bir sorgu yapmak istediğinizde hedef alan adı nesnesidir.

Örnek senaryo: example.com için amacınız, alan adı yanıtında hangi nameserver adlarının yer aldığını incelemektir. Sorunuz hâlâ example.com hakkındadır; bu nedenle domain/example.com sorgusu ile başlamak hedefle uyumludur. Bu örnek, bir nameserver hakkında ek veri olduğu ya da olmadığı sonucunu vermez. Yalnızca sorunun alan adı nesnesine yöneldiğini gösterir.

RDAP yanıtlarını okurken bir başka sınırı da koruyun: Kayıt verisini temsil eden üyeler yanıtta bulunmayabilir. Sunucular, zorunlu olmayan kayıt verisi üyelerini kendi politikalarına göre göstermeyebilir. Bu nedenle yanıtta görünmeyen bir üyeyi tek başına kayıt olmadığı şeklinde yorumlamayın. Önce sorunuzun hâlâ alan adıyla mı ilgili olduğunu, yoksa belirli bir nameserver nesnesine mi geçtiğini yeniden belirleyin.

  • Alan adı sorgu biçimi: domain/alan-adi
  • Alan adı tam nitelikli olmalıdır.
  • Yanıtta bulunmayan isteğe bağlı kayıt verisini tek başına yokluk kanıtı saymayın.

Kaynak: [1] [2]

Soru belirli nameserver nesnesine döndüğünde sorguyu ayırın

İnceleme hedefiniz belirli bir nameserver olduğunda nameserver sorgusu kullanılır. Bu doğrudan sorgunun biçimi nameserver/nameserver-adi şeklindedir ve nameserver adı tam nitelikli bir ana makine adı olmalıdır. Buradaki değişiklik teknik bir zorunluluktan önce bir hedef değişikliğidir: Artık alan adı yerine nameserver nesnesi hakkında soru soruyorsunuz.

Bir alan adı yanıtında nameserver adının görünmesi, kayıt sisteminin nameserver bilgisini alan adı özniteliği olarak sunduğu modellerden biri olabilir. Başka kayıt sistemleri ise nameserver’ı birinci sınıf nesne olarak modeller. Bu modeller farklı olduğundan, alan adı yanıtındaki bir adı, ayrı nameserver sorgusunun sonucu olarak yorumlamayın. Standardın desteklediği dar sonuç şudur: Nameserver bilgisi kayıt sistemine göre farklı biçimlerde modellenebilir ve isteğe bağlı kayıt verisi üyeleri yanıtta bulunmayabilir.

Örnek senaryo: domain/example.com yanıtında ns1.example.com adını gördünüz. Sorunuz “example.com hangi nameserver adıyla ilişkilendirilmiş?” ise alan adı sorgusu hedefinize karşılık gelir. Sorunuz “ns1.example.com nameserver nesnesi hakkında ne döndürüyor?” ise hedef değişmiştir; nameserver/ns1.example.com yolunu kullanın. Bu ayrım, domain yanıtının yetersiz veya tam olduğu iddiası değildir.

  • Tek nameserver sorgu biçimi: nameserver/nameserver-adi
  • Nameserver adı tam nitelikli bir ana makine adı olmalıdır.
  • Alan adı yanıtındaki bir ad ile ayrı nameserver nesnesi sorgusunu aynı işlem saymayın.

Kaynak: [1] [2]

Birden çok sonuç arıyorsanız arama yollarını kullanın

Başlangıç noktanız bir nameserver adı olabilir ve bu nameserver’a delege edilmiş alan adlarını bulmak isteyebilirsiniz. Bu durumda hedef tek bir alan adı ya da tek nameserver nesnesi değildir; alan adı aramasıdır. RDAP bu amaçla domains?nsLdhName= biçimini tanımlar.

Başlangıç noktanız bir IP adresiyse ve o IP adresine çözümlenen nameserver’lara delege edilmiş alan adlarını arıyorsanız domains?nsIp= biçimi kullanılır. Bu yolun sorusu da alan adı listesine yöneliktir.

Nameserver nesnelerini aramak için iki ayrı yol tanımlanır: ada göre nameservers?name= ve IP adresine göre nameservers?ip=. Bu yolları doğrudan nameserver/nameserver-adi sorgusundan ayırmak önemlidir. İlki arama, ikincisi belirli bir nameserver adı için doğrudan nesne sorgusudur.

  • Nameserver adına göre alan adı araması: domains?nsLdhName=
  • IP adresine çözümlenen nameserver’lara göre alan adı araması: domains?nsIp=
  • Ada göre nameserver araması: nameservers?name=
  • IP adresine göre nameserver araması: nameservers?ip=

Kaynak: [1]

HTTP 501 yanıtını hedef seçimiyle birlikte değerlendirin

RDAP sunucuları yerel gereksinimlerine göre özelliklerin yalnızca bir alt kümesini destekleyebilir. Bu nedenle tanımlanmış bir arama yolunu kullanmak istemeniz, her RDAP sunucusunun bu yolu sunduğu anlamına gelmez.

Bir sunucu desteklemediği sorgu türü için HTTP 501 Not Implemented yanıtı döndürmelidir. Böyle bir yanıt aldığınızda ilk kontrol, sorgu hedefinizin doğru sınıflandırılıp sınıflandırılmadığı olmalıdır: Alan adı mı, tek bir nameserver mı, yoksa arama mı? Ardından aynı soruya karşılık gelen ve sunucunun desteklediği başka bir sorgu türü olup olmadığını değerlendirin. 501 yanıtı, tanımlı her özelliğin her sunucuda bulunacağı varsayımını yapmamanız gerektiğini gösterir.

  • HTTP 501, desteklenmeyen sorgu türünü bildirir.
  • Önce hedefi yeniden ayırın: alan adı, tek nameserver veya arama.
  • Sunucunun yalnızca bir özellik alt kümesini destekleyebileceğini dikkate alın.

Kaynak: [1]

Uygulama kontrol listesi

  • Sorunuzu alan adı, tek nameserver veya arama hedefi olarak sınıflandırın.
  • Alan adı hakkında inceleme için domain/alan-adi yolunu kullanın.
  • Belirli nameserver nesnesi için nameserver/tam-nameserver-adi yolunu kullanın.
  • Yanıtta görünmeyen isteğe bağlı üyeyi tek başına kayıt yokluğu saymayın.
  • Nameserver adına göre alan adlarını aramak için domains?nsLdhName= yolunu değerlendirin.
  • IP adresinden alan adı veya nameserver araması yaparken uygun nsIp ya da ip yolunu seçin.
  • HTTP 501 yanıtında sunucunun bu sorgu türünü desteklemediğini dikkate alın.

RDAP’te alan adı ve nameserver sorgusunu ayırmanın en güvenli yolu, eksik ya da görünen alanlardan sonuç çıkarmak değil, soruyu nesne hedefine göre sınıflandırmaktır. Alan adı için domain/alan-adi ile başlayın. Belirli bir nameserver nesnesi hakkında soru oluştuğunda nameserver/nameserver-adi kullanın. Nameserver adı veya IP adresinden hareketle birden çok sonuç arıyorsanız ilgili domains veya nameservers arama yolunu seçin. Yanıt üyelerinin isteğe bağlı olarak gösterilmeyebileceğini ve bazı sorgu türlerinin desteklenmeyebileceğini de hesaba katın.

Sık sorulan sorular

Alan adı yanıtında nameserver adı görürsem hangi sorguyu kullanmalıyım?

Sorunuz alan adının hangi nameserver adıyla ilişkilendirildiğiyse domain/alan-adi ile başlayın. Sorunuz belirli nameserver nesnesi hakkındaysa nameserver/nameserver-adi yolunu kullanın. Alan adı ve nameserver, RDAP’te ayrı nesne sınıflarıdır.

Nameserver adına göre alan adlarını nasıl ararım?

Nameserver adına göre alan adı araması domains?nsLdhName= biçimindedir. Bu, o nameserver’a delege edilmiş alan adlarını bulmaya yönelik bir aramadır. Sunucu bu sorgu türünü desteklemiyorsa HTTP 501 döndürmelidir.

RDAP’te HTTP 501 ne anlama gelir?

HTTP 501 Not Implemented, sunucunun ilgili sorgu türünü desteklemediğini bildirir. RDAP sunucuları yerel gereksinimlerine göre özelliklerin yalnızca bir alt kümesini destekleyebilir.

Kaynaklar

[1] rfc9082.txt

[2] rfc9083.txt