RFC 2782'yi ihlal eden CNAME takma adını işaret eden yayınlanmış SRV kayıtları?


15

Bazı iş sorumlulukları sırasında SRV kayıtlarını araştırmam gerekiyor ve bir Wikipedia ifadesini DNS kazılarında gördüğümle uzlaştırmaya çalışıyorum.

Göre Wikipedia'nın SRV kaydı girişi ,

SRV kayıtlarındaki hedef, adres kaydına (A veya AAAA kaydı) sahip ana bilgisayar adını göstermelidir. CNAME kaydı olan bir ana makine adını işaret etmek geçerli bir yapılandırma değil.

ancak digCNAME kaydındaki diğer ad olan bir adı işaret eden bir SRV kaydı döndüren kayıtları görüyorum .

Yani, böyle bir şey:

> dig _https._tcp.alpha.domain.com SRV

;; QUESTION SECTION:
;_https._tcp.alpha.domain.com.    IN    SRV

;; ANSWER SECTION:
_https._tcp.alpha.domain.com 59 IN SRV 30 30 4443 alias.domain.com


> dig alias.domain.com

;; QUESTION SECTION:
;alias.domain.com.    IN    A

;; ANSWER SECTION:
alias.domain.com.  35  IN  CNAME canonical.name.amazonaws.com.
canonical.name.amazonaws.com. 35 IN A 52.78.234.189
canonical.name.amazonaws.com. 35 IN A 107.21.179.88
canonical.name.amazonaws.com. 35 IN A 52.12.126.92

SRV kaydının Wikipedia girişine izin verilmediği şekilde yapılandırıldığı anlaşılıyor. Neyi yanlış anlıyorum? SRV kaydının, bir CNAME kaydı olan alias.domain.com adresini adres kaydı değil gösterdiği görülmüyor mu?


Şirketimde SRV kayıtlarını çok kullanıyoruz ve çoğu CNAME kullanıyor ve kurallara karşı çalışıyor ya da iyi çalışmıyor :)
olivierg

Yanıtlar:


10

Alıntı yaptığınız Wikipedia makalesinde , SRV kayıtları için ilgili RFC 2782'nin belirttikleri bildirilmektedir:

Hedef

Hedef ana bilgisayarın etki alanı adı. Bu ad için bir veya daha fazla adres kaydı OLMALIDIR, ad bir diğer ad OLMAMALIDIR (RFC 1034 veya RFC 2181 anlamında).

Gördüğünüz kuralların açık bir ihlali; ancak, belki işe (ve genellikle ne olursa olsun istemci uygulaması bu SRV kaydı arıyorsa sadece tepki olarak bir A kaydı bekliyor olmalıdır bile, düzgün bir CNAME kaydı işlemek için akıllı yeterlidir, yapar).

Ancak hiç de işe yaramayabilir: desteklenmez ve tamamen istemci uygulamasına bağlıdır; bu nedenle bundan kaçınılmalıdır çünkü uygun kurallara uymaz ve hatalı ve / veya öngörülemeyen sonuçlara yol açabilir.

Bu, bir MX kaydını CNAME'ye işaret etmeye benzer, bu sadece bir değil iki RFC'de de yanlış olarak tanımlanır ve yine de oldukça yaygın bir uygulamadır (ve hiçbir posta sunucusunda sorun yoktur).


"Yeterince akıllı" ın göreceli olduğunu unutmayın. Bazı yazılım tasarımcıları, braindead uygulamalarına katlanmanın yalnızca bunun daha fazla uygulanmasını teşvik ettiğini düşünüyor. RFC 2781 sadece tek bir RFC tarafından güncellendi ve ne olacağını dilek çok sağlam, bu yüzden burada çok merhamet beklemem.
Andrew B

Çoğu istemci uygulaması, DNS sorguları gerçekleştirmek için sistem kitaplıklarına güvenir ve çoğu kitaplık (özellikle daha üst düzey dillerde), onlara attığınız her sorguyu çözmek için ellerinden geleni yapar ve hedef A kaydına bir CNAME'yi mutlu ve sessiz bir şekilde izler ve IP adresi.
Massimo

Uygulama çok fazla zekaya ihtiyaç duymaz, sadece işletim sisteminden 4443 numaralı bağlantı noktasında "alias.domain.com" adresine bağlanmasını ve tüm ayrıntıları ona bırakmasını isteyecektir.
Massimo

1
Akış yukarı imleci yetkili verileri reddeder ve devam etmeyi reddederse, istemci uygulaması ve sistem kitaplıkları diğer adı izleme fırsatına sahip olmaz. (bahsettiğim göreceli akıllılık) BIND'ın NSkayıtları ve yasak takma işlemleri kullanması bunun klasik örneğidir. Ne olursa olsun, tahmin edilemez sonuçlarla herkesin oyunu olduğu konusunda hemfikiriz.
Andrew B

1
Bazı posta sunucuları, MXAME'leri MX'leri etkin bir şekilde yok saymaya başladı, örneğin GMX medienconsulting.at/…
Marcel Waldvogel

1

Bu kısıtlı davranışa bir örnek, evet. Kısıtlamanın kendisi , "hedef" tanımında RFC 2781'den gelir :

   Target
        The domain name of the target host.  There MUST be one or more
        address records for this name, the name MUST NOT be an alias (in
        the sense of RFC 1034 or RFC 2181).  Implementors are urged, but
        not required, to return the address record(s) in the Additional
        Data section.  Unless and until permitted by future standards
        action, name compression is not to be used for this field.

        A Target of "." means that the service is decidedly not
        available at this domain.

Ne yazık ki yasak yapılandırmalara izin veren DNS sunucusu yazılımı yeni bir şey değil. Öteki NSve / gibi hedeflerin yasaklandığı diğer kayıt türlerinde olduğu gibi olabilir ve olur MX. (yukarıda bahsedilen)

Vahşi doğada bulunabilmesi onun "iyi" olduğu anlamına gelmez ve bir standart göz ardı edildiğinde ne olur üründen ürüne değişir. SRVKayıtlarla etkileşimi test etmedim , ancak ISC BIND tarafından NStakma adlara işaret eden kayıtlarla ilgili çok iyi bilinen bir tasarım kararı, özyineleme sırasında bulunursa kaydı tamamen bırakmaktır . Tüm NSkayıtlar bu şekilde bırakılırsa, tüm sorguların sonucu söz SERVFAILkonusu alt alan için olur.

Kısacası, standarda bağlı kalın. Tek güvenli şey bu.

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.