PowerDNS Recursor 4.2'nin piyasaya sürülmesi ve DNS bayrak günü 2020 girişimi

Bir buçuk yıllık geliştirme sürecinin ardından gönderilen DNS sunucusunun önbelleğe alınmasının serbest bırakılması PowerDNS Kaynağı 4.2, özyinelemeli ad dönüşümünden sorumludur. PowerDNS Recursor, PowerDNS Authoritative Server ile aynı kod tabanı üzerine kurulmuştur, ancak PowerDNS özyinelemeli ve yetkili DNS sunucuları farklı geliştirme döngüleri yoluyla geliştirilir ve ayrı ürünler olarak piyasaya sürülür. Proje kodu tarafından dağıtıldı GPLv2 altında lisanslanmıştır.

Yeni sürüm, DNS paketlerinin EDNS bayraklarıyla işlenmesiyle ilgili tüm sorunları ortadan kaldırıyor. PowerDNS Recursor'un 2016'dan önceki eski sürümleri, eski formatta bir yanıt göndermeden, desteklenmeyen EDNS bayraklarına sahip paketleri yok sayma ve spesifikasyonun gerektirdiği şekilde EDNS bayraklarını atma uygulamasına sahipti. Daha önce bu standart dışı davranış, BIND'de geçici bir çözüm olarak destekleniyordu, ancak gerçekleştirillen Şubat ayındaki girişimler DNS bayrak günüDNS sunucusu geliştiricileri bu hackten vazgeçmeye karar verdi.

PowerDNS'de, EDNS ile paketlerin işlenmesindeki ana sorunlar, 2017'de 4.1 sürümünde ortadan kaldırıldı ve 2016'da piyasaya sürülen 4.0 dalında, belirli koşullar altında ortaya çıkan ve genel olarak normale müdahale etmeyen bireysel uyumsuzluklar ortaya çıktı. operasyon. PowerDNS Recursor 4.2'de olduğu gibi BAĞLANTI 9.14EDNS işaretleriyle isteklere hatalı yanıt veren yetkili sunucuları desteklemek için geçici çözümler kaldırıldı. Şimdiye kadar, EDNS bayraklarıyla bir istek gönderildikten sonra belirli bir süre sonra yanıt alınamazsa, DNS sunucusu genişletilmiş bayrakların desteklenmediğini varsayarak EDNS bayrakları olmadan ikinci bir istek gönderiyordu. Bu davranış artık devre dışı bırakıldı; çünkü bu kod, paket yeniden iletimleri nedeniyle artan gecikmeye, artan ağ yüküne ve ağ arızaları nedeniyle yanıt vermediğinde belirsizliğe neden oldu ve DDoS saldırılarına karşı koruma sağlamak için DNS Çerezleri gibi EDNS tabanlı özelliklerin uygulanmasını engelledi.

Etkinliğin gelecek yıl yapılmasına karar verildi DNS bayrak günü 2020dikkati odaklamak için tasarlandı karar sorunları büyük DNS mesajlarını işlerken IP parçalanmasıyla. Girişimin bir parçası olarak planlı EDNS için önerilen arabellek boyutlarını 1200 bayta sabitleyin ve çevirmek istekleri TCP üzerinden işlemek sunucularda bulunması gereken bir özelliktir. Artık isteklerin UDP aracılığıyla işlenmesi desteği gereklidir ve TCP arzu edilir, ancak işlem için gerekli değildir (standart, TCP'yi devre dışı bırakma yeteneğini gerektirir). Belirlenen EDNS arabellek boyutunun yeterli olmadığı durumlarda TCP'yi devre dışı bırakma seçeneğinin standarttan kaldırılması ve UDP üzerinden istek göndermekten TCP kullanımına geçişin standartlaştırılması önerilmektedir.

Girişimin bir parçası olarak önerilen değişiklikler, EDNS arabellek boyutunun seçimiyle ilgili karışıklığı ortadan kaldıracak ve işlenmesi genellikle istemci tarafında paket kaybına ve zaman aşımlarına yol açan büyük UDP mesajlarının parçalanması sorununu çözecektir. İstemci tarafında EDNS arabellek boyutu sabit olacak ve büyük yanıtlar istemciye TCP üzerinden anında gönderilecek. UDP üzerinden büyük mesajlar göndermekten kaçınmak aynı zamanda engellemenize de olanak tanır. saldırılar parçalanmış UDP paketlerinin manipülasyonuna dayalı olarak DNS önbelleğini zehirlemek için (parçalara bölündüğünde, ikinci parça tanımlayıcıya sahip bir başlık içermez, bu nedenle yalnızca sağlama toplamının eşleşmesi için yeterli olduğu için sahte olabilir) .

PowerDNS Recursor 4.2, büyük UDP paketleriyle ilgili sorunları dikkate alır ve daha önce kullanılan 1232 bayt sınırı yerine 1680 baytlık EDNS arabellek boyutunu (edns-giden-bufsize) kullanmaya geçer; bu, UDP paketlerinin kaybolma olasılığını önemli ölçüde azaltacaktır. . 1232 değeri, IPv6 dikkate alınarak DNS yanıtının boyutunun minimum MTU değerine (1280) uyduğu maksimum değer olduğundan seçildi. İstemciye verilen yanıtların kesilmesinden sorumlu olan kesme eşiği parametresinin değeri de 1232'ye düşürüldü.

PowerDNS Recursor 4.2'deki diğer değişiklikler:

  • Mekanizma desteği eklendi XPF (X-Proxied-For), X-Forwarded-For HTTP üstbilgisinin DNS eşdeğeri olup, orijinal istek sahibinin IP adresi ve bağlantı noktası numarası hakkındaki bilgilerin ara proxy'ler ve yük dengeleyiciler (dnsdist gibi) aracılığıyla iletilmesine olanak tanır. . XPF'yi etkinleştirmek için seçenekler var "xpf-izin-from"Ve"xpf-rr-kodu";
  • EDNS uzantısı için geliştirilmiş destek İstemci Alt Ağı (ECS), DNS sorgularında, zincir boyunca iletilen ilk isteğin zehirlendiği alt ağ hakkındaki bilgileri yetkili bir DNS sunucusuna aktarmanıza olanak tanır (içerik dağıtım ağlarının etkin çalışması için istemcinin kaynak alt ağı hakkındaki veriler gereklidir) . Yeni sürüm, EDNS İstemci Alt Ağının kullanımı üzerinde seçici kontrole yönelik ayarlar ekliyor: "ecs eklentisi» Giden isteklerde IP'nin ECS'de kullanılacağı ağ maskelerinin listesiyle birlikte. Belirtilen maskelerin kapsamına girmeyen adresler için yönergede belirtilen genel adres "ecs-kapsam-sıfır-adresi". Direktif aracılığıyla"gelen-edns-alt ağını kullan» Doldurulmuş ECS değerlerine sahip gelen isteklerin değiştirilmeyeceği alt ağları tanımlayabilirsiniz;
  • Saniyede çok sayıda (100 binden fazla) istek işleyen sunucular için “yönerge”distribütör-konuları", gelen istekleri almak ve bunları çalışan iş parçacıkları arasında dağıtmak için iş parçacığı sayısını belirler (yalnızca " kullanıldığında anlamlıdır)pdns-dağıtım-sorguları=evet").
  • Ayar eklendi genel-sonek-listesi-dosyası kendi dosyanızı tanımlamak için genel soneklerin listesi PowerDNS Recursor'da yerleşik liste yerine kullanıcıların alt alan adlarını kaydedebilecekleri alan adları.

PowerDNS projesi ayrıca altı aylık bir geliştirme döngüsüne geçildiğini duyurdu ve PowerDNS Recursor 4.3'ün bir sonraki büyük sürümünün Ocak 2020'de çıkması bekleniyor. Önemli sürümler için güncellemeler yıl boyunca geliştirilecek ve ardından güvenlik açığı düzeltmeleri altı ay daha yayınlanacak. Böylece PowerDNS Recursor 4.2 şubesine yönelik destek Ocak 2021'e kadar sürecek. Yakın gelecekte 4.2 sürümünü yayınlaması beklenen PowerDNS Authoritative Server için de benzer geliştirme döngüsü değişiklikleri yapıldı.

PowerDNS Recursor'un ana özellikleri:

  • Uzaktan istatistik toplamaya yönelik araçlar;
  • Anında yeniden başlatma;
  • İşleyicileri Lua dilinde bağlamak için yerleşik motor;
  • Tam DNSSEC desteği ve DNS64;
  • RPZ (Müdahale Politikası Bölgeleri) desteği ve kara listeleri tanımlama yeteneği;
  • Sahteciliğe karşı mekanizmalar;
  • Çözünürlük sonuçlarını BIND bölge dosyaları olarak kaydetme yeteneği.
  • Yüksek performans sağlamak için FreeBSD, Linux ve Solaris'te (kqueue, epoll, /dev/poll) modern bağlantı çoğullama mekanizmalarının yanı sıra on binlerce paralel isteği işleyebilen yüksek performanslı bir DNS paket ayrıştırıcısı kullanılır.

Kaynak: opennet.ru

Yorum ekle