PowerDNS Recursor to open source, high-endowy, darmowy, przenośny i wydajny serwer nazw, oprogramowanie wiersza poleceń, które zapewnia administratorom systemu bogaty w funkcje i wszechstronny zestaw technologie związane z pocztą elektroniczną i nazewnictwem internetowym. Jest częścią dobrze znanego pakietu oprogramowania PowerDNS.
PowerDNS to oprogramowanie serwera nazw demona o otwartym kodzie źródłowym, napisane od podstaw, zapewniające wysokowydajny, nowoczesny i zaawansowany autorytatywny serwer nazw. Współpracuje z prawie każdą bazą danych i jest zgodny ze wszystkimi odpowiednimi dokumentami standardowymi DNS (Domain Name System).
Funkcje na pierwszy rzut oka
Najważniejsze funkcje obejmują pełną obsługę wszystkich popularnych standardów, obsługę DNS64, możliwość ponownego skonfigurowania go bez przestojów, obsługę środków bezpieczeństwa i list blokowych, zdalny i lokalny dostęp, zaawansowane narzędzia zapobiegające podszywaniu się, rekondowanie odpowiedzi, przechwytywanie pytań, NXDOMAIN przekierowanie, proste pliki strefy BIND, bezpośrednie API sterujące i wbudowane generowanie odpowiedzi opartych na skryptach na podstawie Lua.
Ponadto zawiera zaawansowane funkcje, które są wspólne dla wszystkich produktów PowerDNS, w tym obsługę IPv4 (UDP i TCP), IPv6 (UDP i TCP), wysoką wydajność, tylko do odczytu SNMP (Simple Network Management Protocol) pomost statystyczny, a także grafy w czasie rzeczywistym za pośrednictwem zdalnych statystyk.
PowerDNS Recursor to bardzo wydajne oprogramowanie, które może obsłużyć setki milionów rozdzielczości DNS, wspierane przez wiele procesorów i tę samą najnowocześniejszą funkcjonalność skryptowania, która jest używana w produkcie PowerDNS Authoritative Server. Jest to bardzo elastyczny i wydajny program do rozwiązywania problemów DNS napisany specjalnie dla systemów GNU / Linux.
Pod maską i dostępnością
PowerDNS jest dostępny we wszystkich głównych dystrybucjach systemu Linux i wykorzystuje elastyczną architekturę zaplecza, zaprojektowaną specjalnie w celu umożliwienia dostępu do informacji DNS z dowolnego źródła danych. Oprogramowanie jest napisane w całości w języku programowania C ++ i jest dostępne do pobrania jako rodzime instalatory dla systemów operacyjnych Ubuntu / Debian i Red Hat / Fedora, a także z archiwum źródłowego. Został pomyślnie przetestowany na 32-bitowych i 64-bitowych platformach sprzętowych.
Co nowego w tej wersji:
- Ulepszenia:
- # 6550, # 6562: Dodaj opcję poddrzewa do punktu końcowego konfiguracji pamięci podręcznej API.
- # 6566: Użyj oddzielnej, nie blokującej się rury do dystrybucji zapytań.
- # 6567: Przenieś obsługę węgla / serwera WWW / sterowania / statystyk do osobnego wątku.
- # 6583: Dodaj wersje do QName / ComboAddresses do API FFI.
- # 6611, # 6130: Zaktualizuj lata autorskie do 2018 roku (Matt Nordhoff).
- # 6474, # 6596, # 6478: Napraw ostrzeżenie w botanu> 2.5.0.
- Poprawione błędy:
- # 6313: Policz odnośnik do wewnętrznej strefy autoryzacji jako brak pamięci podręcznej.
- # 6467: Nie zwiększaj liczników sprawdzania poprawności DNSSEC podczas działania z funkcją sprawdzania braku certyfikatu.
- # 6469: Przestrzegaj limitu czasu AXFR podczas łączenia się z serwerem RPZ.
- # 6418, # 6179: Zwiększ liczbę stosów MTasker, aby uniknąć awarii podczas rozwijania wyjątków (Chris Hofstaedtler).
- # 6419, # 6086: Używaj czasu SyncRes w naszych testach jednostkowych podczas sprawdzania poprawności pamięci podręcznej (Chris Hofstaedtler).
- # 6514, # 6630: Dodaj -rdynamic do C {, XX} FLAGS, gdy budujemy z LuaJIT.
- # 6588, # 6237: Opóźnij ładowanie stref RPZ, aż do zakończenia przetwarzania, ustalając warunki wyścigu.
- # 6595, # 6542, # 6516, # 6358, # 6517: Zmień kolejność, aby uniknąć konfliktu doładowania L.
Co nowego w wersji:
- Poprawki:
- # 5930: Nie zakładaj, że rekord TXT jest pierwszym rekordem dla secpoll
- # 6082: Nie dodawaj rekordów IN-IN do pamięci podręcznej
Co nowego w wersji 4.0.6:
- Poprawki:
- Użyj przychodzącego ECS do wyszukiwania w pamięci podręcznej, jeśli ustawiono pod-wykorzystanie-podsieci-edns
- podczas tworzenia maski sieci z listy combo zaniedbaliśmy zerowanie portu. Może to doprowadzić do proliferacji masek sieci.
- Nie należy przyjmować początkowego źródła ECS dla zakresu 1, jeśli EDNS jest wyłączony
- ustaw również d_requestor bez Lua: logika ECS tego potrzebuje
- Napraw IXFR pomijając część dodaną ostatniej sekwencji
- Traktuj wielkość ładunku osoby żądającej niższej niż 512 jako równą 512
- uczyń liczb całkowitych URI 16 bitami, naprawia bilet # 5443
- cytowanie infekcji; naprawia bilet nr 5401
- Ulepszenia:
- w tym przypadku podsieć klienta EDNS staje się kompatybilna z pamięcią podręczną pakietów, używając istniejącego narzędzia do odpowiedzi zmiennych.
- Usuń tylko tyle wpisów z pamięci podręcznej, a nie więcej niż zadanych
- Przenieś wpisy wygasłej pamięci podręcznej na początek, aby zostały usunięte
- zmienił adres IPv6 na b.root-servers.net
- e.root-servers.net ma teraz IPv6
- witaj osoby decaf (ED25519 i ED448) Algorytm testowania 15: "Decaf ED25519" - & gt; "Decaf ED25519" - & gt; "Decaf ED25519" Podpis i weryfikacja ok, podpis 68usec, weryfikacja 93usec Algorytm testowania 16: "Decaf ED448" - &; "Decaf ED448" - & gt; "Decaf ED448" Podpisuj i zweryfikuj ok, wpisz 163usec, zweryfikuj 252usec
- nie używaj sygnatury libdecaf ed25519, gdy włączona jest libsodium
- nie mieszaj wiadomości w podpisującym ed25519
- Domyślnie wyłącz używanie podsieci-encji-edns
Co nowego w wersji 4.0.4:
- Poprawki:
- commit 658d9e4: Sprawdź podpis TSIG w IXFR (Security Advisory 2016-04)
- commit 91acd82: Nie parsuj fałszywych RR w zapytaniach, gdy ich nie potrzebujemy (Security Advisory 2016-02)
- commit 400e28d: Napraw nieprawidłowe sprawdzanie długości w DNSName podczas wyodrębniania qtype lub qclass
- commit 2168188: rec: Zaczekaj, aż po uruchomieniu demona uruchomi wątki RPZ i protobuf
- commit 3beb3b2: Włącz (ponowne) wypełnianie, pobierz główne rekordy NS
- commit cfeb109: rec: Naprawienie inwersji src / dest w komunikacie protobuf dla zapytań TCP
- commit 46a6666: Rezygnacja NSEC3 i niezabezpieczone poprawki do przodu Bogus
- commit bb437d4: w RPP customPolicy wykonaj wynikowy rekord CNAME
- Zatwierdź 6b5a8f3: DNSSEC: nie idź fałszywie na zero skonfigurowanych DS
- commit 1fa6e1b: Nie zawieszaj się na pustym pierścieniu zapytań
- commit bfb7e5d: Ustaw wynik na NoError przed wywołaniem funkcji preresolve
- Dodatki i ulepszenia:
- commit 7c3398a: dodaj maks. głębokość rekursji, aby ograniczyć liczbę rekursji wewnętrznych
- commit 3d59c6f: Naprawianie budowania przy wyłączonej obsłudze ECDSA w libcrypto
- commit 0170a3b: Dodaj requestorId i kilka komentarzy do pliku definicji protobuf
- Zatwierdź d8cd67b: Ustaw świadomie strefy przeniesienia negcache
- commit 46ccbd6: rekordy pamięci podręcznej dla stref, które zostały delegowane do strefy przekazanej
- commit 5aa64e6, commit 5f4242e i zatwierdzenie 0f707cd: DNSSEC: Wdrożenie keysearch na podstawie cięć strefy
- commit ddf6fa5: rec: Dodaj wsparcie dla boost :: context & gt; = 1.61
- commit bb6bd6e: Dodaj getRecursorThreadId () do Lua, identyfikując bieżący wątek
- commit d8baf17: Obsługa rekordów CNAME na szczycie bezpiecznych stref w innych bezpiecznych strefach
Co nowego w wersji 4.0.0:
- Wiele rzeczy zmienialiśmy wewnętrznie na serwer nazw:
- Przeniesiono do C ++ 2011, czystszą i bardziej wydajną wersję C ++, która pozwoliła nam poprawić jakość implementacji w wielu miejscach.c
- Wdrożono dedykowaną infrastrukturę do obsługi nazw DNS w pełni "DNS Native". i potrzebuje mniej ucieczki i cofnięcia.
- Przełączono do przechowywania binarnego rekordów DNS we wszystkich miejscach.
- Przeniesiono listy ACL do dedykowanego drzewa maski sieci.
- Zaimplementowano wersję RCU dla zmian konfiguracji
- Instrumentowane nasze użycie alokatora pamięci, zmniejszona liczba połączeń malloc znacznie.
- Infrastruktura haka Lua została przerobiona za pomocą LuaWrapper; stare skrypty przestaną działać, ale nowe skrypty łatwiej pisać w nowym interfejsie.
- Z powodu tych zmian PowerDNS Recursor 4.0.0 jest prawie o rząd wielkości szybszy niż gałąź 3.7.
- Przetwarzanie DNSSEC: jeśli poprosisz o zapisy DNSSEC, otrzymasz je.
- Sprawdzanie poprawności DNSSEC: jeśli tak skonfigurowano, PowerDNS przeprowadza sprawdzanie poprawności DNSSEC twoich odpowiedzi.
- Całkowicie odnowiony interfejs API Lua, który jest "DNSName" natywny, a zatem o wiele mniej podatny na błędy i prawdopodobnie szybszy w przypadku najczęściej używanych scenariuszy. Ładuje i indeksuje 1 milion domen niestandardowych list zasad w ciągu kilku sekund.
- Nowy asynchroniczny adres dla domeny, adres IP, mechanizm zapytania. Pozwala to PowerDNS na konsultowanie się z usługą zewnętrzną w czasie rzeczywistym w celu określenia statusu klienta lub domeny. Może to na przykład oznaczać wyszukiwanie rzeczywistej tożsamości klienta z serwera DHCP na podstawie adresu IP (na przykład opcja 82).
- Obsługa RPZ (z pliku, ponad AXFR lub IXFR). To ładuje największą strefę Spamhaus w 5 sekund na naszym sprzęcie, zawierającym około 2 milionów instrukcji.
- Wszystkie pamięci podręczne można teraz wyczyścić w przypadku sufiksów ze względu na porządek kanoniczny.
- Wiele, znacznie bardziej trafnych danych dotyczących wydajności, w tym miarodajne autorytatywne pomiary wydajności ("to ja lub sieć, która jest wolna").
- Obsługa podsieci klienta EDNS, w tym rozpoznawanie bufora w zależności od odpowiedzi podsieci.
- DNSSEC:
- Jak wspomniano powyżej w sekcji Funkcje, program PowerDNS Recursor ma teraz obsługę przetwarzania DNSSEC i eksperymentalną obsługę sprawdzania poprawności DNSSEC. Przetwarzanie DNSSEC oznacza, że serwer nazw zwróci rekordy RRSIG, gdy zażąda tego klient (za pomocą klucza DO) i zawsze pobierze RRSIG, nawet jeśli klient tego nie zażąda. Wykona sprawdzanie poprawności i ustawi bit AD w odpowiedzi, jeśli klient zażąda sprawdzenia poprawności. W pełnym trybie DNSSEC, rekursor PowerDNS sprawdza poprawność odpowiedzi i ustawia bit AD w sprawdzonych odpowiedziach, jeśli klient tego zażąda, a SERVFAIL będzie fałszywe odpowiedzi na wszystkich klientów.
- Obsługa DNSSEC jest oznaczona jako eksperymentalna, ale funkcjonalna, ponieważ ma 2 ograniczenia:
- Zatwierdzono negatywne odpowiedzi, ale dowód NSEC nie został w pełni sprawdzony.
- Strefy, które mają rekord CNAME na wierzchołku (który i tak jest "nieprawidłowy") sprawdzają się jako bogus.
- Jeśli używasz usługi DNSSEC i zauważysz uszkodzone domeny, zrób problem.
Co nowego w wersji 3.7.2:
- Najważniejszą częścią tej aktualizacji jest poprawka dla CVE-2015-1868.
Co nowego w wersji 3.6.2:
- commit ab14b4f: przyspieszone generowanie servfail dla błędów typu ezdns (całkowite anulowanie rozwiązywania zapytań, jeśli trafimy ponad 50 outqueries)
- commit 42025be: PowerDNS sprawdza teraz stan bezpieczeństwa wydania podczas uruchamiania i okresowo. Więcej szczegółów na temat tej funkcji i sposobu jej wyłączenia można znaleźć w sekcji 2, "Sondowanie zabezpieczeń".
- commit 5027429: Nie przekazaliśmy odpowiedniego "lokalnego" adresu gniazda Lua dla zapytań TCP / IP w rekursorze. Ponadto spróbowalibyśmy wyszukać plik, którego nie było na odblokowanej mapie, która mogłaby doprowadzić do awarii. Zamyka bilet 1828, dziękuje Winfried za zgłoszenie
- commit 752756c: Synchronizuj osadzoną kopię yahttp. API: zastąp uwierzytelnianie HTTP Basic kluczem statycznym w niestandardowym nagłówku
- Zatwierdź 6fdd40d: dodaj brakujące #include do rec-channel.hh (to naprawia bazowanie na OS X).
Co nowego w wersji 3.5.3:
- 3.5 zamieniło naszą KAŻDE zapytanie na A + AAAA dla użytkowników z włączoną obsługą IPv6. Rozległe pomiary Darrena Gamble pokazały, że zmiana ta miała nietrywialny wpływ na wydajność. Teraz robimy DOWOLNE zapytanie jak wcześniej, ale w razie potrzeby cofamy się do indywidualnych zapytań A + AAAA. Zmień w zatwierdzeniu 1147a8b.
- Adres IPv6 dla d.root-servers.net został dodany w zatwierdzeniu 66cf384, dziękuje Ralf van der Enden.
- Teraz upuszczamy pakiety z niezerowym opodem (np. specjalne pakiety, takie jak DNS UPDATE). Jeśli jest włączona eksperymentalna flaga pdns-distributes-queries, ta poprawka pozwala uniknąć awarii. Normalne ustawienia nigdy nie były podatne na tę awarię. Kod w commit 35bc40d, zamyka bilet 945.
- Obsługa TXT została nieco ulepszona w commit 4b57460, zamykając bilet 795.
Co nowego w wersji 3.3:
- Ta wersja rozwiązuje wiele drobnych, ale uporczywych problemów, rund wyłączyć obsługę IPv6 i dodaje ważną funkcję dla wielu użytkowników skryptów Lua.
- Ponadto poprawiono skalowalność systemu Solaris 10.
- Ta wersja jest identyczna z wersją RC3.
Co nowego w wersji 3.3 RC3:
- Ta wersja naprawia kilka małych, ale trwałych problemów, uzupełnia obsługę IPv6 i dodaje ważną funkcję dla wielu użytkowników skryptów Lua.
- Ponadto poprawiono skalowalność systemu Solaris 10.
- Od czasu RC2 usunięto nieszkodliwy, ale przerażający komunikat o nieaktualnym katalogu głównym.
Co nowego w wersji 3.3 RC2:
- Ta wersja rozwiązuje wiele małych, ale trwałych problemów, uzupełnia obsługę IPv6 i dodaje ważną funkcję dla wielu użytkowników skryptów Lua.
- Ponadto poprawiono skalowalność systemu Solaris 10.
- Od czasu RC1 kompilacja na RHEL5 została naprawiona.
Komentarze nie znaleziono