source: server/major/bind.xml@ bf31777

11.3 12.0 12.1 gimp3 kea ken/TL2024 ken/inkscape-core-mods ken/tuningfonts lazarus lxqt plabs/newcss plabs/python-mods python3.11 qt5new rahul/power-profiles-daemon renodr/vulkan-addition trunk xry111/for-12.3 xry111/llvm18 xry111/spidermonkey128 xry111/xf86-video-removal
Last change on this file since bf31777 was 8414284, checked in by Thomas Trepl <thomas@…>, 20 months ago

Upgrade bind-9.18.10

  • Property mode set to 100644
File size: 36.2 KB
RevLine 
[0931098]1<?xml version="1.0" encoding="ISO-8859-1"?>
[6732c094]2<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
3 "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
[0931098]4 <!ENTITY % general-entities SYSTEM "../../general.ent">
5 %general-entities;
[80c8e88]6
[cd9f166a]7 <!ENTITY bind-download-http "https://ftp.isc.org/isc/bind9/&bind-version;/bind-&bind-version;.tar.xz">
[f0d1db9]8 <!ENTITY bind-download-ftp "ftp://ftp.isc.org/isc/bind9/&bind-version;/bind-&bind-version;.tar.xz">
[8414284]9 <!ENTITY bind-md5sum "6586d9c376e7ee9674767e1d79d63382">
[7ff79f8d]10 <!ENTITY bind-size "5.0 MB">
[5fb7e6d9]11 <!ENTITY bind-buildsize "139 MB (26 MB installed)"><!-- differs much from prev maybe because of docs? -->
[b8007e8e]12 <!ENTITY bind-time "0.4 SBU (with parallelism=4; about 20 SBU somewhat processor independent, to run the complete test suite)">
[0931098]13]>
14
[c951082]15<sect1 id="bind" xreflabel="BIND-&bind-version;">
[53217a6]16 <?dbhtml filename="bind.html"?>
17
18
[c951082]19 <title>BIND-&bind-version;</title>
[53217a6]20
21 <indexterm zone="bind">
22 <primary sortas="a-BIND">BIND</primary>
23 </indexterm>
24
25 <sect2 role="package">
26 <title>Introduction to BIND</title>
27
[4472e923]28 <para>
29 The <application>BIND</application> package provides a DNS server
30 and client utilities. If you are only interested in the utilities, refer
31 to the <xref linkend="bind-utils"/>.
32 </para>
[53217a6]33
[1bbb5dd]34 &lfs112_checked;
[40399b1]35
[53217a6]36 <bridgehead renderas="sect3">Package Information</bridgehead>
37 <itemizedlist spacing="compact">
38 <listitem>
[4472e923]39 <para>
40 Download (HTTP): <ulink url="&bind-download-http;"/>
41 </para>
[53217a6]42 </listitem>
43 <listitem>
[4472e923]44 <para>
45 Download (FTP): <ulink url="&bind-download-ftp;"/>
46 </para>
[53217a6]47 </listitem>
48 <listitem>
[4472e923]49 <para>
50 Download MD5 sum: &bind-md5sum;
51 </para>
[53217a6]52 </listitem>
53 <listitem>
[4472e923]54 <para>
55 Download size: &bind-size;
56 </para>
[53217a6]57 </listitem>
58 <listitem>
[4472e923]59 <para>
60 Estimated disk space required: &bind-buildsize;
61 </para>
[53217a6]62 </listitem>
63 <listitem>
[4472e923]64 <para>
65 Estimated build time: &bind-time;
66 </para>
[53217a6]67 </listitem>
68 </itemizedlist>
[94cbe4f]69<!--
[b62ff55c]70 <bridgehead renderas="sect3">Additional Downloads</bridgehead>
71 <itemizedlist spacing="compact">
72 <listitem>
73 <para>
74 Required patch:
75 <ulink url="&patch-root;/bind-&bind-version;-upstream_fixes-1.patch"/>
76 </para>
77 </listitem>
78 </itemizedlist>
[94cbe4f]79-->
[53217a6]80 <bridgehead renderas="sect3">BIND Dependencies</bridgehead>
81
[af0874b]82 <bridgehead renderas="sect4">Required</bridgehead>
83 <para role="required">
84 <xref linkend="libuv"/>
85 </para>
86
[ec9db95]87 <bridgehead renderas="sect4">Recommended</bridgehead>
[24f32bb]88 <para role="recommended">
89 <xref linkend="json-c"/> and
[ec9db95]90 <xref linkend="libcap-pam"/>
91 </para>
92
[53217a6]93 <bridgehead renderas="sect4">Optional</bridgehead>
[a87a374]94 <para role="optional">
[cc64b232]95 <xref linkend="curl"/>,
[ec9db95]96 <xref linkend="libidn2"/>,
[7ba60b6e]97 <xref linkend="libxml2"/>,
[5d5c2107]98 <xref linkend="lmdb"/>,
[cdf0106]99 <xref linkend="mitkrb"/>,
[cc64b232]100 <ulink url="https://cmocka.org/">cmocka</ulink>,
[5d5c2107]101 <ulink url="https://github.com/cjheath/geoip">geoip</ulink>,
102 <ulink url="https://docs.pytest.org/en/stable/">pytest</ulink>,
[002d2dc]103 <ulink url="https://pypi.python.org/pypi/Sphinx">Sphinx</ulink> (required to build documentation), and
[0aa72821]104 <ulink url="&w3m-url;">w3m</ulink>
[0f6476c]105 </para>
[160e58a4]106
107 <bridgehead renderas="sect4">Optional database backends</bridgehead>
108 <para role="optional">
109 <xref linkend="db"/>,
[90fb8f6]110 <xref linkend="mariadb"/> or <ulink url="https://www.mysql.com/">MySQL</ulink>,
[bf6aefc]111 <xref linkend="openldap"/>,
112 <xref linkend="postgresql"/>, and
[160e58a4]113 <xref linkend="unixodbc"/>
[a87a374]114 </para>
[53217a6]115
[9288855]116 <bridgehead renderas="sect4">Optional (to run the test suite)</bridgehead>
[a87a374]117 <para role="optional">
[4392a40]118 <xref linkend="perl-net-dns"/>
[a87a374]119 </para>
120
[002d2dc]121<!-- docs are now all sphinx based
[a87a374]122 <bridgehead renderas="sect4">Optional (to rebuild the documentation)</bridgehead>
123 <para role="optional">
124 <xref linkend="doxygen"/>,
[bf6aefc]125 <xref linkend="libxslt"/>, and
126 <xref linkend="texlive"/> (or <xref linkend="tl-installer"/>)
[a87a374]127 </para>
[002d2dc]128-->
[53217a6]129
[3cb0c57]130 <para condition="html" role="usernotes">User Notes:
131 <ulink url="&blfs-wiki;/bind"/></para>
132
[53217a6]133 </sect2>
134
135 <sect2 role="installation">
136 <title>Installation of BIND</title>
[5cd7055]137
[c0cf007f]138<!--
[4472e923]139 <para>
140 To ensure <application>BIND</application> will build dnssec-keymgr,
141 install a python module as the <systemitem
142 class="username">root</systemitem> user:
143 </para>
[5cd7055]144
[1bc043ab]145<screen role="root"><userinput>pip3 install ply</userinput></screen>
[c0cf007f]146-->
[9a591635]147
[4472e923]148 <para>
149 Install <application>BIND</application> by running the
150 following commands:
151 </para>
[a3e2a06d]152
[15e49d1]153<screen><userinput>./configure --prefix=/usr \
[a87a374]154 --sysconfdir=/etc \
155 --localstatedir=/var \
[d4a47c5a]156 --mandir=/usr/share/man \
[ec9db95]157 --disable-static &amp;&amp;
[53217a6]158make</userinput></screen>
[a2fe8d47]159
[4472e923]160 <para>
161 Issue the following commands to run the complete suite of tests.
162 First, as the <systemitem class="username">root</systemitem> user, set up
163 some test interfaces:
164 </para>
[ade9c75]165
[4472e923]166 <note>
167 <para>
168 If IPv6 is not enabled in the kernel, there will be several
169 error messages: "RTNETLINK answers: Operation not permitted". These
170 messages do not affect the tests.
171 </para>
172 </note>
[bf6aefc]173
[06908bf6]174<screen role="root"
175 remap="test"><userinput>bin/tests/system/ifconfig.sh up</userinput></screen>
[ade9c75]176
[4472e923]177 <para>
178 The test suite may indicate some skipped tests depending on
179 what configuration options are used. Some tests are marked
[002d2dc]180 <quote>UNTESTED</quote> or does even fail if <xref linkend="perl-net-dns"/>
181 is not installed. <!--One test, <quote>CPU</quote>, is known to fail.-->
[73fb07ad]182 To run the tests, as an unprivileged user, execute:
[4472e923]183 </para>
[4c288b0]184
[2f3e3de9]185<screen remap="test"><userinput>make -k check</userinput></screen>
[ade9c75]186
[4472e923]187 <para>
188 Again as <systemitem class="username">root</systemitem>, clean up the
189 test interfaces:
190 </para>
[ade9c75]191
[06908bf6]192<screen role="root"
193 remap="test"><userinput>bin/tests/system/ifconfig.sh down</userinput></screen>
[ade9c75]194
[4472e923]195 <para>
196 Finally, install the package as the <systemitem
197 class="username">root</systemitem> user:
198 </para>
[a2fe8d47]199
[98a83b1]200<!-- Documentation is an issue - The docs are now all in .rst format and appear
[8753635b]201to be sphinx based. install source .rst files for now...
[002d2dc]202
203leave docs untouched as they does only use disk space when not
204used to recreate the docs via Sphinx. I've added a note regarding
205the documentation. (thomas)
[53217a6]206
[8753635b]207<screen role="root"><userinput>make install &amp;&amp;
208
[002d2dc]209install -vdm 755 /usr/share/doc/bind-&bind-version;/{arm,dnssec-guide} &amp;&amp;
[8753635b]210install doc/arm/* /usr/share/doc/bind-&bind-version;/arm &amp;&amp;
211install doc/dnssec-guide/* /usr/share/doc/bind-&bind-version;/dnssec-guide</userinput></screen>
[002d2dc]212-->
213<screen role="root"><userinput>make install</userinput></screen>
214
[8753635b]215 </sect2>
216
[53217a6]217 <sect2 role="commands">
218 <title>Command Explanations</title>
[efe9371]219
[4472e923]220 <para>
221 <parameter>--sysconfdir=/etc</parameter>: This parameter forces
222 <application>BIND</application> to look for configuration
223 files in <filename class='directory'>/etc</filename> instead of
224 <filename class='directory'>/usr/etc</filename>.
225 </para>
[53217a6]226
[c0cf007f]227 <!-- Seems to be removed in 9.18.0
[4472e923]228 <para>
[c0cf007f]229 <parameter>- -with-libtool</parameter>: This parameter forces the
[4472e923]230 building of dynamic libraries and links the installed binaries to these
231 libraries.
232 </para>
[c0cf007f]233 -->
[8558044]234
[4472e923]235 <para>
236 <option>--with-libidn2</option>: This parameter enables
237 the IDNA2008 (Internationalized Domain Names in Applications)
238 support.
239 </para>
[fd7e0ed6]240
[4472e923]241 <para>
242 <option>--enable-fetchlimit</option>: Use this option if you want
243 to be able to limit the rate of recursive client queries. This may be
244 useful on servers which receive a large number of queries.
245 </para>
246
247 <para>
248 <option>--disable-linux-caps</option>: BIND can also be built without
249 capability support by using this option, at the cost of some loss of
250 security.
251 </para>
252
253 <para>
254 <option>--with-dlz-{mysql,bdb,filesystem,ldap,odbc,stub}</option>: Use
255 one (or more) of those options to add Dynamically Loadable Zones support.
256 For more information refer to <ulink
257 url="http://bind-dlz.sourceforge.net/">bind-dlz.sourceforge.net</ulink>.
[ec9db95]258 </para>
[8558044]259
[7ba60b6e]260 <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
261 href="../../xincludes/static-libraries.xml"/>
262
[53217a6]263 </sect2>
264
265 <sect2 role="configuration">
266 <title>Configuring BIND</title>
267
268 <sect3 id="bind-config">
269 <title>Config files</title>
270
[4472e923]271 <para>
272 <filename>named.conf</filename>,
273 <filename>root.hints</filename>,
274 <filename>127.0.0</filename>,
275 <filename>rndc.conf</filename>, and
276 <filename>resolv.conf</filename>
277 </para>
[53217a6]278
279 <indexterm zone="bind bind-config">
280 <primary sortas="e-etc-named.conf">/etc/named.conf</primary>
281 </indexterm>
282
283 <indexterm zone="bind bind-config">
284 <primary sortas="e-etc-rndc.conf">/etc/rndc.conf</primary>
285 </indexterm>
286
287 <indexterm zone="bind bind-config">
288 <primary sortas="e-etc-resolv.conf">/etc/resolv.conf</primary>
289 </indexterm>
290
291 <indexterm zone="bind bind-config">
[634cf991]292 <primary
293 sortas="e-etc-namedb-root.hints">/etc/namedb/root.hints</primary>
[53217a6]294 </indexterm>
295
296 <indexterm zone="bind bind-config">
[634cf991]297 <primary
298 sortas="e-etc-namedb-pz-127.0.0.0">/etc/namedb/pz/127.0.0.0</primary>
[53217a6]299 </indexterm>
300 </sect3>
301
302 <sect3>
303 <title>Configuration Information</title>
304
[4472e923]305 <para>
306 <application>BIND</application> will be configured to run in a
307 <command>chroot</command> jail as an unprivileged user (<systemitem
308 class="username">named</systemitem>). This configuration is more secure
309 in that a DNS compromise can only affect a few files in the <systemitem
310 class="username">named</systemitem> user's <envar>HOME</envar>
311 directory.
312 </para>
[53217a6]313
[4472e923]314 <para>
315 Create the unprivileged user and group <systemitem
316 class="username">named</systemitem>:
317 </para>
[53217a6]318
[b785ab29]319<screen role="root"><userinput>groupadd -g 20 named &amp;&amp;
[9288855]320useradd -c "BIND Owner" -g named -s /bin/false -u 20 named &amp;&amp;
[068bb16]321install -d -m770 -o named -g named /srv/named</userinput></screen>
[53217a6]322
[4472e923]323 <para>
324 Set up some files, directories and devices needed by
325 <application>BIND</application>:
326 </para>
[53217a6]327
[443b085]328<screen role="root"><userinput>mkdir -p /srv/named &amp;&amp;
329cd /srv/named &amp;&amp;
[9a2b97b9]330mkdir -p dev etc/named/{slave,pz} usr/lib/engines var/run/named &amp;&amp;
[068bb16]331mknod /srv/named/dev/null c 1 3 &amp;&amp;
[e14ac42]332mknod /srv/named/dev/urandom c 1 9 &amp;&amp;
[d8805ba2]333chmod 666 /srv/named/dev/{null,urandom} &amp;&amp;
[9a2b97b9]334cp /etc/localtime etc</userinput></screen>
[0931098]335
[4472e923]336 <para>
337 The <filename>rndc.conf</filename> file contains information for
338 controlling <command>named</command> operations with the
339 <command>rndc</command> utility. Generate a key for use in the
[b62ff55c]340 <filename>named.conf</filename> and <filename>rndc.conf</filename>
[4472e923]341 with the <command>rndc-confgen</command> command:
342 </para>
[b8214dc6]343
[4472e923]344<screen role="root"><userinput>rndc-confgen -a -b 512 -t /srv/named</userinput></screen>
[b8214dc6]345
[4472e923]346 <para>
347 Complete the <filename>named.conf</filename> file from which
348 <command>named</command> will read the location of zone files, root
349 name servers and secure DNS keys:
350 </para>
[0931098]351
[634cf991]352<screen role="root"><?dbfo keep-together="auto"?><userinput>cat &gt;&gt; /srv/named/etc/named.conf &lt;&lt; "EOF"
353<literal>options {
[cdf0106]354 directory "/etc/named";
[0931098]355 pid-file "/var/run/named.pid";
356 statistics-file "/var/run/named.stats";
[53217a6]357
[634cf991]358};
359zone "." {
360 type hint;
361 file "root.hints";
362};
363zone "0.0.127.in-addr.arpa" {
364 type master;
365 file "pz/127.0.0";
366};
[1c2cfae1]367
368// Bind 9 now logs by default through syslog (except debug).
369// These are the default logging rules.
370
371logging {
[634cf991]372 category default { default_syslog; default_debug; };
373 category unmatched { null; };
[1c2cfae1]374
375 channel default_syslog {
376 syslog daemon; // send to syslog's daemon
377 // facility
378 severity info; // only send priority info
379 // and higher
380 };
381
382 channel default_debug {
383 file "named.run"; // write to named.run in
384 // the working directory
385 // Note: stderr is used instead
386 // of "named.run"
387 // if the server is started
388 // with the '-f' option.
389 severity dynamic; // log at the server's
390 // current debug level
391 };
392
393 channel default_stderr {
394 stderr; // writes to stderr
395 severity info; // only send priority info
396 // and higher
397 };
398
399 channel null {
[634cf991]400 null; // toss anything sent to
[1c2cfae1]401 // this channel
402 };
[53217a6]403};</literal>
404EOF</userinput></screen>
[16473a92]405
[4472e923]406 <para>
407 Create a zone file with the following contents:
408 </para>
[0931098]409
[cdf0106]410<screen role="root"><userinput>cat &gt; /srv/named/etc/named/pz/127.0.0 &lt;&lt; "EOF"
[53217a6]411<literal>$TTL 3D
[0931098]412@ IN SOA ns.local.domain. hostmaster.local.domain. (
413 1 ; Serial
414 8H ; Refresh
415 2H ; Retry
416 4W ; Expire
417 1D) ; Minimum TTL
418 NS ns.local.domain.
[53217a6]4191 PTR localhost.</literal>
420EOF</userinput></screen>
[0931098]421
[4472e923]422 <para>
423 Create the <filename>root.hints</filename> file with the following
424 commands:
425 </para>
[0931098]426
[53217a6]427 <note>
[4472e923]428 <para>
429 Caution must be used to ensure there are no leading spaces in
430 this file.
431 </para>
[53217a6]432 </note>
[0931098]433
[cdf0106]434<screen role="root"><userinput>cat &gt; /srv/named/etc/named/root.hints &lt;&lt; "EOF"
[53217a6]435<literal>. 6D IN NS A.ROOT-SERVERS.NET.
[0931098]436. 6D IN NS B.ROOT-SERVERS.NET.
437. 6D IN NS C.ROOT-SERVERS.NET.
438. 6D IN NS D.ROOT-SERVERS.NET.
439. 6D IN NS E.ROOT-SERVERS.NET.
440. 6D IN NS F.ROOT-SERVERS.NET.
441. 6D IN NS G.ROOT-SERVERS.NET.
442. 6D IN NS H.ROOT-SERVERS.NET.
443. 6D IN NS I.ROOT-SERVERS.NET.
444. 6D IN NS J.ROOT-SERVERS.NET.
445. 6D IN NS K.ROOT-SERVERS.NET.
446. 6D IN NS L.ROOT-SERVERS.NET.
447. 6D IN NS M.ROOT-SERVERS.NET.
448A.ROOT-SERVERS.NET. 6D IN A 198.41.0.4
[da3e8de]449A.ROOT-SERVERS.NET. 6D IN AAAA 2001:503:ba3e::2:30
[8414284]450B.ROOT-SERVERS.NET. 6D IN A 199.9.14.201
[9c829d1]451B.ROOT-SERVERS.NET. 6D IN AAAA 2001:500:200::b
[0931098]452C.ROOT-SERVERS.NET. 6D IN A 192.33.4.12
[da3e8de]453C.ROOT-SERVERS.NET. 6D IN AAAA 2001:500:2::c
[7ba60b6e]454D.ROOT-SERVERS.NET. 6D IN A 199.7.91.13
[da3e8de]455D.ROOT-SERVERS.NET. 6D IN AAAA 2001:500:2d::d
[0931098]456E.ROOT-SERVERS.NET. 6D IN A 192.203.230.10
[da3e8de]457E.ROOT-SERVERS.NET. 6D IN AAAA 2001:500:a8::e
[0931098]458F.ROOT-SERVERS.NET. 6D IN A 192.5.5.241
[da3e8de]459F.ROOT-SERVERS.NET. 6D IN AAAA 2001:500:2f::f
[0931098]460G.ROOT-SERVERS.NET. 6D IN A 192.112.36.4
[9c829d1]461G.ROOT-SERVERS.NET. 6D IN AAAA 2001:500:12::d0d
[da3e8de]462H.ROOT-SERVERS.NET. 6D IN A 198.97.190.53
463H.ROOT-SERVERS.NET. 6D IN AAAA 2001:500:1::53
[0931098]464I.ROOT-SERVERS.NET. 6D IN A 192.36.148.17
[da3e8de]465I.ROOT-SERVERS.NET. 6D IN AAAA 2001:7fe::53
[0931098]466J.ROOT-SERVERS.NET. 6D IN A 192.58.128.30
[da3e8de]467J.ROOT-SERVERS.NET. 6D IN AAAA 2001:503:c27::2:30
[0931098]468K.ROOT-SERVERS.NET. 6D IN A 193.0.14.129
[da3e8de]469K.ROOT-SERVERS.NET. 6D IN AAAA 2001:7fd::1
[9288855]470L.ROOT-SERVERS.NET. 6D IN A 199.7.83.42
[da3e8de]471L.ROOT-SERVERS.NET. 6D IN AAAA 2001:500:9f::42
472M.ROOT-SERVERS.NET. 6D IN A 202.12.27.33
473M.ROOT-SERVERS.NET. 6D IN AAAA 2001:dc3::35</literal>
[53217a6]474EOF</userinput></screen>
[f45b1953]475
[4472e923]476 <para>
477 The <filename>root.hints</filename> file is a list of root name
478 servers. This file must be updated periodically with the
479 <command>dig</command> utility. A current copy of root.hints can be
[2dcc16cf]480 obtained from <ulink url="https://www.internic.net/domain/named.root"/>.
[002d2dc]481 For details, consult the "BIND 9 Administrator Reference Manual".
[4472e923]482 </para>
483
484 <para>
485 Create or modify <filename>resolv.conf</filename> to use the new
486 name server with the following commands:
487 </para>
[f45b1953]488
[53217a6]489 <note>
[4472e923]490 <para>
491 Replace <replaceable>&lt;yourdomain.com&gt;</replaceable> with
492 your own valid domain name.
493 </para>
[53217a6]494 </note>
495
496<screen role="root"><userinput>cp /etc/resolv.conf /etc/resolv.conf.bak &amp;&amp;
497cat &gt; /etc/resolv.conf &lt;&lt; "EOF"
[3cb0c57]498<literal>search <replaceable>&lt;yourdomain.com&gt;</replaceable>
[53217a6]499nameserver 127.0.0.1</literal>
500EOF</userinput></screen>
501
[4472e923]502 <para>
503 Set permissions on the <command>chroot</command> jail with the
504 following command:
505 </para>
[53217a6]506
[634cf991]507<screen role="root"><userinput>chown -R named:named /srv/named</userinput></screen>
[53217a6]508
509 </sect3>
510
511 <sect3 id="bind-init">
[1258125]512 <title><phrase revision="sysv">Boot Script</phrase>
513 <phrase revision="systemd">Systemd Unit</phrase></title>
[53217a6]514
[4472e923]515 <para>
516 To start the DNS server at boot, install the
517 <phrase revision="sysv"><filename>/etc/rc.d/init.d/bind</filename> init
518 script</phrase>
519 <phrase revision="systemd"><filename>named.service</filename>
520 unit</phrase> included in the
521 <xref linkend="bootscripts" revision="sysv"/>
522 <xref linkend="systemd-units" revision="systemd"/> package:
523 </para>
[53217a6]524
525 <indexterm zone="bind bind-init">
526 <primary sortas="f-bind">bind</primary>
527 </indexterm>
528
[6111a63]529<screen role="root" revision="sysv"><userinput>make install-bind</userinput></screen>
530<screen role="root" revision="systemd"><userinput>make install-named</userinput></screen>
[53217a6]531
[4472e923]532 <para>
533 Now start <application>BIND</application> with the following command:
534 </para>
[53217a6]535
[1258125]536<screen role="root" revision="sysv"><userinput>/etc/rc.d/init.d/bind start</userinput></screen>
537<screen role="root" revision="systemd"><userinput>systemctl start named</userinput></screen>
[53217a6]538
539 </sect3>
540
541 <sect3>
542 <title>Testing BIND</title>
543
[4472e923]544 <para>
545 Test out the new <application>BIND</application> 9 installation.
546 First query the local host address with <command>dig</command>:
547 </para>
[53217a6]548
549<screen><userinput>dig -x 127.0.0.1</userinput></screen>
550
[4472e923]551 <para>
552 Now try an external name lookup, taking note of the speed
553 difference in repeated lookups due to the caching. Run the
554 <command>dig</command> command twice on the same address:
555 </para>
[53217a6]556
[4e88613]557<screen><userinput>dig www.&lfs-domainname; &amp;&amp;
558dig www.&lfs-domainname;</userinput></screen>
[53217a6]559
[4472e923]560 <para>
561 You can see almost instantaneous results with the named caching
562 lookups. Consult the <application>BIND</application> Administrator
[002d2dc]563 Reference Manual (see below) for further configuration options.
[4472e923]564 </para>
[53217a6]565
566 </sect3>
567
568 </sect2>
569
[002d2dc]570 <sect2>
571 <title>Administrator Reference Manual (ARM)</title>
[1fe05eb]572
[002d2dc]573 <para>
574 The ARM documentation (do not confuse with the processor architecture)
575 is included in the source package. The documentation is in .rst
576 format which means, it can be converted in human readable formats
[75e3e09]577 if <ulink url="https://www.sphinx-doc.org/">Sphinx</ulink> is
[002d2dc]578 installed. As time of writing, sphinx is not included in
579 the BLFS book and therefore, the instructions above do not
580 install the docs.
581 </para>
[1fe05eb]582
[002d2dc]583 <para>
584 When <application>BIND</application> is set up, especially when
585 to operate in a real live scenario, it is <emphasis>highly</emphasis>
586 recommended to consult the ARM documentation. ISC provides an
587 updated set of excellent documentation along with every release
588 so it can be easily be viewed and/or downloaded - so there is
589 no excuse to not read the docs. The formats ISC provides are PDF,
590 epub and html at <ulink url="https://downloads.isc.org/isc/bind9/&bind-version;/doc/arm/"/>.
591 </para>
592 </sect2>
[1fe05eb]593
[53217a6]594 <sect2 role="content">
595 <title>Contents</title>
596
597 <segmentedlist>
598 <segtitle>Installed Programs</segtitle>
599 <segtitle>Installed Libraries</segtitle>
600 <segtitle>Installed Directories</segtitle>
601
602 <seglistitem>
[efe9371]603
[8558044]604 <seg>arpaname, <!--bind9-config hardlinked to isc-config.sh,-->
605 ddns-confgen, delv, dig, dnssec-cds, dnssec-checkds, dnssec-coverage,
606 dnssec-dsfromkey, dnssec-importkey, dnssec-keyfromlabel, dnssec-keygen,
607 dnssec-keymgr, dnssec-revoke, dnssec-settime, dnssec-signzone,
[5d5c2107]608 dnssec-verify, host, mdig, named, named-checkconf,
[8558044]609 named-checkzone, named-compilezone (symlink), named-journalprint,
610 named-nzd2nzf, named-rrchecker, nsec3hash, nslookup, nsupdate, rndc,
[cc64b232]611 rndc-confgen, and tsig-keygen (symlink)</seg>
[74fe55c]612
[5d5c2107]613 <seg>libbind9.so, libdns.so, libirs.so, libisc.so, libisccc.so,
614 libisccfg.so, and libns.so</seg>
[efe9371]615
[5d5c2107]616 <seg>/usr/include/{bind9,dns,dst,irs,isc,isccc,isccfg,ns,pk11,pkcs11},
[0aa72821]617 /usr/lib/named, /usr/lib/python&python3-majorver;/site-packages/isc,
618 and /srv/named</seg>
[53217a6]619 </seglistitem>
620 </segmentedlist>
621
622 <variablelist>
623 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
624 <?dbfo list-presentation="list"?>
625 <?dbhtml list-presentation="table"?>
626
[298fee30]627 <varlistentry id="arpaname">
628 <term><command>arpaname</command></term>
629 <listitem>
630 <para>
[4c24eb0a]631 translates IP addresses to the corresponding ARPA names
[298fee30]632 </para>
633 <indexterm zone="bind arpaname">
634 <primary sortas="b-arpaname">arpaname</primary>
635 </indexterm>
636 </listitem>
637 </varlistentry>
638
[cc64b232]639<!-- Not present as of 9.16.5
[298fee30]640 <varlistentry id="bind9-config">
641 <term><command>bind9-config</command></term>
642 <listitem>
643 <para>
[bf32a132]644 is hardlinked to <command>isc-config.sh</command>.
[298fee30]645 </para>
646 <indexterm zone="bind bind9-config">
647 <primary sortas="b-bind9-config">bind9-config</primary>
648 </indexterm>
649 </listitem>
650 </varlistentry>
[cc64b232]651-->
[298fee30]652
653 <varlistentry id="ddns-confgen">
654 <term><command>ddns-confgen</command></term>
655 <listitem>
656 <para>
[4c24eb0a]657 generates a key for use by nsupdate and named
[298fee30]658 </para>
659 <indexterm zone="bind ddns-confgen">
660 <primary sortas="b-ddns-confgen">ddns-confgen</primary>
661 </indexterm>
662 </listitem>
663 </varlistentry>
664
665 <varlistentry id="delv">
666 <term><command>delv</command></term>
667 <listitem>
668 <para>
[c18b8f23]669 is a new debugging tool that is a successor to
[4c24eb0a]670 <command>dig</command>
[298fee30]671 </para>
672 <indexterm zone="bind delv">
673 <primary sortas="b-delv">delv</primary>
674 </indexterm>
675 </listitem>
676 </varlistentry>
677
[53217a6]678 <varlistentry id="dig">
679 <term><command>dig</command></term>
680 <listitem>
[4472e923]681 <para>
[4c24eb0a]682 interrogates DNS servers
[4472e923]683 </para>
[53217a6]684 <indexterm zone="bind dig">
685 <primary sortas="b-dig">dig</primary>
686 </indexterm>
687 </listitem>
688 </varlistentry>
[cc64b232]689
690 <varlistentry id="dnssec-cds">
691 <term><command>dnssec-cds</command></term>
692 <listitem>
693 <para>
694 changes DS records for a child zone based on
[4c24eb0a]695 CDS/CDNSKEY
[cc64b232]696 </para>
697 <indexterm zone="bind dnssec-cds">
698 <primary sortas="b-dnssec-cds">dnssec-cds</primary>
699 </indexterm>
700 </listitem>
701 </varlistentry>
702
[298fee30]703 <varlistentry id="dnssec-checkds">
704 <term><command>dnssec-checkds</command></term>
705 <listitem>
706 <para>
[4c24eb0a]707 is a DNSSEC delegation consistency checking tool
[298fee30]708 </para>
709 <indexterm zone="bind dnssec-checkds">
710 <primary sortas="b-dnssec-checkds">dnssec-checkds</primary>
711 </indexterm>
712 </listitem>
713 </varlistentry>
714
715 <varlistentry id="dnssec-coverage">
716 <term><command>dnssec-coverage</command></term>
717 <listitem>
718 <para>
[c18b8f23]719 verifies that the DNSSEC keys for a given zone or a set of zones
[298fee30]720 have timing metadata set properly to ensure no future lapses
[4c24eb0a]721 in DNSSEC coverage
[298fee30]722 </para>
723 <indexterm zone="bind dnssec-coverage">
724 <primary sortas="b-dnssec-coverage">dnssec-coverage</primary>
725 </indexterm>
726 </listitem>
[cc64b232]727 </varlistentry>
[c18b8f23]728
[298fee30]729 <varlistentry id="dnssec-dsfromkey">
730 <term><command>dnssec-dsfromkey</command></term>
731 <listitem>
732 <para>
[4c24eb0a]733 outputs the Delegation Signer (DS) resource record (RR)
[298fee30]734 </para>
735 <indexterm zone="bind dnssec-dsfromkey">
736 <primary sortas="b-dnssec-dsfromkey">dnssec-dsfromkey</primary>
737 </indexterm>
738 </listitem>
739 </varlistentry>
740
741 <varlistentry id="dnssec-importkey">
742 <term><command>dnssec-importkey</command></term>
743 <listitem>
744 <para>
[c18b8f23]745 reads a public DNSKEY record and generates a pair of
[4c24eb0a]746 .key/.private files
[298fee30]747 </para>
748 <indexterm zone="bind dnssec-importkey">
749 <primary sortas="b-dnssec-importkey">dnssec-importkey</primary>
750 </indexterm>
751 </listitem>
752 </varlistentry>
753
754 <varlistentry id="dnssec-keyfromlabel">
755 <term><command>dnssec-keyfromlabel</command></term>
756 <listitem>
757 <para>
[0aa72821]758 gets keys with the given label from a cryptography hardware device
[4c24eb0a]759 and builds key files for DNSSEC
[298fee30]760 </para>
761 <indexterm zone="bind dnssec-keyfromlabel">
762 <primary sortas="b-dnssec-keyfromlabel">dnssec-keyfromlabel</primary>
763 </indexterm>
764 </listitem>
765 </varlistentry>
766
[53217a6]767 <varlistentry id="dnssec-keygen">
768 <term><command>dnssec-keygen</command></term>
769 <listitem>
[4472e923]770 <para>
[4c24eb0a]771 is a key generator for secure DNS
[4472e923]772 </para>
[53217a6]773 <indexterm zone="bind dnssec-keygen">
774 <primary sortas="b-dnssec-keygen">dnssec-keygen</primary>
775 </indexterm>
776 </listitem>
777 </varlistentry>
778
[cc64b232]779 <varlistentry id="dnssec-keymgr">
780 <term><command>dnssec-keymgr</command></term>
781 <listitem>
782 <para>
[4c24eb0a]783 ensures correct DNSKEY coverage based on a defined policy
[cc64b232]784 </para>
785 <indexterm zone="bind dnssec-keymgr">
786 <primary sortas="b-dnssec-keymgr">dnssec-keymgr</primary>
787 </indexterm>
788 </listitem>
789 </varlistentry>
790
[298fee30]791 <varlistentry id="dnssec-revoke">
792 <term><command>dnssec-revoke</command></term>
793 <listitem>
794 <para>
[4c24eb0a]795 sets the REVOKED bit on a DNSSEC key
[298fee30]796 </para>
797 <indexterm zone="bind dnssec-revoke">
798 <primary sortas="b-dnssec-revoke">dnssec-revoke</primary>
799 </indexterm>
800 </listitem>
801 </varlistentry>
802
803 <varlistentry id="dnssec-settime">
804 <term><command>dnssec-settime</command></term>
805 <listitem>
806 <para>
[4c24eb0a]807 sets the key timing metadata for a DNSSEC key
[298fee30]808 </para>
809 <indexterm zone="bind dnssec-settime">
810 <primary sortas="b-dnssec-settime">dnssec-settime</primary>
811 </indexterm>
812 </listitem>
813 </varlistentry>
814
[53217a6]815 <varlistentry id="dnssec-signzone">
816 <term><command>dnssec-signzone</command></term>
817 <listitem>
[4472e923]818 <para>
[4c24eb0a]819 generates signed versions of zone files
[4472e923]820 </para>
[53217a6]821 <indexterm zone="bind dnssec-signzone">
822 <primary sortas="b-dnssec-signzone">dnssec-signzone</primary>
823 </indexterm>
824 </listitem>
825 </varlistentry>
826
[298fee30]827 <varlistentry id="dnssec-verify">
828 <term><command>dnssec-verify</command></term>
829 <listitem>
830 <para>
[c18b8f23]831 verifies that a zone is fully signed for each algorithm found
832 in the DNSKEY RRset for the zone, and that the NSEC / NSEC3
[4c24eb0a]833 chains are complete
[298fee30]834 </para>
835 <indexterm zone="bind dnssec-verify">
836 <primary sortas="b-dnssec-verify">dnssec-verify</primary>
837 </indexterm>
838 </listitem>
839 </varlistentry>
840
[cc64b232]841<!-- No longer present with 9.16.5
[298fee30]842 <varlistentry id="genrandom">
843 <term><command>genrandom</command></term>
844 <listitem>
845 <para>
[bf32a132]846 generates a file containing random data.
[298fee30]847 </para>
848 <indexterm zone="bind genrandom">
849 <primary sortas="b-genrandom">genrandom</primary>
850 </indexterm>
851 </listitem>
852 </varlistentry>
[cc64b232]853-->
[298fee30]854
[53217a6]855 <varlistentry id="host">
856 <term><command>host</command></term>
857 <listitem>
[4472e923]858 <para>
[4c24eb0a]859 is a utility for DNS lookups
[4472e923]860 </para>
[53217a6]861 <indexterm zone="bind host">
862 <primary sortas="b-host">host</primary>
863 </indexterm>
864 </listitem>
865 </varlistentry>
866
[cc64b232]867 <!-- No longer present with 9.16.5
[298fee30]868 <varlistentry id="isc-config.sh">
869 <term><command>isc-config.sh</command></term>
870 <listitem>
871 <para>
872 prints information related to the installed version of ISC BIND.
873 </para>
874 <indexterm zone="bind isc-config.sh">
875 <primary sortas="b-isc-config.sh">isc-config.sh</primary>
876 </indexterm>
877 </listitem>
878 </varlistentry>
879
880 <varlistentry id="isc-hmac-fixup">
881 <term><command>isc-hmac-fixup</command></term>
882 <listitem>
883 <para>
884 fixes HMAC keys generated by older versions of BIND.
885 </para>
886 <indexterm zone="bind isc-hmac-fixup">
887 <primary sortas="b-isc-hmac-fixup">isc-hmac-fixup</primary>
888 </indexterm>
889 </listitem>
890 </varlistentry>
891
[53217a6]892 <varlistentry id="lwresd">
893 <term><command>lwresd</command></term>
894 <listitem>
[4472e923]895 <para>
896 is a caching-only name server for local process use.
897 </para>
[53217a6]898 <indexterm zone="bind lwresd">
899 <primary sortas="b-lwresd">lwresd</primary>
900 </indexterm>
901 </listitem>
902 </varlistentry>
[cc64b232]903-->
904
905 <varlistentry id="mdig">
906 <term><command>mdig</command></term>
907 <listitem>
908 <para>
[4c24eb0a]909 is a version of dig that allows multiple queries at once
[cc64b232]910 </para>
911 <indexterm zone="bind mdig">
912 <primary sortas="b-mdig">mdig</primary>
913 </indexterm>
914 </listitem>
915 </varlistentry>
[53217a6]916
917 <varlistentry id="named">
918 <term><command>named</command></term>
919 <listitem>
[4472e923]920 <para>
[4c24eb0a]921 is the name server daemon
[4472e923]922 </para>
[53217a6]923 <indexterm zone="bind named">
924 <primary sortas="b-named">named</primary>
925 </indexterm>
926 </listitem>
927 </varlistentry>
928
929 <varlistentry id="named-checkconf">
930 <term><command>named-checkconf</command></term>
931 <listitem>
[4472e923]932 <para>
933 checks the syntax of <filename>named.conf</filename>
[4c24eb0a]934 files
[4472e923]935 </para>
[53217a6]936 <indexterm zone="bind named-checkconf">
937 <primary sortas="b-named-checkconf">named-checkconf</primary>
938 </indexterm>
939 </listitem>
940 </varlistentry>
941
942 <varlistentry id="named-checkzone">
943 <term><command>named-checkzone</command></term>
944 <listitem>
[4472e923]945 <para>
[4c24eb0a]946 checks zone file validity
[4472e923]947 </para>
[53217a6]948 <indexterm zone="bind named-checkzone">
949 <primary sortas="b-named-checkzone">named-checkzone</primary>
950 </indexterm>
951 </listitem>
952 </varlistentry>
953
[298fee30]954 <varlistentry id="named-compilezone">
955 <term><command>named-compilezone</command></term>
956 <listitem>
957 <para>
[c18b8f23]958 is similar to <command>named-checkzone</command>, but it always
[4c24eb0a]959 dumps the zone contents to a specified file in a specified format
[298fee30]960 </para>
961 <indexterm zone="bind named-compilezone">
962 <primary sortas="b-named-compilezone">named-compilezone</primary>
963 </indexterm>
964 </listitem>
965 </varlistentry>
966
967 <varlistentry id="named-journalprint">
968 <term><command>named-journalprint</command></term>
969 <listitem>
970 <para>
[4c24eb0a]971 prints the zone journal in human-readable form
[298fee30]972 </para>
973 <indexterm zone="bind named-journalprint">
974 <primary sortas="b-named-journalprint">named-journalprint</primary>
975 </indexterm>
976 </listitem>
977 </varlistentry>
978
979 <varlistentry id="named-rrchecker">
980 <term><command>named-rrchecker</command></term>
981 <listitem>
982 <para>
[bf32a132]983 reads an individual DNS resource record from standard input and
[4c24eb0a]984 checks if it is syntactically correct
[298fee30]985 </para>
986 <indexterm zone="bind named-rrchecker">
987 <primary sortas="b-named-rrchecker">named-rrchecker</primary>
988 </indexterm>
989 </listitem>
990 </varlistentry>
991
[cc64b232]992 <varlistentry id="named-nzd2nzf">
993 <term><command>named-nzd2nzf</command></term>
994 <listitem>
995 <para>
[4c24eb0a]996 converts an NZD database to NZF text format
[cc64b232]997 </para>
998 <indexterm zone="bind named-nzd2nzf">
999 <primary sortas="b-named-nzd2nzf">named-nzd2nzf</primary>
1000 </indexterm>
1001 </listitem>
1002 </varlistentry>
1003
[298fee30]1004 <varlistentry id="nsec3hash">
1005 <term><command>nsec3hash</command></term>
1006 <listitem>
1007 <para>
[4c24eb0a]1008 generates an NSEC3 hash based on a set of NSEC3 parameters
[298fee30]1009 </para>
1010 <indexterm zone="bind nsec3hash">
1011 <primary sortas="b-nsec3hash">nsec3hash</primary>
1012 </indexterm>
1013 </listitem>
1014 </varlistentry>
1015
[53217a6]1016 <varlistentry id="nslookup">
1017 <term><command>nslookup</command></term>
1018 <listitem>
[4472e923]1019 <para>
[4c24eb0a]1020 is a program used to query Internet domain nameservers
[4472e923]1021 </para>
[53217a6]1022 <indexterm zone="bind nslookup">
1023 <primary sortas="b-nslookup">nslookup</primary>
1024 </indexterm>
1025 </listitem>
1026 </varlistentry>
1027
1028 <varlistentry id="nsupdate">
1029 <term><command>nsupdate</command></term>
1030 <listitem>
[4472e923]1031 <para>
[4c24eb0a]1032 is used to submit DNS update requests
[4472e923]1033 </para>
[53217a6]1034 <indexterm zone="bind nsupdate">
1035 <primary sortas="b-nsupdate">nsupdate</primary>
1036 </indexterm>
1037 </listitem>
1038 </varlistentry>
1039
1040 <varlistentry id="rndc">
1041 <term><command>rndc</command></term>
1042 <listitem>
[4472e923]1043 <para>
[4c24eb0a]1044 controls the operation of <application>BIND</application>
[4472e923]1045 </para>
[53217a6]1046 <indexterm zone="bind rndc">
1047 <primary sortas="b-rndc">rndc</primary>
1048 </indexterm>
1049 </listitem>
1050 </varlistentry>
1051
1052 <varlistentry id="rndc-confgen">
1053 <term><command>rndc-confgen</command></term>
1054 <listitem>
[4472e923]1055 <para>
[4c24eb0a]1056 generates <filename>rndc.conf</filename> files
[4472e923]1057 </para>
[53217a6]1058 <indexterm zone="bind rndc-confgen">
1059 <primary sortas="b-rndc-confgen">rndc-confgen</primary>
1060 </indexterm>
1061 </listitem>
1062 </varlistentry>
1063
[298fee30]1064 <varlistentry id="tsig-keygen">
1065 <term><command>tsig-keygen</command></term>
1066 <listitem>
1067 <para>
[4c24eb0a]1068 is a symlink to <command>ddns-confgen</command>
[298fee30]1069 </para>
1070 <indexterm zone="bind tsig-keygen">
1071 <primary sortas="b-tsig-keygen">tsig-keygen</primary>
1072 </indexterm>
1073 </listitem>
1074 </varlistentry>
1075
[53217a6]1076 </variablelist>
1077
1078 </sect2>
1079
1080</sect1>
Note: See TracBrowser for help on using the repository browser.