README revision e544b507b8019a62c5d2716281f6832519a8791d
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister BIND version 9 is a major rewrite of nearly all aspects of the
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister underlying BIND architecture. Some of the important features of
15a44745412679c30a6d022733925af70a38b715David Lawrence - DNS Security
15a44745412679c30a6d022733925af70a38b715David Lawrence DNSSEC (signed zones)
15a44745412679c30a6d022733925af70a38b715David Lawrence TSIG (signed DNS requests)
15a44745412679c30a6d022733925af70a38b715David Lawrence - IP version 6
15a44745412679c30a6d022733925af70a38b715David Lawrence Answers DNS queries on IPv6 sockets
15a44745412679c30a6d022733925af70a38b715David Lawrence IPv6 resource records (A6, DNAME, etc.)
15a44745412679c30a6d022733925af70a38b715David Lawrence Bitstring Labels
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister Experimental IPv6 Resolver Library
f3ca27e9fe307b55e35ea8d7b37351650630e5a3Andreas Gustafsson - DNS Protocol Enhancements
9c3531d72aeaad6c5f01efe6a1c82023e1379e4dDavid Lawrence IXFR, DDNS, Notify, EDNS0
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister Improved standards conformance
1a69a1a78cfaa86f3b68bbc965232b7876d4da2aDavid Lawrence One server process can provide multiple "views" of
364a82f7c25b62967678027043425201a5e5171aBob Halley the DNS namespace, e.g. an "inside" view to certain
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister clients, and an "outside" view to others.
590f840d3484114576d9f8a7f7d73fbe31228888Brian Wellington - Multiprocessor Support
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister - Improved Portability Architecture
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister BIND version 9 development has been underwritten by the following
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister organizations:
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister Sun Microsystems, Inc.
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister Hewlett Packard
72166c5cf59db011cce11e98abe377f5aa6f7052Andreas Gustafsson Compaq Computer Corporation
d25dd5b0567f67ecf40b7ed1cb20e0dce7b41c49Brian Wellington Process Software Corporation
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister Silicon Graphics, Inc.
b3e77535185043f089b346166440402d092030c3David Lawrence Network Associates, Inc.
b3e77535185043f089b346166440402d092030c3David Lawrence U.S. Defense Information Systems Agency
b3e77535185043f089b346166440402d092030c3David Lawrence USENIX Association
b3e77535185043f089b346166440402d092030c3David Lawrence Stichting NLnet - NLnet Foundation
40f53fa8d9c6a4fc38c0014495e7a42b08f52481David Lawrence BIND 9.1.0b1 is the first beta release of BIND 9.1.0.
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister It includes a number of new features:
f3ca27e9fe307b55e35ea8d7b37351650630e5a3Andreas Gustafsson - Many BIND 8 features previously unimplemented in BIND 9,
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister including domain-specific forwarding, the $GENERATE
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister master file directive, and the "blackhole", "dialup",
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister and "sortlist" options
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister - Forwarding of dynamic update requests; this is enabled
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister by the "allow-update-forwarding" option
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister - A new, simplified database interface and a number of
40f53fa8d9c6a4fc38c0014495e7a42b08f52481David Lawrence sample drivers based on it; see doc/misc/sdb for details
40f53fa8d9c6a4fc38c0014495e7a42b08f52481David Lawrence - Support for building single-threaded servers for
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister environments that do not supply POSIX threads
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister - New configuration options: "min-refresh-time",
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister "max-refresh-time", "min-retry-time", "max-retry-time",
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister "additional-from-auth", "additional-from-cache",
b3e77535185043f089b346166440402d092030c3David Lawrence "notify explicit"
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister - Faster lookups, particularly in large zones.
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister BIND 9.1.0 also includes experimental implementations of a
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister number of DNS protocols extensions still under development
40f53fa8d9c6a4fc38c0014495e7a42b08f52481David Lawrence in the IETF. These include transparent processing of
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister unknown RR types and use of the EDNS "DNSSEC OK" bit to
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister explicitly enable DNSSEC processing in responses.
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister Cryptographic operations are now based on the OpenSSL
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister library instead of DNSsafe.
b3e77535185043f089b346166440402d092030c3David Lawrence Numerous bugs have been fixed.
40f53fa8d9c6a4fc38c0014495e7a42b08f52481David Lawrence BIND 9.1.0 is primarily a name server software distribution.
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister In addition to the name server, it also includes a new
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister lightweight stub resolver library and associated resolver
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister daemon that fully support forward and reverse lookups of both
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister IPv4 and IPv6 addresses. This library is still considered
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister experimental and is not a complete replacement for the BIND 8
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister resolver library. Applications that use the BIND 8 res_*
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister functions to perform DNS lookups or dynamic updates still need
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister to be linked against the BIND 8 libraries. For DNS lookups,
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister they can also use the new "getrrsetbyname()" API.
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister BIND 9.1.0 is capable of acting as an authoritative server
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister for DNSSEC secured zones. This functionality is believed to
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister be stable and complete except for lacking support for wildcard
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister records in secure zones.
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister When acting as a caching server, BIND 9.1.0 can be configured
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister to perform DNSSEC secure resolution on behalf of its clients.
b3e77535185043f089b346166440402d092030c3David Lawrence This part of the DNSSEC implementation is still considered
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister experimental. For detailed information about the state of the
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister DNSSEC implementation, see the file doc/misc/dnssec.
b3e77535185043f089b346166440402d092030c3David Lawrence There are a few known bugs:
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister On some systems, IPv6 and IPv4 sockets interact in
40f53fa8d9c6a4fc38c0014495e7a42b08f52481David Lawrence unexpected ways. For details, see doc/misc/ipv6.
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister To reduce the impact of these problems, the server
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister no longer listens for requests on IPv6 addresses
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister by default. If you need to accept DNS queries over
40f53fa8d9c6a4fc38c0014495e7a42b08f52481David Lawrence IPv6, you must specify "listen-on-v6 { any; };"
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister in the named.conf options statement.
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister There are known problems with thread signal handling
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister under Solaris 2.6.
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister On FreeBSD systems, the server logs error messages
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister like "fcntl(8, F_SETFL, 4): Inappropriate ioctl for
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister device". This is due to a bug in the FreeBSD
40f53fa8d9c6a4fc38c0014495e7a42b08f52481David Lawrence /dev/random device. The bug has been reported
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister to the FreeBSD maintainers. Versions of OpenBSD
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister prior to 2.8 have a similar problem.
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister --with-libtool does not work on AIX.
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister For a detailed list of user-visible changes from
40f53fa8d9c6a4fc38c0014495e7a42b08f52481David Lawrence previous releases, see the CHANGES file.
b3e77535185043f089b346166440402d092030c3David Lawrence BIND 9 currently requires a UNIX system with an ANSI C compiler,
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister basic POSIX support, and a good pthreads implementation.
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister We've had successful builds and tests on the following systems:
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister COMPAQ Tru64 UNIX 4.0D
40f53fa8d9c6a4fc38c0014495e7a42b08f52481David Lawrence COMPAQ Tru64 UNIX 5 (with IPv6 EAK)
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister FreeBSD 3.4-STABLE, 3.5, 4.0, 4.1
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister NetBSD-current (with unproven-pthreads-0.17)
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister Red Hat Linux 6.0, 6.1, 6.2
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister Solaris 2.6, 7, 8
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister Additionally, we have unverified reports of success building
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister previous versions of BIND 9 from users of the following systems:
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister Slackware Linux 7.0 with 2.4.0-test6 kernel and glibc 2.1.3
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister Slackware Linux 7.0.1 with glibc 2.1.3
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister OpenBSD 2.6, 2.8, -current
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister UnixWare 7.1.1
40f53fa8d9c6a4fc38c0014495e7a42b08f52481David Lawrence To build, just
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister Several environment variables that can be set before running
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister configure will affect compilation:
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister The C compiler to use. configure tries to figure
40f53fa8d9c6a4fc38c0014495e7a42b08f52481David Lawrence out the right one for supported systems.
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister C compiler flags. Defaults to include -g and/or -O2
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister as supported by the compiler.
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister STD_CINCLUDES
b3e77535185043f089b346166440402d092030c3David Lawrence System header file directories. Can be used to specify
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister where add-on thread or IPv6 support is, for example.
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister Defaults to empty string.
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister Any additional preprocessor symbols you want defined.
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister Defaults to empty string.
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister To build shared libraries, specify "--with-libtool" on the
40f53fa8d9c6a4fc38c0014495e7a42b08f52481David Lawrence configure command line.
b3e77535185043f089b346166440402d092030c3David Lawrence To build without multithreading, specify "--disable-threads"
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister on the configure command line.
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister If your operating system has integrated support for IPv6, it
40f53fa8d9c6a4fc38c0014495e7a42b08f52481David Lawrence will be used automatically. If you have installed KAME IPv6
f3ca27e9fe307b55e35ea8d7b37351650630e5a3Andreas Gustafsson separately, use "--with-kame[=PATH]" to specify its location.
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister To see additional configure options, run "configure --help".
40f53fa8d9c6a4fc38c0014495e7a42b08f52481David Lawrence "make install" will install "named" and the various BIND 9 libraries.
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister By default, installation is into /usr/local, but this can be changed
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister with the "--prefix" option when running "configure".
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister If you're planning on making changes to the BIND 9 source, you
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister should also "make depend". If you're using Emacs, you might find
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister "make tags" helpful.
5475a2d296215b7a93bd89804dc33c36a6de7cb5James Brister Building with gcc is not supported, unless gcc is the vendor's usual
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister compiler (e.g. the various BSD systems, Linux).
40f53fa8d9c6a4fc38c0014495e7a42b08f52481David Lawrence A limited test suite can be run with "make test". Many of
f3ca27e9fe307b55e35ea8d7b37351650630e5a3Andreas Gustafsson the tests require you to configure a set of virtual IP addresses
40f53fa8d9c6a4fc38c0014495e7a42b08f52481David Lawrence on your system, and some require Perl; see bin/tests/system/README
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister The BIND 9 Administrator Reference Manual is included with the
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister source distribution in DocBook XML and HTML format, in the
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister Some of the programs in the BIND 9 distribution have man pages
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister under the doc/man directory. In particular, the command line
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister options of "named" are documented in doc/man/bind/named.8.
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister There is now also a set of man pages for the lwres library.
40f53fa8d9c6a4fc38c0014495e7a42b08f52481David Lawrence The man pages are currently not installed automatically by
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister "make install".
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister If you are upgrading from BIND 8, please read the migration
2cde028c51055c9fd4837337116cd4fdfe8ff623James BristerBug Reports and Mailing Lists
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister Bugs reports should be sent to
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister bind9-bugs@isc.org
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister To join the BIND 9 Users mailing list, send mail to
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister bind9-users-request@isc.org
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister If you're planning on making changes to the BIND 9 source
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister code, you might want to join the BIND 9 Workers mailing list.
2cde028c51055c9fd4837337116cd4fdfe8ff623James Brister bind9-workers-request@isc.org