- PowerDNS
Infobox Software
name = PowerDNS Server
caption =
author = PowerDNS.COM BV
developer =Bert Hubert
released =
latest release version = [http://downloads.powerdns.com/releases/pdns-2.9.21.tar.gz 2.9.21]
latest release date =21 April 2007
latest preview version =
latest preview date =
operating system = AnyUnix-like
programming language = C++
platform =Cross-platform
genre = DNS server
license =GNU General Public License v2
website = [http://www.powerdns.com/ www.powerdns.com] Infobox Software
name = PowerDNS Recursor
caption =
author = PowerDNS.COM BV
developer =Bert Hubert
released =
latest release version = [http://downloads.powerdns.com/releases/pdns-recursor-3.1.4.tar.bz2 3.1.4]
latest release date =13 November 2007
latest preview version = [http://svn.powerdns.com/snapshots/pdns-recursor-3.1.5-snapshot3.tar.bz2 3.1.5-snapshot3]
latest preview date =6 February 2008
operating system = AnyUnix-like
programming language = C++
platform =Cross-platform
genre = DNS server
license =GNU General Public License v2
website = [http://www.powerdns.com/ www.powerdns.com]PowerDNS is a versatile DNS server, written in
C++ and licensed under the GPL. It runs on mostUnix derivatives and onMicrosoft Windows . PowerDNS features a large number of different "backends" ranging from simpleBIND style zonefiles torelational database s andload balancing /failover algorithms . A DNS recursor is also included as a separate program.PowerDNS is a product of the Dutch company PowerDNS.COM BV, with numerous contributions from the
Open Source community. The principal author isBert Hubert .Features
PowerDNS Server (pdns_server) consists of a single core, and multiple dynamically loadable
backend s that runmulti-threaded . The core handles all packet processing and DNS intelligence, while one or more backends deliver DNS records using arbitrary storage methods.Zone transfers and update notifications are supported, and the processes can run "unprivileged" and "
chroot ed". Various "cache s" are maintained to speed up query processing. "Runtime control" is available through the pdns_control command, which allows reloading of separate zones, cache purges, zone notifications and dumpsstatistics inMulti Router Traffic Grapher /rrdtool format. Realtime information can also be obtained through the optional built-inweb server .Recursor
PowerDNS Recursor (pdns_recursor [http://doc.powerdns.com/built-in-recursor.html] ) is a "resolving" DNS server, that runs as a separate process. The authoritative pdns_server can be configured to proxy "recursive queries" to the recursor, and optionally overlay "authoritative zone data".
This part of PowerDNS is single threaded, but is written as if it were multi-threaded, by the use of the MTasker library [ [http://ds9a.nl/mtasker/ MTasker ] ] , which is a simple cooperative multitasking library and boost. It is also available as a standalone package.
It does not have to run a pdns_server process as a gatekeeper for pdns_recursor, if the goal is simply to provide caching/recursing/resolving nameservice as running pdns_recursor on its own is even more efficient than behind the authoritative component.
As of 2007, the Recursor is used by several of the largest Internet providers of the world, including
AOL ,Shaw Cable andNeuf Cegetel .Backends
; [http://doc.powerdns.com/bindbackend.html#AEN5285 bind and bind2] : Reads zone data from regular BIND style zonefiles; [http://doc.powerdns.com/db2.html#AEN5224 db2] : Queries an
IBM DB2 database server; [http://wiki.powerdns.com/cgi-bin/trac.fcgi/browser/trunk/pdns/modules/geobackend/README geo] : Allows different answers to DNS queries coming from different IP address ranges or based on the geographic location; [http://doc.powerdns.com/generic-mypgsql-backends.html#AEN4812 gmysql] : SupportsMySQL databases; [http://doc.powerdns.com/generic-mypgsql-backends.html#AEN4812 gpgsql] : SupportsPostgreSQL databases; goracle : Supports Oracle databases; [http://doc.powerdns.com/gsqlite.html#AEN5172 gsqlite] : SupportsSQLite databases; [http://doc.powerdns.com/ldap.html#AEN5455 ldap] : Fetches zone data from a hierarchical LDAP directory; [http://doc.powerdns.com/odbc.html#AEN5395 odbc] : Retrieves zone information from a database supported by the ODBC library; opendbx : A database backend optimized for speed, load balancing and fail-over based on theOpenDBX library. It currently supportsMySQL ,PostgreSQL ,SQLite ,Firebird ,Interbase , SQL Server and Sybase ASE; [http://doc.powerdns.com/backends-detail.html#AEN4528 pipe] : Asks a separate process for answers; random : Returnsrandom data (for testing only); xdb : Can talk to Tridge's Trivial Database or to regular *db tables on disk. This backend provides the highest performancePowerDNS and Wikimedia
As of early 2005, PowerDNS, in combination with the bind and geo backends, is used by
Wikimedia to handle all DNS traffic. By using the geo backend, incoming clients can be redirected to the nearest Wikipedia server (based on their geographic location). This facility provides an effective way ofload balancing and it reduces response times for the clients.See also
*
Comparison of DNS server software References
External links
* [http://www.powerdns.com/ PowerDNS website]
* [http://rtfm.powerdns.com PowerDNS documentation]
* [http://wiki.powerdns.com/ Open Source Community page]
* Preliminary [http://cvs.blitzed.org/geo-dns/README?rev=HEAD&content-type=text/vnd.viewcvs-markup GeoBackend documentation]
Wikimedia Foundation. 2010.