Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
PowerDNS
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
{{short description|Versatile nameserver which supports a large number of backends}} {{distinguish|text=[[pdnsd]], a caching DNS proxy}} {{Infobox software | name = PowerDNS Server | logo = [[File:Official PowerDNS logo 250 pixels.png]] | screenshot = | caption = | author = PowerDNS.com B.V. | developer = PowerDNS Community, Bert Hubert | released = | latest release version = 4.9.5 | latest release date = {{release date|2025|05|07}}<ref>{{cite web|title=Changelogs for Authoritative Server 4.9.x|url=https://doc.powerdns.com/authoritative/changelog/4.9.html#change-4.9.5|accessdate=2025-05-07}}</ref> | latest preview version = | latest preview date = | operating system = [[Unix-like]] | programming language = [[C++]] | platform = | genre = [[Domain Name System|DNS]] server | license = [[GNU General Public License]] v2 | website = <!-- Leave empty for Wikidata. --> }} {{Infobox software | name = PowerDNS Recursor | logo = | screenshot = | caption = | author = PowerDNS.com B.V. | developer = PowerDNS Community, Bert Hubert | released = | latest release version = 5.2.2 | latest release date = {{release date|2025|04|09}}<ref>{{cite web|title=Changelogs for Recursor 5.2.x|url=https://doc.powerdns.com/recursor/changelog/5.2.html#change-5.2.2|date=2025-04-09|accessdate=2025-04-09}}</ref> | latest preview version = | latest preview date = | operating system = [[Unix-like]] | programming language = [[C++]] | platform = | genre = [[Domain Name System|DNS]] server | license = [[GNU General Public License]] v2 | website = <!-- Leave empty for Wikidata. --> }} {{Infobox software | name = PowerDNS DNSdist | logo = | screenshot = | caption = | author = PowerDNS.com B.V. | developer = PowerDNS Community, Bert Hubert | released = | latest release version = 1.9.10 | latest release date = {{release date|2025|05|20}}<ref>{{cite web|title=Changelogs for DNSdist 1.9.10|url=https://dnsdist.org/changelog.html#change-1.9.10|date=2025-05-20|accessdate=2025-05-20}}</ref> | latest preview version = | latest preview date = | operating system = [[Unix-like]] | programming language = [[C++]] | platform = | genre = [[Domain Name System|DNS]] server | license = [[GNU General Public License]] v2 | website = <!-- Leave empty for Wikidata. --> }} '''PowerDNS''' is a [[Name server|DNS server]] program, written in [[C++]] and licensed under the [[GNU General Public License|GPL]]. It runs on most [[Unix]] derivatives. PowerDNS features a large number of different ''backends'' ranging from simple [[BIND]] style zonefiles to [[relational database]]s<ref name = "Jeannerot, Azylis Net, 2016" >{{ Cite web | url = http://technique.azylis.net/powerdns/ | title = {{sic|POWERDNS|nolink=y}} | access-date = 27 July 2019 | first = Christophe | last = Jeannerot | date = 21 October 2016 | website = Azylis dot net | language = fr | quote = Nous allons utiliser POWERDNS avec un stockage des tables DNS dans une base de données MARIADB. | archive-url = https://web.archive.org/web/20190727161551/http://technique.azylis.net/powerdns/ | archive-date = 27 July 2019 | df = dmy-all }}</ref> and [[Load balancing (computing)|load balancing]]/[[failover]] [[algorithms]]. A DNS [[Domain Name System#DNS resolvers|recursor]] is provided as a separate program. == History == PowerDNS development began in 1999 and was originally a commercial proprietary product. In November 2002, the source code was made public under the open-source GPL v2 license.<ref>{{cite book |last = Mens |first = Jan-Piet |title = Alternative DNS Servers: Choice and Deployment, and Optional SQL/LDAP Back-Ends (Paperback) |publisher = UIT Cambridge Ltd. |year = 2008 |pages = 114 |isbn = 978-0-9544529-9-5}}</ref><ref> {{cite web |url = https://www.powerdns.com/about.html |title = About |date = n.d. |website = PowerDNS |publisher = PowerDNS.COM BV |access-date = 24 January 2019 |quote = "PowerDNS was launched in 1999"; "Originally closed source"; "In 2002, all PowerDNS software was released as open source" }}</ref> == Features == PowerDNS [[Name server#Authoritative name server|Authoritative Server]] ('''pdns_server''') consists of a general purpose authoritative server, and multiple [[library (computer science)|dynamically loadable]] [[Front and back ends|backend]]s that both run [[multi-threaded]]. The core handles all packet processing and DNS intelligence, while one or more backends deliver [[DNS record]]s using arbitrary [[computer storage|storage methods]]. [[DNS zone transfer|Zone transfers]] and update notifications are supported, and the processes can run ''unprivileged'' and ''[[chroot]]ed''. Various ''[[DNS cache|caches]]'' are maintained to speed up query processing. ''[[Run time (program lifecycle phase)|Run-time]] control'' is available through the '''pdns_control''' command, which allows reloading of separate zones, cache purges, zone notifications and dumps [[statistics]] in [[Multi Router Traffic Grapher]] / [[rrdtool]] format. Realtime information can also be obtained through the optional built-in [[web server]]. There are many independent projects to create management interfaces for PowerDNS. === DNSSEC === The PowerDNS [[Name server#Authoritative name server|Authoritative Server]] supports [[DNSSEC]] as of version 3.0. While pre-signed zones can be served, it is also possible to perform online signing & key management. This has the upside of being relatively easy, but the downside that the cryptographic keying material is present on the servers itself (which is also true of any HTTPS server when not used with a [[Hardware security module|HSM]] for example). == Recursor == PowerDNS Recursor ('''pdns_recursor'''<ref>{{cite web|url=https://doc.powerdns.com/recursor/ |title=PowerDNS Recursor |publisher=Doc.powerdns.com |date= |accessdate=2014-05-11}}</ref>) is a ''resolving'' DNS server, that runs as a separate process. This part of PowerDNS uses a combination of native threads and user-space threads, through the use of [[Boost (C++ libraries)|Boost]] and the MTasker library,<ref>[http://ds9a.nl/mtasker/ MTasker<!-- Bot generated title -->]</ref> which is a simple cooperative multitasking library. 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. Support for [[DNSSEC]] validation was added to the '''pdns_recursor''' in version 4.0. == DNSdist == PowerDNS DNSdist ('''dnsdist'''<ref>{{cite web|url=https://dnsdist.org/ |title=PowerDNS DNSdist |publisher=dnsdist.org |date= |accessdate=2023-05-11}}</ref>) is a caching DNS proxy, with many features including: * Load Balancing of DNS Queries * DNS Encryption Support - DNS over HTTPS, DNS over TLS, both upstream and downstream (i.e. to clients and backends) * Lua Policy Engine - Extensive capabilities for creating rules for processing DNS packets, such as changing the response, re-routing a query or blocking traffic over a max QPS from a subnet. * Dynamic Rule Generation - Used to create Dynamic Blocks which are short-lived rules, automatically inserted based on configurable thresholds and the analysis of recently received traffic. Used to deal with DoS attacks DNSdist is available as a standalone package, and can be deployed with PowerDNS Authoritative Server or Recursor, or any other third-party DNS server. == See also == {{Portal|Free and open-source software}} * [[Comparison of DNS server software]] ==References== {{Reflist}} ==External links== * {{Official website}} * {{GitHub|PowerDNS/pdns}} {{DEFAULTSORT:Powerdns}} [[Category:DNS software]] [[Category:Free software programmed in C++]] [[Category:Free network-related software]] [[Category:Lua (programming language)-scriptable software]] [[Category:DNS server software for Linux]]
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)
Pages transcluded onto the current version of this page
(
help
)
:
Template:Cite book
(
edit
)
Template:Cite web
(
edit
)
Template:Distinguish
(
edit
)
Template:GitHub
(
edit
)
Template:Infobox
(
edit
)
Template:Infobox software
(
edit
)
Template:Main other
(
edit
)
Template:Official website
(
edit
)
Template:Portal
(
edit
)
Template:Reflist
(
edit
)
Template:Short description
(
edit
)
Template:Template other
(
edit
)