mirror of
https://gitlab.isc.org/isc-projects/bind9
synced 2025-08-29 21:47:59 +00:00
Merge branch '1932-text-corrections-in-readme-md' into 'master'
Resolve "Text corrections in README.md" Closes #1932 See merge request isc-projects/bind9!3686
This commit is contained in:
commit
3210a4275c
110
README.md
110
README.md
@ -28,9 +28,9 @@
|
|||||||
### <a name="intro"/> Introduction
|
### <a name="intro"/> Introduction
|
||||||
|
|
||||||
BIND (Berkeley Internet Name Domain) is a complete, highly portable
|
BIND (Berkeley Internet Name Domain) is a complete, highly portable
|
||||||
implementation of the DNS (Domain Name System) protocol.
|
implementation of the Domain Name System (DNS) protocol.
|
||||||
|
|
||||||
The BIND name server, `named`, is able to serve as an authoritative name
|
The BIND name server, `named`, can act as an authoritative name
|
||||||
server, recursive resolver, DNS forwarder, or all three simultaneously. It
|
server, recursive resolver, DNS forwarder, or all three simultaneously. It
|
||||||
implements views for split-horizon DNS, automatic DNSSEC zone signing and
|
implements views for split-horizon DNS, automatic DNSSEC zone signing and
|
||||||
key management, catalog zones to facilitate provisioning of zone data
|
key management, catalog zones to facilitate provisioning of zone data
|
||||||
@ -42,9 +42,9 @@ administrative tools, including the `dig` and `delv` DNS lookup tools,
|
|||||||
`nsupdate` for dynamic DNS zone updates, `rndc` for remote name server
|
`nsupdate` for dynamic DNS zone updates, `rndc` for remote name server
|
||||||
administration, and more.
|
administration, and more.
|
||||||
|
|
||||||
BIND 9 began as a complete re-write of the BIND architecture that was
|
BIND 9 began as a complete rewrite of the BIND architecture that was
|
||||||
used in versions 4 and 8. Internet Systems Consortium
|
used in versions 4 and 8. Internet Systems Consortium
|
||||||
([https://www.isc.org](https://www.isc.org)), a 501(c)(3) public benefit
|
([https://www.isc.org](https://www.isc.org)), a 501(c)(3) US public benefit
|
||||||
corporation dedicated to providing software and services in support of the
|
corporation dedicated to providing software and services in support of the
|
||||||
Internet infrastructure, developed BIND 9 and is responsible for its
|
Internet infrastructure, developed BIND 9 and is responsible for its
|
||||||
ongoing maintenance and improvement. BIND is open source software
|
ongoing maintenance and improvement. BIND is open source software
|
||||||
@ -65,19 +65,19 @@ For information about supported platforms, see [PLATFORMS](PLATFORMS.md).
|
|||||||
### <a name="help"/> Reporting bugs and getting help
|
### <a name="help"/> Reporting bugs and getting help
|
||||||
|
|
||||||
To report non-security-sensitive bugs or request new features, you may
|
To report non-security-sensitive bugs or request new features, you may
|
||||||
open an Issue in the BIND 9 project on the
|
open an issue in the BIND 9 project on the
|
||||||
[ISC GitLab server](https://gitlab.isc.org) at
|
[ISC GitLab server](https://gitlab.isc.org) at
|
||||||
[https://gitlab.isc.org/isc-projects/bind9](https://gitlab.isc.org/isc-projects/bind9).
|
[https://gitlab.isc.org/isc-projects/bind9](https://gitlab.isc.org/isc-projects/bind9).
|
||||||
|
|
||||||
Please note that, unless you explicitly mark the newly created Issue as
|
Please note that, unless you explicitly mark the newly created issue as
|
||||||
"confidential", it will be publicly readable. Please do not include any
|
"confidential," it will be publicly readable. Please do not include any
|
||||||
information in bug reports that you consider to be confidential unless
|
information in bug reports that you consider to be confidential unless
|
||||||
the issue has been marked as such. In particular, if submitting the
|
the issue has been marked as such. In particular, if submitting the
|
||||||
contents of your configuration file in a non-confidential Issue, it is
|
contents of your configuration file in a non-confidential issue, it is
|
||||||
advisable to obscure key secrets: this can be done automatically by
|
advisable to obscure key secrets; this can be done automatically by
|
||||||
using `named-checkconf -px`.
|
using `named-checkconf -px`.
|
||||||
|
|
||||||
If the bug you are reporting is a potential security issue, such as an
|
If you are reporting a bug that is a potential security issue, such as an
|
||||||
assertion failure or other crash in `named`, please do *NOT* use GitLab to
|
assertion failure or other crash in `named`, please do *NOT* use GitLab to
|
||||||
report it. Instead, send mail to
|
report it. Instead, send mail to
|
||||||
[security-officer@isc.org](mailto:security-officer@isc.org) using our
|
[security-officer@isc.org](mailto:security-officer@isc.org) using our
|
||||||
@ -86,11 +86,12 @@ to our key can be found at
|
|||||||
[https://www.isc.org/pgpkey](https://www.isc.org/pgpkey).) Please do not
|
[https://www.isc.org/pgpkey](https://www.isc.org/pgpkey).) Please do not
|
||||||
discuss the bug on any public mailing list.
|
discuss the bug on any public mailing list.
|
||||||
|
|
||||||
For a general overview of ISC security policies, read the Knowledge Base
|
For a general overview of ISC security policies, read the Knowledgebase
|
||||||
article at [https://kb.isc.org/docs/aa-00861](https://kb.isc.org/docs/aa-00861).
|
article at [https://kb.isc.org/docs/aa-00861](https://kb.isc.org/docs/aa-00861).
|
||||||
|
|
||||||
Professional support and training for BIND are available from
|
Professional support and training for BIND are available from
|
||||||
ISC at [https://www.isc.org/support](https://www.isc.org/support).
|
ISC. Contact us at [https://www.isc.org/contact](https://www.isc.org/contact)
|
||||||
|
for more information.
|
||||||
|
|
||||||
To join the __BIND Users__ mailing list, or view the archives, visit
|
To join the __BIND Users__ mailing list, or view the archives, visit
|
||||||
[https://lists.isc.org/mailman/listinfo/bind-users](https://lists.isc.org/mailman/listinfo/bind-users).
|
[https://lists.isc.org/mailman/listinfo/bind-users](https://lists.isc.org/mailman/listinfo/bind-users).
|
||||||
@ -102,7 +103,7 @@ may also want to join the __BIND Workers__ mailing list, at
|
|||||||
### <a name="contrib"/> Contributing to BIND
|
### <a name="contrib"/> Contributing to BIND
|
||||||
|
|
||||||
ISC maintains a public git repository for BIND; details can be found
|
ISC maintains a public git repository for BIND; details can be found
|
||||||
at [http://www.isc.org/git/](http://www.isc.org/git/).
|
at [https://www.isc.org/sourceaccess/](https://www.isc.org/sourceaccess/).
|
||||||
|
|
||||||
Information for BIND contributors can be found in the following files:
|
Information for BIND contributors can be found in the following files:
|
||||||
- General information: [CONTRIBUTING.md](CONTRIBUTING.md)
|
- General information: [CONTRIBUTING.md](CONTRIBUTING.md)
|
||||||
@ -112,16 +113,15 @@ Information for BIND contributors can be found in the following files:
|
|||||||
|
|
||||||
Patches for BIND may be submitted as
|
Patches for BIND may be submitted as
|
||||||
[merge requests](https://gitlab.isc.org/isc-projects/bind9/merge_requests)
|
[merge requests](https://gitlab.isc.org/isc-projects/bind9/merge_requests)
|
||||||
in the [ISC GitLab server](https://gitlab.isc.org) at
|
on the [ISC GitLab server](https://gitlab.isc.org).
|
||||||
at [https://gitlab.isc.org/isc-projects/bind9/merge_requests](https://gitlab.isc.org/isc-projects/bind9/merge_requests).
|
|
||||||
|
|
||||||
By default, external contributors don't have ability to fork BIND in the
|
By default, external contributors do not have the ability to fork BIND on the
|
||||||
GitLab server, but if you wish to contribute code to BIND, you may request
|
GitLab server; if you wish to contribute code to BIND, you may request
|
||||||
permission to do so. Thereafter, you can create git branches and directly
|
permission to do so. Thereafter, you can create git branches and directly
|
||||||
submit requests that they be reviewed and merged.
|
submit requests that they be reviewed and merged.
|
||||||
|
|
||||||
If you prefer, you may also submit code by opening a
|
If you prefer, you may also submit code by opening a
|
||||||
[GitLab Issue](https://gitlab.isc.org/isc-projects/bind9/issues) and
|
[GitLab issue](https://gitlab.isc.org/isc-projects/bind9/issues) and
|
||||||
including your patch as an attachment, preferably generated by
|
including your patch as an attachment, preferably generated by
|
||||||
`git format-patch`.
|
`git format-patch`.
|
||||||
|
|
||||||
@ -130,14 +130,14 @@ including your patch as an attachment, preferably generated by
|
|||||||
BIND 9.17 is the newest development branch of BIND 9. It includes a
|
BIND 9.17 is the newest development branch of BIND 9. It includes a
|
||||||
number of changes from BIND 9.16 and earlier releases. New features include:
|
number of changes from BIND 9.16 and earlier releases. New features include:
|
||||||
|
|
||||||
* New option "max-ixfr-ratio" to limit the size of outgoing IXFR responses
|
* The new option `max-ixfr-ratio` to limit the size of outgoing IXFR responses
|
||||||
before falling back to full zone transfers.
|
before falling back to full zone transfers.
|
||||||
* "rndc nta -d" and "rndc secroots" now include "validate-except" entries
|
* `rndc nta -d` and `rndc secroots` now include `validate-except` entries
|
||||||
when listing negative trust anchors.
|
when listing negative trust anchors.
|
||||||
|
|
||||||
### <a name="build"/> Building BIND
|
### <a name="build"/> Building BIND 9
|
||||||
|
|
||||||
Minimally, BIND requires a UNIX or Linux system with an ANSI C compiler,
|
At a minimum, BIND requires a Unix or Linux system with an ANSI C compiler,
|
||||||
basic POSIX support, and a 64-bit integer type. BIND also requires the
|
basic POSIX support, and a 64-bit integer type. BIND also requires the
|
||||||
`libuv` asynchronous I/O library, and a cryptography provider library
|
`libuv` asynchronous I/O library, and a cryptography provider library
|
||||||
such as OpenSSL or a hardware service module supporting PKCS#11. On
|
such as OpenSSL or a hardware service module supporting PKCS#11. On
|
||||||
@ -148,15 +148,15 @@ for details on other libraries that may be required to support
|
|||||||
optional features.
|
optional features.
|
||||||
|
|
||||||
Successful builds have been observed on many versions of Linux and
|
Successful builds have been observed on many versions of Linux and
|
||||||
UNIX, including RHEL/CentOS, Fedora, Debian, Ubuntu, SLES, openSUSE,
|
Unix, including RHEL/CentOS, Fedora, Debian, Ubuntu, SLES, openSUSE,
|
||||||
Slackware, Alpine, FreeBSD, NetBSD, OpenBSD, macOS, Solaris,
|
Slackware, Alpine, FreeBSD, NetBSD, OpenBSD, macOS, Solaris,
|
||||||
OpenIndiana, OmniOS CE, HP-UX, and OpenWRT.
|
OpenIndiana, OmniOS CE, HP-UX, and OpenWRT.
|
||||||
|
|
||||||
BIND is also available for Windows Server 2012 R2 and higher. See
|
BIND 9 is also available for Windows Server 2012 R2 and higher. See
|
||||||
`win32utils/build.txt` for details on building for Windows
|
`win32utils/build.txt` for details on building for Windows
|
||||||
systems.
|
systems.
|
||||||
|
|
||||||
To build on a UNIX or Linux system, use:
|
To build on a Unix or Linux system, use:
|
||||||
|
|
||||||
$ autoreconf -fi (if you are building in the git repository)
|
$ autoreconf -fi (if you are building in the git repository)
|
||||||
$ ./configure
|
$ ./configure
|
||||||
@ -165,7 +165,7 @@ To build on a UNIX or Linux system, use:
|
|||||||
If you're planning on making changes to the BIND 9 source, you should run
|
If you're planning on making changes to the BIND 9 source, you should run
|
||||||
`make depend`. If you're using Emacs, you might find `make tags` helpful.
|
`make depend`. If you're using Emacs, you might find `make tags` helpful.
|
||||||
|
|
||||||
Several environment variables that can be set before running `configure` will
|
Several environment variables, which can be set before running `configure`,
|
||||||
affect compilation. Significant ones are:
|
affect compilation. Significant ones are:
|
||||||
|
|
||||||
|Variable|Description |
|
|Variable|Description |
|
||||||
@ -182,21 +182,21 @@ command:
|
|||||||
|
|
||||||
#### <a name="macos"> macOS
|
#### <a name="macos"> macOS
|
||||||
|
|
||||||
Building on macOS assumes that the "Command Tools for Xcode" is installed.
|
Building on macOS assumes that the "Command Tools for Xcode" are installed.
|
||||||
This can be downloaded from
|
These can be downloaded from
|
||||||
[https://developer.apple.com/download/more/](https://developer.apple.com/download/more/)
|
[https://developer.apple.com/download/more/](https://developer.apple.com/download/more/)
|
||||||
or, if you have Xcode already installed, you can run `xcode-select
|
or, if you have Xcode already installed, you can run
|
||||||
--install`. (Note that an Apple ID may be required to access the download
|
`xcode-select--install`. (Note that an Apple ID may be required to access the download
|
||||||
page.)
|
page.)
|
||||||
|
|
||||||
#### <a name="dependencies"> Dependencies
|
#### <a name="dependencies"> Dependencies
|
||||||
|
|
||||||
To build BIND you need to following packages installed:
|
To build BIND you need to have the following packages installed:
|
||||||
|
|
||||||
libuv
|
libuv
|
||||||
pkg-config / pkgconfig / pkgconf
|
pkg-config / pkgconfig / pkgconf
|
||||||
|
|
||||||
To build BIND from the git repository you will need the following tools
|
To build BIND from the git repository, you need the following tools
|
||||||
installed:
|
installed:
|
||||||
|
|
||||||
autoconf (includes autoreconf)
|
autoconf (includes autoreconf)
|
||||||
@ -225,7 +225,7 @@ least one of the following libraries: `libxml2`
|
|||||||
[https://github.com/json-c/json-c](https://github.com/json-c/json-c).
|
[https://github.com/json-c/json-c](https://github.com/json-c/json-c).
|
||||||
If these are installed at a nonstandard location, then:
|
If these are installed at a nonstandard location, then:
|
||||||
|
|
||||||
* for `libxml2`, specify the prefix using `--with-libxml2=/prefix`,
|
* for `libxml2`, specify the prefix using `--with-libxml2=/prefix`.
|
||||||
* for `json-c`, adjust `PKG_CONFIG_PATH`.
|
* for `json-c`, adjust `PKG_CONFIG_PATH`.
|
||||||
|
|
||||||
To support compression on the HTTP statistics channel, the server must be
|
To support compression on the HTTP statistics channel, the server must be
|
||||||
@ -233,7 +233,7 @@ linked against `libzlib`. If this is installed in a nonstandard location,
|
|||||||
specify the prefix using `--with-zlib=/prefix`.
|
specify the prefix using `--with-zlib=/prefix`.
|
||||||
|
|
||||||
To support storing configuration data for runtime-added zones in an LMDB
|
To support storing configuration data for runtime-added zones in an LMDB
|
||||||
database, the server must be linked with liblmdb. If this is installed in a
|
database, the server must be linked with `liblmdb`. If this is installed in a
|
||||||
nonstandard location, specify the prefix using `with-lmdb=/prefix`.
|
nonstandard location, specify the prefix using `with-lmdb=/prefix`.
|
||||||
|
|
||||||
To support MaxMind GeoIP2 location-based ACLs, the server must be linked
|
To support MaxMind GeoIP2 location-based ACLs, the server must be linked
|
||||||
@ -250,8 +250,8 @@ and BIND must be configured with `--enable-dnstap`.
|
|||||||
|
|
||||||
Certain compiled-in constants and default settings can be decreased to
|
Certain compiled-in constants and default settings can be decreased to
|
||||||
values better suited to small machines, e.g. OpenWRT boxes, by specifying
|
values better suited to small machines, e.g. OpenWRT boxes, by specifying
|
||||||
`--with-tuning=small` on the `configure` command line. This will decrease
|
`--with-tuning=small` on the `configure` command line. This decreases
|
||||||
memory usage by using smaller structures, but will degrade performance.
|
memory usage by using smaller structures, but degrades performance.
|
||||||
|
|
||||||
On Linux, process capabilities are managed in user space using
|
On Linux, process capabilities are managed in user space using
|
||||||
the `libcap` library, which can be installed on most Linux systems via
|
the `libcap` library, which can be installed on most Linux systems via
|
||||||
@ -274,7 +274,7 @@ traced by setting its query ID to 0. These options should only be enabled
|
|||||||
when debugging, because they have a significant negative impact on query
|
when debugging, because they have a significant negative impact on query
|
||||||
performance.
|
performance.
|
||||||
|
|
||||||
`make install` will install `named` and the various BIND 9 libraries. By
|
`make install` installs `named` and the various BIND 9 libraries. By
|
||||||
default, installation is into /usr/local, but this can be changed with the
|
default, installation is into /usr/local, but this can be changed with the
|
||||||
`--prefix` option when running `configure`.
|
`--prefix` option when running `configure`.
|
||||||
|
|
||||||
@ -287,13 +287,13 @@ defaults to `$prefix/etc` and `--localstatedir` defaults to `$prefix/var`.
|
|||||||
|
|
||||||
A system test suite can be run with `make check`. The system tests require
|
A system test suite can be run with `make check`. The system tests require
|
||||||
you to configure a set of virtual IP addresses on your system (this allows
|
you to configure a set of virtual IP addresses on your system (this allows
|
||||||
multiple servers to run locally and communicate with one another). These
|
multiple servers to run locally and communicate with each other). These
|
||||||
IP addresses can be configured by running the command
|
IP addresses can be configured by running the command
|
||||||
`bin/tests/system/ifconfig.sh up` as root.
|
`bin/tests/system/ifconfig.sh up` as root.
|
||||||
|
|
||||||
Some tests require Perl and the `Net::DNS` and/or `IO::Socket::INET6` modules,
|
Some tests require Perl and the `Net::DNS` and/or `IO::Socket::INET6` modules,
|
||||||
and will be skipped if these are not available. Some tests require Python
|
and are skipped if these are not available. Some tests require Python
|
||||||
and the `dnspython` module and will be skipped if these are not available.
|
and the `dnspython` module and are skipped if these are not available.
|
||||||
See bin/tests/system/README for further details.
|
See bin/tests/system/README for further details.
|
||||||
|
|
||||||
Unit tests are implemented using the CMocka unit testing framework. To build
|
Unit tests are implemented using the CMocka unit testing framework. To build
|
||||||
@ -302,16 +302,16 @@ parallel test driver; unit tests are also run by `make check`.
|
|||||||
|
|
||||||
### <a name="doc"/> Documentation
|
### <a name="doc"/> Documentation
|
||||||
|
|
||||||
The *BIND 9 Administrator Reference Manual* is included with the source
|
The *BIND 9 Administrator Reference Manual* (ARM) is included with the source
|
||||||
distribution, in DocBook XML, HTML, and PDF format, in the `doc/arm`
|
distribution, and in .rst format, in the `doc/arm`
|
||||||
directory.
|
directory. HTML and PDF versions are automatically generated and can
|
||||||
|
be viewed at [https://bind9.readthedocs.io/en/latest/index.html](https://bind9.readthedocs.io/en/latest/index.html).
|
||||||
|
|
||||||
Some of the programs in the BIND 9 distribution have man pages in their
|
Man pages for some of the programs in the BIND 9 distribution
|
||||||
directories. In particular, the command line options of `named` are
|
are also included in the BIND ARM.
|
||||||
documented in `bin/named/named.8`.
|
|
||||||
|
|
||||||
Frequently (and not-so-frequently) asked questions and their answers
|
Frequently (and not-so-frequently) asked questions and their answers
|
||||||
can be found in the ISC Knowledge Base at
|
can be found in the ISC Knowledgebase at
|
||||||
[https://kb.isc.org](https://kb.isc.org).
|
[https://kb.isc.org](https://kb.isc.org).
|
||||||
|
|
||||||
Additional information on various subjects can be found in other
|
Additional information on various subjects can be found in other
|
||||||
@ -320,7 +320,7 @@ Additional information on various subjects can be found in other
|
|||||||
### <a name="changes"/> Change log
|
### <a name="changes"/> Change log
|
||||||
|
|
||||||
A detailed list of all changes that have been made throughout the
|
A detailed list of all changes that have been made throughout the
|
||||||
development BIND 9 is included in the file CHANGES, with the most recent
|
development of BIND 9 is included in the file CHANGES, with the most recent
|
||||||
changes listed first. Change notes include tags indicating the category of
|
changes listed first. Change notes include tags indicating the category of
|
||||||
the change that was made; these categories are:
|
the change that was made; these categories are:
|
||||||
|
|
||||||
@ -339,12 +339,12 @@ the change that was made; these categories are:
|
|||||||
| [cleanup] | Minor corrections and refactoring |
|
| [cleanup] | Minor corrections and refactoring |
|
||||||
| [doc] | Documentation |
|
| [doc] | Documentation |
|
||||||
| [contrib] | Changes to the contributed tools and libraries in the 'contrib' subdirectory |
|
| [contrib] | Changes to the contributed tools and libraries in the 'contrib' subdirectory |
|
||||||
| [placeholder] | Used in the master development branch to reserve change numbers for use in other branches, e.g. when fixing a bug that only exists in older releases |
|
| [placeholder] | Used in the master development branch to reserve change numbers for use in other branches, e.g., when fixing a bug that only exists in older releases |
|
||||||
|
|
||||||
In general, [func] and [experimental] tags will only appear in new-feature
|
In general, [func] and [experimental] tags only appear in new-feature
|
||||||
releases (i.e., those with version numbers ending in zero). Some new
|
releases (i.e., those with version numbers ending in zero). Some new
|
||||||
functionality may be backported to older releases on a case-by-case basis.
|
functionality may be backported to older releases on a case-by-case basis.
|
||||||
All other change types may be applied to all currently-supported releases.
|
All other change types may be applied to all currently supported releases.
|
||||||
|
|
||||||
#### Bug report identifiers
|
#### Bug report identifiers
|
||||||
|
|
||||||
@ -354,7 +354,7 @@ and referred to entries in the "bind9-bugs" RT database, which was not open
|
|||||||
to the public. More recent entries use the form `[GL #NNN]` or, less often,
|
to the public. More recent entries use the form `[GL #NNN]` or, less often,
|
||||||
`[GL !NNN]`, which, respectively, refer to issues or merge requests in the
|
`[GL !NNN]`, which, respectively, refer to issues or merge requests in the
|
||||||
GitLab database. Most of these are publicly readable, unless they include
|
GitLab database. Most of these are publicly readable, unless they include
|
||||||
information which is confidential or security sensitive.
|
information which is confidential or security-sensitive.
|
||||||
|
|
||||||
To look up a GitLab issue by its number, use the URL
|
To look up a GitLab issue by its number, use the URL
|
||||||
[https://gitlab.isc.org/isc-projects/bind9/issues/NNN](https://gitlab.isc.org/isc-projects/bind9/issues).
|
[https://gitlab.isc.org/isc-projects/bind9/issues/NNN](https://gitlab.isc.org/isc-projects/bind9/issues).
|
||||||
@ -384,7 +384,7 @@ GitLab instance, which is not visible to the public.
|
|||||||
|
|
||||||
* This product includes software developed by the OpenSSL Project for use
|
* This product includes software developed by the OpenSSL Project for use
|
||||||
in the OpenSSL Toolkit.
|
in the OpenSSL Toolkit.
|
||||||
[http://www.OpenSSL.org/](http://www.OpenSSL.org/)
|
[https://www.OpenSSL.org/](https://www.OpenSSL.org/)
|
||||||
* This product includes cryptographic software written by Eric Young
|
* This product includes cryptographic software written by Eric Young
|
||||||
(eay@cryptsoft.com)
|
(eay@cryptsoft.com).
|
||||||
* This product includes software written by Tim Hudson (tjh@cryptsoft.com)
|
* This product includes software written by Tim Hudson (tjh@cryptsoft.com).
|
||||||
|
Loading…
x
Reference in New Issue
Block a user