PowerDNS
| PowerDNS Server
| |
|---|---|
| [[Datei:Lua-Fehler in Modul:Wikidata, Zeile 1686: attempt to index field 'wikibase' (a nil value)|150px]] | |
| Basisdaten
| |
| Maintainer | Lua-Fehler in Modul:Wikidata, Zeile 1686: attempt to index field 'wikibase' (a nil value) |
| Entwickler | Bert Hubert |
| Erscheinungsjahr | Lua-Fehler in Modul:Wikidata, Zeile 1686: attempt to index field 'wikibase' (a nil value) |
| Aktuelle Version | Lua-Fehler in Modul:Wikidata, Zeile 1686: attempt to index field 'wikibase' (a nil value) (Lua-Fehler in Modul:Wikidata, Zeile 1686: attempt to index field 'wikibase' (a nil value)) |
| Aktuelle Vorabversion | Lua-Fehler in Modul:Wikidata, Zeile 1686: attempt to index field 'wikibase' (a nil value) (Lua-Fehler in Modul:Wikidata, Zeile 1686: attempt to index field 'wikibase' (a nil value)) |
| Betriebssystem | NetBSD, FreeBSD, OpenBSD, Linux, macOS, Windows NT |
| Programmiersprache | C++ |
| Kategorie | DNS-Server |
| Lizenz | GPL (freie Software) |
| deutschsprachig | ja |
| www.powerdns.com | |
PowerDNS Server ist ein unter der GNU General Public License veröffentlichter Nameserver, der verschiedene Datenquellen nach den benötigten Informationen für die DNS-Antworten befragen kann. Die Applikation ist in C++ geschrieben und kann mit allen POSIX-kompatiblen Betriebssystemen wie Linux oder BSD eingesetzt werden sowie unter Windows laufen.
Besondere Merkmale
PowerDNS Server unterscheidet sich von anderen DNS-Implementationen nicht nur durch die Vielzahl der möglichen Datenquellen, auch Backends genannt, sondern auch durch seinen Paket-Cache. Dieser speichert die DNS-Antworten auf die letzten Anfragen in einem RAM-Cache zwischen und sendet diese auf erneute Anfragen nach dem gleichen Eintrag zurück. Im Gegensatz zu Nameservern wie BIND werden Anfragen nach Einträgen in anderen Nameservern durch ein separates Programm in der PowerDNS-Distribution, dem Recursor, aufgelöst. Im Gegensatz zum Nameserver wird die DNS-Erweiterung DNSSEC im Recursor erst ab Version 4.0 (unvollständig, überarbeitet in Version 4.1) umgesetzt.<ref>DNSSEC in the PowerDNS Recursor — PowerDNS Recursor documentation. Abgerufen am 5. Dezember 2019.</ref>
Verfügbare Backends
PowerDNS unterstützt verschiedene Backends für das Speichern der Zonendaten:<ref>Backends. In: PowerDNS Authoritative Server documentation. Abgerufen am 13. Oktober 2021.</ref>
- bind
- Liest Zonendaten aus einer Zonendatei des weit verbreiteten BIND-Nameservers
- geoip
- Erlaubt je nach IP-Adressbereich oder geographischer Herkunft der IP-Adresse verschiedene Antworten zurückzusenden
- gmysql
- Verwendet MySQL als Datenbank
- godbc
- Greift auf Zoneninformationen in einer von ODBC unterstützten Datenbank zu
- gpgsql
- Verwendet PostgreSQL als Datenbank
- gsqlite3
- Verwendet SQLite als Datenbank
- ldap
- Holt Informationen aus einem hierarchisch strukturierten LDAP-Verzeichnis
- lmdb
- Verwendet Lightning Memory-Mapped Database als Datenbank
- lua2
- Ermöglicht das Ermitteln von Zonendaten mit Hilfe einer Lua-Schnittstelle
- pipe
- Fragt einen Koprozess nach Antworten auf DNS-Anfragen
- remote
- Fragt einen entfernten Prozess nach Antworten auf DNS-Anfragen (bspw. über HTTP)
- tinydns
- Liest die Zonendaten aus einer Datenbank von tinydns
PowerDNS Recursor
| PowerDNS Recursor
| |
|---|---|
| [[Datei:Lua-Fehler in Modul:Wikidata, Zeile 1686: attempt to index field 'wikibase' (a nil value)|150px]] | |
| Basisdaten
| |
| Maintainer | Lua-Fehler in Modul:Wikidata, Zeile 1686: attempt to index field 'wikibase' (a nil value) |
| Entwickler | Lua-Fehler in Modul:Wikidata, Zeile 1686: attempt to index field 'wikibase' (a nil value) |
| Erscheinungsjahr | Lua-Fehler in Modul:Wikidata, Zeile 1686: attempt to index field 'wikibase' (a nil value) |
| Aktuelle Version | Lua-Fehler in Modul:Wikidata, Zeile 273: attempt to index field 'wikibase' (a nil value) (Format invalid) |
| Aktuelle Vorabversion | Lua-Fehler in Modul:Wikidata, Zeile 1686: attempt to index field 'wikibase' (a nil value) (Lua-Fehler in Modul:Wikidata, Zeile 1686: attempt to index field 'wikibase' (a nil value)) |
| Betriebssystem | NetBSD, FreeBSD, OpenBSD, Linux, macOS, Windows NT |
| Programmiersprache | C++ |
| Kategorie | DNS-Server |
| Lizenz | GPL (freie Software) |
| deutschsprachig | ja |
| Lua-Fehler in Modul:Wikidata, Zeile 1686: attempt to index field 'wikibase' (a nil value) | |
PowerDNS Recursor ist ein rekursiver bzw. caching-only Nameserver, welcher sowohl als separates Paket verfügbar als auch in der PowerDNS Server Source enthalten ist. Der Recursor steht ebenso wie der autoritative Server unter GPL und wird bereits von mehreren großen ISPs anstelle von BIND als resolver eingesetzt.
Ebenso wie der autoritative Server ist der Recursor in C++ geschrieben und benutzt – obwohl er singlethreaded ist – einige Funktionen der Threading-Bibliothek Boost.
Trotz seiner Bestimmung als caching-only Nameserver kann der Recursor durch Mitbenutzung des BIND-Backends Code von PowerDNS Server Zonenfiles in BIND-Syntax laden und im DNS verfügbar machen.
Es ist möglich, den Recursor hinter einer PowerDNS Server Instanz laufen zu lassen, sodass letzterer zunächst die autoritative Seite abfängt und dann der Recursor das resolven übernimmt. Empfehlenswert ist es aber, den Recursor frei laufen zu lassen: Zum einen ist dies der Performance zuträglich und zum anderen läuft man so nicht Gefahr, dass die Benutzer evtl. veraltete Zonen zu sehen bekommen, welche längst nicht mehr im weltweiten DNS Baum delegiert sind.
Ab Version 3.1.7 erlaubt PowerDNS Recursor das Einbetten von Lua-Code über den sich das Antwortverhalten des Servers sowohl vor dem eigentlichen rekursiven Durchwandern des DNS Baumes als auch nach Erhalt einer NXDOMAIN-Antwort manipulieren lässt.<ref>Recursor Scripting Dokumentation</ref>
Weblinks
- PowerDNS-Website
- PowerDNS-Dokumentation
- PowerDNS auf GitHub
- Nameserver mit PowerDNS (ADMIN-Magazin)
Einzelnachweise
<references />