pymds is a simple, authoritative-only DNS server that has a simple module system for customizing how name resolution happens. The main motivation for starting this project was to create a simple system for building smarter DNS servers, capable of geography awareness, geographic load balancing, application aware load balancing, etc. Current modules implement standard behavior of using a file based DB to answer queries and to provide simple round-robin load-balancing across several servers by altering the order that IP addresses are returned.
namebench finds the best DNS servers to use for your machine, benchmarks them, and outputs pretty graphs to tell you why they are optimal. It supports multiple data sources such as Alexa, your browser history, or tcpdump replays in order to generate the most relevant and individualized recommendation.
Roster is DNS management software for use with Bind 9. It is licensed under the BSD license. It is written in Python, and uses a MySQL database with an XML-RPC front-end. It contains a set of command line user tools that connect to the XML-RPC front-end. The config files for BIND are generated from the MySQL database, so a live MySQL database is not needed. The software has four basic components. The core includes the database interface and core API, and contains the authorization layer. The server is an SSL enabled multi-threaded XML-RPC server. It also contains the LDAP authentication layer. The config manger creates BIND config files using the core API, and handles pushing the files to their appropriate servers. The user tools contain over 20 tools to create, list, and remove records, zones, views, DNS servers, DNS server sets, groups, users, and the assignments between them all. There is currently support for views, many DNS servers in many configurations, IPv6, user/group authorization, LDAP authentication, and Unicode hosts.
Syncless is an experimental, lightweight, non-blocking (asynchronous) client and server socket network communication library implemented in Stackless Python 2.6. It contains an asynchronous DNS resolver (using dnspython) and an HTTP server capable of serving WSGI applications. It aims to be a coroutine-based alternative of event-driven networking engines (such as Twisted and FriendFeed's Tornado). It is already about that fast, but it has fewer features and is less stable now.
CyberDNS is a Web application to manage DNS zones and BIND configurations easily. It lets you add entries and then watch as they are generated into zone and configuration files. It supports IPv6 and most DNS types. The Web interface runs on the master DNS server, and cron is used to synchronize the Sqlitedb and zone files to slave DNS servers. It is easy to make snapshots to revert in the event of failure.