Udgivelse af DNS-serveren BIND 9.20.0, oversat til libuv og en ny backend til DB

Efter to og et halvt års udvikling har konsortiet ISC præsenteret den første stabile udgave af den nye betydningsfulde version af DNS-serveren BIND 9.20, som har inkorporeret ændringer fra den eksperimentelle version BIND 9.19. Støtten til version 9.20 vil blive opretholdt inden for en udvidet supportcyklus indtil første kvartal 2028. Støtten til version 9.18 vil ophøre i andet kvartal 2025. For at udvikle funktionaliteten i den næste stabile version BIND vil der blive dannet en eksperimentel version BIND 9.21.0. Projektkoden er skrevet i C og distribueres under MPL 2.0 licensen.

Vigtige ændringer:

  • Kernen af applikationen, der forbinder alle komponenter, er blevet opdateret til at bruge en begivenhedscyklus i ikke-blokerende tilstand, implementeret ved hjælp af libuv biblioteket, som anvendes i projekter som Node.js, Knot DNS, H2O, Luvit og MoarVM. I version 9.16 blev BIND's netværkforbindelseshåndterer overført til libuv, og nu er dele, der bruges til at interagere med interne infrastrukturkomponenter, samt langvarige opgaver i separate tråde, kaldet threadpool, blevet opdateret til at bruge denne tilgang, hvilket gør det muligt at validere DNSSEC, overføre zoner, vedligeholde zonesystemet og håndtere RPZ (Response Policy Zone). For at bygge BIND kræves nu mindst version 1.34.0 af libuv.
  • En ny backend til databasearbejde er blevet foreslået — "QP trie", som har erstattet RBTDB (Red-Black Tree Database) og er aktiveret som standard til opbevaring af cachen og DNS-zonedatabasen. Til multithreaded arbejde i QP trie anvendes liburcu biblioteket, som implementerer lockfri strukturer i brugerrummet ved hjælp af RCU (read-copy-update) synkroniseringsmekanismen og QSBR (Quiescent-State-Based Reclamation) metoden til sikker hukommelsesfrigivelse.
  • En opdateret komprimeringsmekanisme er blevet implementeret domenenavne, som anvender en mere kompakt kodningsmetode til navne med mange etiketter.
  • Mulighederne for DNSSEC er blevet udvidet: "dnssec-policy" er nu tilladt til styring af signerede zoner (auto-dnssec muligheden er blevet fjernet); ved brug af "inline-signing" er der tilføjet støtte til RFC 8901 (DNSSEC multi-signer model 2); støtten til PKCS#11 baseret på OpenSSL 3.0.0 Engine API er genoptaget; i "dnssec-policy" er der tilføjet støtte til HSM (Hardware Security Module).
  • Der er tilføjet support for den anden version af zoneregister (Catalog Zone, RFC 9432), som forenkler vedligeholdelsen af sekundære DNS-servere ved, at der i stedet for at definere separate poster for hver sekundær zone på den sekundære server, etableres en overførsel af zoneregistret mellem den primære og den sekundære server. Efter opsætningen af denne overførsel, som fungerer på samme måde som overførslen af separate zoner, oprettes zoner, der er mærket som en del af registreringskataloget på den primære server, automatisk på den sekundære server uden behov for at redigere konfigurationsfiler.
  • Der er tilføjet support for mekanismen til udvidede fejl (Extended DNS Errors, RFC 8914), som muliggør tilbagelevering af yderligere information om årsagen til den fejl, der opstod under udførelsen af DNS-forespørgslen.
  • Implementeringen af teknologierne 'DNS over HTTPS' (DoH, DNS over HTTPS) og DNS over TLS (DoT, DNS over TLS), der anvendes til at kryptere klienters forespørgsler til resolveren og krypteret dataudveksling mellem serverne, er blevet overført til en ensartet transport.
  • Der er tilføjet mulighed for at bruge PROXYv2-protokollen med alle transportmetoder, der understøttes i BIND. PROXY-protokollen muliggør overførsel af informationsforbindelse for at bevare oplysninger om den oprindelige IP-adresse og portnummer, når DNS-forespørgsler videresendes gennem andre backend-systemer, belastningsbalancer og proxyer.servere.
  • Der er tilføjet support for USDT-tilstand (User Statically Defined Tracing), der giver mulighed for at udføre applikationstracering ved hjælp af kommandolinjeprogrammet perf, uden at skabe ekstra overhead, når traceren er slået fra.
  • Den indsamlede statistik indeholder oplysninger om uafsluttede indgående zoneoverførsler.
  • Der er udført arbejde for at reducere forsinkelser, mindske hukommelsesforbruget og reducere CPU-belastningen under navneopslag, brugen af DNS-over-TLS og dannelsen af svar via UDP og TCP.
    Udgivelse af DNS-serveren BIND 9.20.0, oversat til libuv og en ny backend til DB
    Udgivelse af DNS-serveren BIND 9.20.0, oversat til libuv og en ny backend til DB
    Udgivelse af DNS-serveren BIND 9.20.0, oversat til libuv og en ny backend til DB

Kilde: opennet.ru

Køb pålidelig webhosting med DDoS-beskyttelse, VPS VDS-servere 🔥 Køb pålidelig webhosting med DDoS-beskyttelse, VPS VDS-servere | ProHoster