PowerDNS is een dns-server met een database als back-end, waardoor het beheer van een groot aantal dns-entries op een gemakkelijke manier kan plaatsvinden. De ontwikkelaars hebben eerder besloten om de twee delen waaruit PowerDNS bestaat, een recursor en een authoritative nameserver, apart uit te geven. Waardoor men sneller en gerichter een nieuwe versie kan uitbrengen, aldus de ontwikkelaars.
Als je een dns-look-up uitvoert, zal een recursor in eerste instantie beginnen met het stellen van deze vraag aan een dns-rootserver. Deze kan dan doorverwijzen naar andere servers, vanaf waar weer doorverwezen kan worden naar andere servers, enzovoort, totdat uiteindelijk een server bereikt is die het antwoord weet of weet dat de look-up niet mogelijk is. Van dit laatste kan sprake zijn als de naam niet bestaat of de servers niet reageren. Het proces van het langslopen van verschillende authoritative servers heet recursie. De ontwikkelaars hebben PowerDNS Recursor 4.0.2 uitgebracht. De veranderingen in deze uitgave zien er als volgt uit:
PowerDNS Recursor 4.0.2
This release fixes a regression in 4.x where CNAME records for DNSSEC signed domains were not sorted before the final answers, leading to some clients (notably some versions of Chrome) not being able to extract the required answer from the packet. This happened exclusively for DNSSEC signed domains, but the problem happens even for clients not requesting DNSSEC validation.
Further fixes and changes can be found below:
Bug fixesAdditions and enhancements
- #4264: Set dq.rcode before calling postresolve
- #4294: Honor PIE flags.
- #4310: Fix build with LibreSSL, for which OPENSSL_VERSION_NUMBER is irrelevant
- #4340: Don't shuffle CNAME records.
- #4354: Fix delegation-only
- #4288: Respect the timeout when connecting to a protobuf server
- #4300: allow newDN to take a DNSName in; document missing methods
- #4301: expose SMN toString to lua
- #4318: Anonymize the protobuf ECS value as well
- #4324: Allow Lua access to the result of the Policy Engine decision, skip RPZ, finish RPZ implementation
- #4349: Remove unused DNSPacket::d_qlen
- #4351: RPZ: Use query-local-address(6) by default
- #4357: Move the root DNSSEC data to a header file