<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN""http://www.w3.org/TR/html4/loose.dtd"> <HTML ><HEAD ><TITLE >The PowerDNS dynamic nameserver</TITLE ><META NAME="GENERATOR" CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK REL="HOME" TITLE="PowerDNS manual" HREF="index.html"><LINK REL="PREVIOUS" TITLE="PowerDNS manual" HREF="index.html"><LINK REL="NEXT" TITLE="About this document" HREF="about.html"></HEAD ><BODY CLASS="CHAPTER" BGCOLOR="#FFFFFF" TEXT="#000000" LINK="#0000FF" VLINK="#840084" ALINK="#0000FF" ><DIV CLASS="NAVHEADER" ><TABLE SUMMARY="Header navigation table" WIDTH="100%" BORDER="0" CELLPADDING="0" CELLSPACING="0" ><TR ><TH COLSPAN="3" ALIGN="center" >PowerDNS manual</TH ></TR ><TR ><TD WIDTH="10%" ALIGN="left" VALIGN="bottom" ><A HREF="index.html" ACCESSKEY="P" >Prev</A ></TD ><TD WIDTH="80%" ALIGN="center" VALIGN="bottom" ></TD ><TD WIDTH="10%" ALIGN="right" VALIGN="bottom" ><A HREF="about.html" ACCESSKEY="N" >Next</A ></TD ></TR ></TABLE ><HR ALIGN="LEFT" WIDTH="100%"></DIV ><DIV CLASS="CHAPTER" ><H1 ><A NAME="POWERDNS" ></A >Chapter 1. The PowerDNS dynamic nameserver</H1 ><P > The PowerDNS daemon is a versatile nameserver which supports a large number of backends. These backends can either be <A HREF="bindbackend.html" >plain zonefiles</A > or be <A HREF="backends-detail.html#PIPEBACKEND" >more dynamic</A > in nature. Additionally, through use of clever programming techniques, PowerDNS offers very high domain resolution performance. </P ><P > Prime examples of backends include relational databases, but also (geographical) loadbalancing and failover algorithms. </P ><P > The company is called PowerDNS.COM BV, the nameserver daemon is called PDNS. </P ><DIV CLASS="SECT1" ><H1 CLASS="SECT1" ><A NAME="FUNCTION-DESIGN" >1.1. Function & design of PDNS</A ></H1 ><P > PowerDNS consists of two parts: the Authoritative Server and the Recursor. Other nameservers fully combine these functions, PowerDNS offers them separately, but can mix both authoritative and recursive usage seamlessly. The Authoritative Server will answer questions about domains it knows about, but will not go out on the net to resolve queries about other domains. However, it can use a <A HREF="recursion.html" >recursing backend</A > to provide that functionality. Depending on your needs, this backend can either be the PowerDNS recursor or an external one. </P ><P > When the Authoritative Server answers a question, it comes out of the database, and can be trusted as being authoritative. There is no way to pollute the cache or to confuse the daemon. </P ><P > The Recursor, conversely, by default has no knowledge of domains itself, but will always consult other authoritative servers to answer questions given to it. </P ><P > PDNS has been designed to serve both the needs of small installations by being easy to setup, as well as for serving very large query volumes on large numbers of domains. </P ><P > Another prime goal is <A HREF="security.html" >security</A >. By the use of language features, the PDNS source code is very small (in the order of 10.000 lines) which makes auditing easy. In the same way, library features have been used to mitigate the risks of buffer overflows. </P ><P > Finally, PDNS is able to give a lot of <A HREF="monitoring.html" >statistics</A > on its operation which is both helpful in determining the scalability of an installation as well as for spotting problems. </P ></DIV ></DIV ><DIV CLASS="NAVFOOTER" ><HR ALIGN="LEFT" WIDTH="100%"><TABLE SUMMARY="Footer navigation table" WIDTH="100%" BORDER="0" CELLPADDING="0" CELLSPACING="0" ><TR ><TD WIDTH="33%" ALIGN="left" VALIGN="top" ><A HREF="index.html" ACCESSKEY="P" >Prev</A ></TD ><TD WIDTH="34%" ALIGN="center" VALIGN="top" ><A HREF="index.html" ACCESSKEY="H" >Home</A ></TD ><TD WIDTH="33%" ALIGN="right" VALIGN="top" ><A HREF="about.html" ACCESSKEY="N" >Next</A ></TD ></TR ><TR ><TD WIDTH="33%" ALIGN="left" VALIGN="top" >PowerDNS manual</TD ><TD WIDTH="34%" ALIGN="center" VALIGN="top" > </TD ><TD WIDTH="33%" ALIGN="right" VALIGN="top" >About this document</TD ></TR ></TABLE ></DIV ></BODY ></HTML >