README revision ff1e17749c7bf976f7127467c1816abeb3f4b998
16803617e47c83272013e45ba8eb83a3b11983edAndreas Gustafsson BIND version 9 is a major rewrite of nearly all aspects of the
16803617e47c83272013e45ba8eb83a3b11983edAndreas Gustafsson underlying BIND architecture. Some of the important features of
16803617e47c83272013e45ba8eb83a3b11983edAndreas Gustafsson - DNS Security
16803617e47c83272013e45ba8eb83a3b11983edAndreas Gustafsson DNSSEC (signed zones)
16803617e47c83272013e45ba8eb83a3b11983edAndreas Gustafsson TSIG (signed DNS requests)
16803617e47c83272013e45ba8eb83a3b11983edAndreas Gustafsson - IP version 6
16803617e47c83272013e45ba8eb83a3b11983edAndreas Gustafsson Answers DNS queries on IPv6 sockets
16803617e47c83272013e45ba8eb83a3b11983edAndreas Gustafsson IPv6 resource records (A6, DNAME, etc.)
16803617e47c83272013e45ba8eb83a3b11983edAndreas Gustafsson Bitstring Labels
16803617e47c83272013e45ba8eb83a3b11983edAndreas Gustafsson Experimental IPv6 Resolver Library
16803617e47c83272013e45ba8eb83a3b11983edAndreas Gustafsson - DNS Protocol Enhancements
16803617e47c83272013e45ba8eb83a3b11983edAndreas Gustafsson IXFR, DDNS, Notify, EDNS0
16803617e47c83272013e45ba8eb83a3b11983edAndreas Gustafsson Improved standards conformance
16803617e47c83272013e45ba8eb83a3b11983edAndreas Gustafsson One server process can provide multiple "views" of
16803617e47c83272013e45ba8eb83a3b11983edAndreas Gustafsson the DNS namespace, e.g. an "inside" view to certain
16803617e47c83272013e45ba8eb83a3b11983edAndreas Gustafsson clients, and an "outside" view to others.
16803617e47c83272013e45ba8eb83a3b11983edAndreas Gustafsson - Multiprocessor Support
16803617e47c83272013e45ba8eb83a3b11983edAndreas Gustafsson - Improved Portability Architecture
b90dd6c0a9df584619d3c47be7c9417f55d5ccf6Bob Halley BIND version 9 development has been underwritten by the following
b90dd6c0a9df584619d3c47be7c9417f55d5ccf6Bob Halley organizations:
16803617e47c83272013e45ba8eb83a3b11983edAndreas Gustafsson Sun Microsystems, Inc.
16803617e47c83272013e45ba8eb83a3b11983edAndreas Gustafsson Hewlett Packard
16803617e47c83272013e45ba8eb83a3b11983edAndreas Gustafsson Compaq Computer Corporation
16803617e47c83272013e45ba8eb83a3b11983edAndreas Gustafsson Process Software Corporation
16803617e47c83272013e45ba8eb83a3b11983edAndreas Gustafsson Silicon Graphics, Inc.
16803617e47c83272013e45ba8eb83a3b11983edAndreas Gustafsson Network Associates, Inc.
70680fa51b0147c726b939b72b2420249429756aBob Halley U.S. Defense Information Systems Agency
70680fa51b0147c726b939b72b2420249429756aBob Halley USENIX Association
276a77c22af98c78403883b16a82646a0d5b29abPaul Vixie Stichting NLnet - NLnet Foundation
c45ca0b839adc61c7902aad0969de36921b292b0Mark Andrews This is a snapshot of the development source tree that
c45ca0b839adc61c7902aad0969de36921b292b0Mark Andrews will become BIND 9.2. Bind 9.2 will have a number of
c3e0aed7da9ca312a3b25a4eee13573dca04c318Mark Andrews new features over 9.1, including:
c3e0aed7da9ca312a3b25a4eee13573dca04c318Mark Andrews - The ability to automatically convert RFC1886-style
c3e0aed7da9ca312a3b25a4eee13573dca04c318Mark Andrews recursive lookup requests into RFC2874-style lookups,
c3e0aed7da9ca312a3b25a4eee13573dca04c318Mark Andrews enabled using the new option "allow-v6-synthesis".
c3e0aed7da9ca312a3b25a4eee13573dca04c318Mark Andrews This allows stub resolvers that support AAAA records
c45ca0b839adc61c7902aad0969de36921b292b0Mark Andrews but not A6 record chains or binary labels to perform
c45ca0b839adc61c7902aad0969de36921b292b0Mark Andrews lookups in domains that make use of these IPv6 DNS
1c9afb96b58f450f8861007e5135dee1447e680fAndreas Gustafsson - Improved performance.
8c4f1fa179f8f2fc56a9fa9294682a080e8756eeAndreas Gustafsson An IPv6 capable stub resolver based on the BIND 8 resolver
8c4f1fa179f8f2fc56a9fa9294682a080e8756eeAndreas Gustafsson code base and fully backwards compatible with existing BIND 8
8c4f1fa179f8f2fc56a9fa9294682a080e8756eeAndreas Gustafsson based resolvers is being developed and will be integrated into
8c4f1fa179f8f2fc56a9fa9294682a080e8756eeAndreas Gustafsson the BIND 9 distribution when completed.
8c4f1fa179f8f2fc56a9fa9294682a080e8756eeAndreas Gustafsson This distribution already includes a new lightweight stub
4d5f44e7933f4cb691e8f4cf3b4b5f61c27e2b1cAndreas Gustafsson resolver library and associated resolver daemon that fully
4d5f44e7933f4cb691e8f4cf3b4b5f61c27e2b1cAndreas Gustafsson support forward and reverse lookups of both IPv4 and IPv6
4d5f44e7933f4cb691e8f4cf3b4b5f61c27e2b1cAndreas Gustafsson addresses. This library is still considered experimental and
4d5f44e7933f4cb691e8f4cf3b4b5f61c27e2b1cAndreas Gustafsson is not a complete replacement for the BIND 8 resolver library.
4d5f44e7933f4cb691e8f4cf3b4b5f61c27e2b1cAndreas Gustafsson Applications that use the BIND 8 res_* functions to perform
8c4f1fa179f8f2fc56a9fa9294682a080e8756eeAndreas Gustafsson DNS lookups or dynamic updates still need to be linked against
8c4f1fa179f8f2fc56a9fa9294682a080e8756eeAndreas Gustafsson the BIND 8 libraries. For DNS lookups, they can also use the
8c4f1fa179f8f2fc56a9fa9294682a080e8756eeAndreas Gustafsson new "getrrsetbyname()" API.
8c4f1fa179f8f2fc56a9fa9294682a080e8756eeAndreas Gustafsson BIND 9.2 is capable of acting as an authoritative server
672a41b5fef7722803645c1f0ca132972f0f940aAndreas Gustafsson for DNSSEC secured zones. This functionality is believed to
8a01f10278e0c794fe1d488bab2f97185f272e26Andreas Gustafsson be stable and complete except for lacking support for wildcard
8a01f10278e0c794fe1d488bab2f97185f272e26Andreas Gustafsson records in secure zones.
8a01f10278e0c794fe1d488bab2f97185f272e26Andreas Gustafsson When acting as a caching server, BIND 9.2 can be configured
8a01f10278e0c794fe1d488bab2f97185f272e26Andreas Gustafsson to perform DNSSEC secure resolution on behalf of its clients.
18b393da86f452303036b5fe6feb6c1e5f6b2c02Andreas Gustafsson This part of the DNSSEC implementation is still considered
18b393da86f452303036b5fe6feb6c1e5f6b2c02Andreas Gustafsson experimental. For detailed information about the state of the
81fb2f5544552e67d7be673e353e399789e203e7Brian Wellington DNSSEC implementation, see the file doc/misc/dnssec.
00205e27e84603f75eed46268a5100e86883f06bAndreas Gustafsson There are a few known bugs:
4d5f44e7933f4cb691e8f4cf3b4b5f61c27e2b1cAndreas Gustafsson On some systems, IPv6 and IPv4 sockets interact in
317ebe84d581e59f5cb63bc6c1556a479bbb179aAndreas Gustafsson unexpected ways. For details, see doc/misc/ipv6.
317ebe84d581e59f5cb63bc6c1556a479bbb179aAndreas Gustafsson To reduce the impact of these problems, the server
317ebe84d581e59f5cb63bc6c1556a479bbb179aAndreas Gustafsson no longer listens for requests on IPv6 addresses
317ebe84d581e59f5cb63bc6c1556a479bbb179aAndreas Gustafsson by default. If you need to accept DNS queries over
317ebe84d581e59f5cb63bc6c1556a479bbb179aAndreas Gustafsson IPv6, you must specify "listen-on-v6 { any; };"
faca6b801dcace871c8a98c8ee1bba8d7e2994a5Brian Wellington in the named.conf options statement.
cca68b1ff68cd4342705b71015f603c7389d040cAndreas Gustafsson There are known problems with thread signal handling
cca68b1ff68cd4342705b71015f603c7389d040cAndreas Gustafsson under Solaris 2.6 and BSD/OS. We recommend disabling
5f25ebaaa087893f8f57cc558c4b36eab6c26988Andreas Gustafsson threads with "configure --disable-threads" on these
4d5f44e7933f4cb691e8f4cf3b4b5f61c27e2b1cAndreas Gustafsson FreeBSD prior to 4.2 (and 4.2 if running as non-root)
ecbfd32d3710d539f19a9323f16cf43a095580bdAndreas Gustafsson and OpenBSD prior to 2.8 log messages like
4d5f44e7933f4cb691e8f4cf3b4b5f61c27e2b1cAndreas Gustafsson "fcntl(8, F_SETFL, 4): Inappropriate ioctl for device".
4d5f44e7933f4cb691e8f4cf3b4b5f61c27e2b1cAndreas Gustafsson This is due to a bug in "/dev/random" and impacts the
4d5f44e7933f4cb691e8f4cf3b4b5f61c27e2b1cAndreas Gustafsson server's DNSSEC support.
4d5f44e7933f4cb691e8f4cf3b4b5f61c27e2b1cAndreas Gustafsson --with-libtool does not work on AIX.
4d5f44e7933f4cb691e8f4cf3b4b5f61c27e2b1cAndreas Gustafsson For a detailed list of user-visible changes from
3b8932de20e12b07f9d874d5538d30e1fac9a9f4Andreas Gustafsson previous releases, see the CHANGES file.
3b8932de20e12b07f9d874d5538d30e1fac9a9f4Andreas Gustafsson BIND 9 currently requires a UNIX system with an ANSI C compiler,
3b8932de20e12b07f9d874d5538d30e1fac9a9f4Andreas Gustafsson basic POSIX support, and a 64 bit integer type.
3b8932de20e12b07f9d874d5538d30e1fac9a9f4Andreas Gustafsson We've had successful builds and tests on the following systems:
3b8932de20e12b07f9d874d5538d30e1fac9a9f4Andreas Gustafsson COMPAQ Tru64 UNIX 4.0D
3b8932de20e12b07f9d874d5538d30e1fac9a9f4Andreas Gustafsson COMPAQ Tru64 UNIX 5 (with IPv6 EAK)
3b8932de20e12b07f9d874d5538d30e1fac9a9f4Andreas Gustafsson FreeBSD 3.4-STABLE, 3.5, 4.0, 4.1
3b8932de20e12b07f9d874d5538d30e1fac9a9f4Andreas Gustafsson NetBSD 1.5 (with unproven-pthreads-0.17)
3b8932de20e12b07f9d874d5538d30e1fac9a9f4Andreas Gustafsson Red Hat Linux 6.0, 6.1, 6.2, 7.0
3b8932de20e12b07f9d874d5538d30e1fac9a9f4Andreas Gustafsson Solaris 2.6, 7, 8
73edea95c744a2a9052852d0a63b449599062b30Brian Wellington Additionally, we have unverified reports of success building
73edea95c744a2a9052852d0a63b449599062b30Brian Wellington previous versions of BIND 9 from users of the following systems:
73edea95c744a2a9052852d0a63b449599062b30Brian Wellington Slackware Linux 7.x
73edea95c744a2a9052852d0a63b449599062b30Brian Wellington OpenBSD 2.6, 2.8, -current
7c956aeeeb8da3fd3912b1fb8024ff274e3b07ebAndreas Gustafsson UnixWare 7.1.1
dc95bcfa9c8437045df06b94e892a329e615bb16Mark Andrews To build, just
40d01ce8f3a1889f5799d9b22b26d5398fa75a1bBob Halley Do not use a parallel "make".
0ec9b06f0bd6cc3ce327a3c70db53672957fa372Andreas Gustafsson Several environment variables that can be set before running
0ec9b06f0bd6cc3ce327a3c70db53672957fa372Andreas Gustafsson configure will affect compilation:
40f53fa8d9c6a4fc38c0014495e7a42b08f52481David Lawrence The C compiler to use. configure tries to figure
b90dd6c0a9df584619d3c47be7c9417f55d5ccf6Bob Halley out the right one for supported systems.
40d01ce8f3a1889f5799d9b22b26d5398fa75a1bBob Halley C compiler flags. Defaults to include -g and/or -O2
8db66dc4eb654a2e295eaeab3aaf96e24c9ae7b7Bob Halley as supported by the compiler.
8db66dc4eb654a2e295eaeab3aaf96e24c9ae7b7Bob Halley STD_CINCLUDES
501da430e2f16f496f8e8d1b57ab77f78428c682David Lawrence System header file directories. Can be used to specify
36983956d7c3d9e294903eeda29548f67ac17daeBob Halley where add-on thread or IPv6 support is, for example.
36983956d7c3d9e294903eeda29548f67ac17daeBob Halley Defaults to empty string.
2ecf7f63a01ca8a96d76f7d2d4de0fa37f3e3fabOlafur Gudmundsson Any additional preprocessor symbols you want defined.
36983956d7c3d9e294903eeda29548f67ac17daeBob Halley Defaults to empty string.
8c4f1fa179f8f2fc56a9fa9294682a080e8756eeAndreas Gustafsson To build shared libraries, specify "--with-libtool" on the
b3d8bec59201fd0edbe38f909bda5014d7776b89Brian Wellington configure command line.
faf2b80fe31d8dc9e10bf2cf697ccceef2ffa353Andreas Gustafsson To build without multithreading, specify "--disable-threads"
d80ccd47ad4b526f82590b6c182b4dd80006712eAndreas Gustafsson on the configure command line.
3b8932de20e12b07f9d874d5538d30e1fac9a9f4Andreas Gustafsson If your operating system has integrated support for IPv6, it
a0cad57966364095e4367f568389a8bd84afb2afAndreas Gustafsson will be used automatically. If you have installed KAME IPv6
40aa8b407a7e51e13954a211260eda1c72674e1cAndreas Gustafsson separately, use "--with-kame[=PATH]" to specify its location.
a158d032df9d09fd89a03767bcea28ac58c61180Andreas Gustafsson To see additional configure options, run "configure --help".
5d7c50da51174c01291712e4c2a08fce7e6e8883Andreas Gustafsson "make install" will install "named" and the various BIND 9 libraries.
b1c6a6c514b05a0ebb65656f154be54a3ee01ab5Mark Andrews By default, installation is into /usr/local, but this can be changed
dd9569905456bc5ba916122a73016c99fb058dc7Andreas Gustafsson with the "--prefix" option when running "configure".
6905fe248b89a0fd5b892ab8569e50cffe763ed0Andreas Gustafsson If you're planning on making changes to the BIND 9 source, you
8682b8f7f72818c54d922faea2fee255ee6d7b13Andreas Gustafsson should also "make depend". If you're using Emacs, you might find
ca2ebf900db9b2aea2a347ada67a266238eb3de4Mark Andrews "make tags" helpful.
36983956d7c3d9e294903eeda29548f67ac17daeBob Halley Building with gcc is not supported, unless gcc is the vendor's usual
36983956d7c3d9e294903eeda29548f67ac17daeBob Halley compiler (e.g. the various BSD systems, Linux).
36983956d7c3d9e294903eeda29548f67ac17daeBob Halley A limited test suite can be run with "make test". Many of
36983956d7c3d9e294903eeda29548f67ac17daeBob Halley the tests require you to configure a set of virtual IP addresses
8eb5937a7e4cb8b5d7fcc1be17d34fdd014bbbb1Andreas Gustafsson on your system, and some require Perl; see bin/tests/system/README
3b8932de20e12b07f9d874d5538d30e1fac9a9f4Andreas Gustafsson Linux systems do not provide useful core dumps for multithreaded
b70fc17acec2c036bb35a937ba00fbcf10848859David Lawrence programs unless the kernel patch in contrib/linux/coredump-patch
3b8932de20e12b07f9d874d5538d30e1fac9a9f4Andreas Gustafsson has been applied. We recommend all Linux users to install this
3b8932de20e12b07f9d874d5538d30e1fac9a9f4Andreas Gustafsson patch so that any server crashes can be properly diagnosed.
3b8932de20e12b07f9d874d5538d30e1fac9a9f4Andreas Gustafsson The BIND 9 Administrator Reference Manual is included with the
ff69418be422164cad3be4a14a7ca56e668251edMark Andrews source distribution in DocBook XML and HTML format, in the
3b8932de20e12b07f9d874d5538d30e1fac9a9f4Andreas Gustafsson Some of the programs in the BIND 9 distribution have man pages
3b8932de20e12b07f9d874d5538d30e1fac9a9f4Andreas Gustafsson in their directories. In particular, the command line
3b8932de20e12b07f9d874d5538d30e1fac9a9f4Andreas Gustafsson options of "named" are documented in /bin/named/named.8.
b70fc17acec2c036bb35a937ba00fbcf10848859David Lawrence There is now also a set of man pages for the lwres library.
3b8932de20e12b07f9d874d5538d30e1fac9a9f4Andreas Gustafsson If you are upgrading from BIND 8, please read the migration
3b8932de20e12b07f9d874d5538d30e1fac9a9f4Andreas Gustafsson notes in doc/misc/migration. If you are upgrading from
ee80f4506479e189ca1320eb87ac89188c5a7848Mark AndrewsBug Reports and Mailing Lists
ee80f4506479e189ca1320eb87ac89188c5a7848Mark Andrews Bugs reports should be sent to
69930116e30137705d3b87d05cbfbc5712386fdeAndreas Gustafsson bind9-bugs@isc.org
29c9e88c6ce6c88d9a3e3a9629dbb0df29168ebfAndreas Gustafsson To join the BIND 9 Users mailing list, send mail to
f72a461c766a4cedc705e1ed0d6d2bb999a393f1Andreas Gustafsson bind9-users-request@isc.org
f72a461c766a4cedc705e1ed0d6d2bb999a393f1Andreas Gustafsson If you're planning on making changes to the BIND 9 source
f72a461c766a4cedc705e1ed0d6d2bb999a393f1Andreas Gustafsson code, you might want to join the BIND 9 Workers mailing list.
5c5a746d5745802c3b825bb68d03fb1e97759cddMark Andrews bind9-workers-request@isc.org