Download latest release from isc.org. There are several supported releases, but the process listed here works fine for the 9.x releases to date.
As of this writing, the latest ESV release is 9.11.18
Verify the integrity of the download by verifying PGP signature. They are currently easily found on the download popup, but if that changes you can also find them on ISC’s website using the link above.
Explode bind 9.11.18 source tarball with:
tar -xzvf bind-9.11.18.tar.gz
The source code is unpacked into a newly created directory. Change to that directory
cd bind-9.11.18
Now we need to create a makefile appropriate for our server. In our case, we want to install it in the default location that CentOS Linux uses, and enable some other useful features. (This should be a single line when entered in a bash shell.)
./configure –prefix=/usr –sysconfdir=/etc –localstatedir=/var –with-libtool –with-openssl –enable-threads
For 64-bit, also include the parameter –libdir=/usr/lib64
Compiling against openssl-1.0.2, I had to disable gost (–without-gost) in order to get named to start after installing. Not sure why, but since we don’t have to meet any Russian standards, it’s not a problem. .
Since bind 9.11.10, python 3.2 is a build requirement for the test suite. It is not required to run. Disable with –without-python
Compile the software:
make
Install, overwriting any previous version of bind:
make install
You can check the installed version of named in the default search path and verify the build options with the command:
named -V