1NAMED.CONF(5)                       BIND 9                       NAMED.CONF(5)
2
3
4

NAME

6       named.conf - configuration file for **named**
7

SYNOPSIS

9       named.conf
10

DESCRIPTION

12       named.conf is the configuration file for named.
13
14       For  complete  documentation about the configuration statements, please
15       refer to the Configuration Reference section in the BIND 9  Administra‐
16       tor Reference Manual.
17
18       Statements  are  enclosed  in  braces and terminated with a semi-colon.
19       Clauses in the statements are also  semi-colon  terminated.  The  usual
20       comment styles are supported:
21
22       C style: /* */
23
24       C++ style: // to end of line
25
26       Unix style: # to end of line
27
28          acl <string> { <address_match_element>; ... }; // may occur multiple times
29
30          controls {
31               inet ( <ipv4_address> | <ipv6_address> | * ) [ port ( <integer> | * ) ] allow { <address_match_element>; ... } [ keys { <string>; ... } ] [ read-only <boolean> ]; // may occur multiple times
32               unix <quoted_string> perm <integer> owner <integer> group <integer> [ keys { <string>; ... } ] [ read-only <boolean> ]; // may occur multiple times
33          }; // may occur multiple times
34
35          dlz <string> {
36               database <string>;
37               search <boolean>;
38          }; // may occur multiple times
39
40          dnssec-policy <string> {
41               cdnskey <boolean>;
42               cds-digest-types { <string>; ... };
43               dnskey-ttl <duration>;
44               inline-signing <boolean>;
45               keys { ( csk | ksk | zsk ) [ ( key-directory ) ] lifetime <duration_or_unlimited> algorithm <string> [ <integer> ]; ... };
46               max-zone-ttl <duration>;
47               nsec3param [ iterations <integer> ] [ optout <boolean> ] [ salt-length <integer> ];
48               parent-ds-ttl <duration>;
49               parent-propagation-delay <duration>;
50               publish-safety <duration>;
51               purge-keys <duration>;
52               retire-safety <duration>;
53               signatures-refresh <duration>;
54               signatures-validity <duration>;
55               signatures-validity-dnskey <duration>;
56               zone-propagation-delay <duration>;
57          }; // may occur multiple times
58
59          dyndb <string> <quoted_string> { <unspecified-text> }; // may occur multiple times
60
61          http <string> {
62               endpoints { <quoted_string>; ... };
63               listener-clients <integer>;
64               streams-per-connection <integer>;
65          }; // may occur multiple times
66
67          key <string> {
68               algorithm <string>;
69               secret <string>;
70          }; // may occur multiple times
71
72          logging {
73               category <string> { <string>; ... }; // may occur multiple times
74               channel <string> {
75                    buffered <boolean>;
76                    file <quoted_string> [ versions ( unlimited | <integer> ) ] [ size <size> ] [ suffix ( increment | timestamp ) ];
77                    null;
78                    print-category <boolean>;
79                    print-severity <boolean>;
80                    print-time ( iso8601 | iso8601-utc | local | <boolean> );
81                    severity <log_severity>;
82                    stderr;
83                    syslog [ <syslog_facility> ];
84               }; // may occur multiple times
85          };
86
87          managed-keys { <string> ( static-key | initial-key | static-ds | initial-ds ) <integer> <integer> <integer> <quoted_string>; ... }; // may occur multiple times, deprecated
88
89          options {
90               allow-new-zones <boolean>;
91               allow-notify { <address_match_element>; ... };
92               allow-query { <address_match_element>; ... };
93               allow-query-cache { <address_match_element>; ... };
94               allow-query-cache-on { <address_match_element>; ... };
95               allow-query-on { <address_match_element>; ... };
96               allow-recursion { <address_match_element>; ... };
97               allow-recursion-on { <address_match_element>; ... };
98               allow-transfer [ port <integer> ] [ transport <string> ] { <address_match_element>; ... };
99               allow-update { <address_match_element>; ... };
100               allow-update-forwarding { <address_match_element>; ... };
101               also-notify [ port <integer> ] [ source ( <ipv4_address> | * ) ] [ source-v6 ( <ipv6_address> | * ) ] { ( <remote-servers> | <ipv4_address> [ port <integer> ] | <ipv6_address> [ port <integer> ] ) [ key <string> ] [ tls <string> ]; ... };
102               answer-cookie <boolean>;
103               attach-cache <string>;
104               auth-nxdomain <boolean>;
105               automatic-interface-scan <boolean>;
106               avoid-v4-udp-ports { <portrange>; ... }; // deprecated
107               avoid-v6-udp-ports { <portrange>; ... }; // deprecated
108               bindkeys-file <quoted_string>; // test only
109               blackhole { <address_match_element>; ... };
110               catalog-zones { zone <string> [ default-primaries [ port <integer> ] [ source ( <ipv4_address> | * ) ] [ source-v6 ( <ipv6_address> | * ) ] { ( <remote-servers> | <ipv4_address> [ port <integer> ] | <ipv6_address> [ port <integer> ] ) [ key <string> ] [ tls <string> ]; ... } ] [ zone-directory <quoted_string> ] [ in-memory <boolean> ] [ min-update-interval <duration> ]; ... };
111               check-dup-records ( fail | warn | ignore );
112               check-integrity <boolean>;
113               check-mx ( fail | warn | ignore );
114               check-mx-cname ( fail | warn | ignore );
115               check-names ( primary | master | secondary | slave | response ) ( fail | warn | ignore ); // may occur multiple times
116               check-sibling <boolean>;
117               check-spf ( warn | ignore );
118               check-srv-cname ( fail | warn | ignore );
119               check-svcb <boolean>;
120               check-wildcard <boolean>;
121               clients-per-query <integer>;
122               cookie-algorithm ( aes | siphash24 );
123               cookie-secret <string>; // may occur multiple times
124               deny-answer-addresses { <address_match_element>; ... } [ except-from { <string>; ... } ];
125               deny-answer-aliases { <string>; ... } [ except-from { <string>; ... } ];
126               dialup ( notify | notify-passive | passive | refresh | <boolean> ); // deprecated
127               directory <quoted_string>;
128               disable-algorithms <string> { <string>; ... }; // may occur multiple times
129               disable-ds-digests <string> { <string>; ... }; // may occur multiple times
130               disable-empty-zone <string>; // may occur multiple times
131               dns64 <netprefix> {
132                    break-dnssec <boolean>;
133                    clients { <address_match_element>; ... };
134                    exclude { <address_match_element>; ... };
135                    mapped { <address_match_element>; ... };
136                    recursive-only <boolean>;
137                    suffix <ipv6_address>;
138               }; // may occur multiple times
139               dns64-contact <string>;
140               dns64-server <string>;
141               dnskey-sig-validity <integer>; // obsolete
142               dnsrps-enable <boolean>; // not configured
143               dnsrps-library <quoted_string>; // not configured
144               dnsrps-options { <unspecified-text> }; // not configured
145               dnssec-accept-expired <boolean>;
146               dnssec-dnskey-kskonly <boolean>; // obsolete
147               dnssec-loadkeys-interval <integer>;
148               dnssec-must-be-secure <string> <boolean>; // may occur multiple times, deprecated
149               dnssec-policy <string>;
150               dnssec-secure-to-insecure <boolean>; // obsolete
151               dnssec-update-mode ( maintain | no-resign ); // obsolete
152               dnssec-validation ( yes | no | auto );
153               dnstap { ( all | auth | client | forwarder | resolver | update ) [ ( query | response ) ]; ... }; // not configured
154               dnstap-identity ( <quoted_string> | none | hostname ); // not configured
155               dnstap-output ( file | unix ) <quoted_string> [ size ( unlimited | <size> ) ] [ versions ( unlimited | <integer> ) ] [ suffix ( increment | timestamp ) ]; // not configured
156               dnstap-version ( <quoted_string> | none ); // not configured
157               dual-stack-servers [ port <integer> ] { ( <quoted_string> [ port <integer> ] | <ipv4_address> [ port <integer> ] | <ipv6_address> [ port <integer> ] ); ... };
158               dump-file <quoted_string>;
159               edns-udp-size <integer>;
160               empty-contact <string>;
161               empty-server <string>;
162               empty-zones-enable <boolean>;
163               fetch-quota-params <integer> <fixedpoint> <fixedpoint> <fixedpoint>;
164               fetches-per-server <integer> [ ( drop | fail ) ];
165               fetches-per-zone <integer> [ ( drop | fail ) ];
166               flush-zones-on-shutdown <boolean>;
167               forward ( first | only );
168               forwarders [ port <integer> ] [ tls <string> ] { ( <ipv4_address> | <ipv6_address> ) [ port <integer> ] [ tls <string> ]; ... };
169               fstrm-set-buffer-hint <integer>; // not configured
170               fstrm-set-flush-timeout <integer>; // not configured
171               fstrm-set-input-queue-size <integer>; // not configured
172               fstrm-set-output-notify-threshold <integer>; // not configured
173               fstrm-set-output-queue-model ( mpsc | spsc ); // not configured
174               fstrm-set-output-queue-size <integer>; // not configured
175               fstrm-set-reopen-interval <duration>; // not configured
176               geoip-directory ( <quoted_string> | none );
177               heartbeat-interval <integer>; // deprecated
178               hostname ( <quoted_string> | none );
179               http-listener-clients <integer>;
180               http-port <integer>;
181               http-streams-per-connection <integer>;
182               https-port <integer>;
183               interface-interval <duration>;
184               ipv4only-contact <string>;
185               ipv4only-enable <boolean>;
186               ipv4only-server <string>;
187               ixfr-from-differences ( primary | master | secondary | slave | <boolean> );
188               keep-response-order { <address_match_element>; ... }; // obsolete
189               key-directory <quoted_string>;
190               lame-ttl <duration>;
191               listen-on [ port <integer> ] [ tls <string> ] [ http <string> ] { <address_match_element>; ... }; // may occur multiple times
192               listen-on-v6 [ port <integer> ] [ tls <string> ] [ http <string> ] { <address_match_element>; ... }; // may occur multiple times
193               lmdb-mapsize <sizeval>;
194               managed-keys-directory <quoted_string>;
195               masterfile-format ( raw | text );
196               masterfile-style ( full | relative );
197               match-mapped-addresses <boolean>;
198               max-cache-size ( default | unlimited | <sizeval> | <percentage> );
199               max-cache-ttl <duration>;
200               max-clients-per-query <integer>;
201               max-ixfr-ratio ( unlimited | <percentage> );
202               max-journal-size ( default | unlimited | <sizeval> );
203               max-ncache-ttl <duration>;
204               max-records <integer>;
205               max-recursion-depth <integer>;
206               max-recursion-queries <integer>;
207               max-refresh-time <integer>;
208               max-retry-time <integer>;
209               max-rsa-exponent-size <integer>;
210               max-stale-ttl <duration>;
211               max-transfer-idle-in <integer>;
212               max-transfer-idle-out <integer>;
213               max-transfer-time-in <integer>;
214               max-transfer-time-out <integer>;
215               max-udp-size <integer>;
216               max-zone-ttl ( unlimited | <duration> ); // deprecated
217               memstatistics <boolean>;
218               memstatistics-file <quoted_string>;
219               message-compression <boolean>;
220               min-cache-ttl <duration>;
221               min-ncache-ttl <duration>;
222               min-refresh-time <integer>;
223               min-retry-time <integer>;
224               minimal-any <boolean>;
225               minimal-responses ( no-auth | no-auth-recursive | <boolean> );
226               multi-master <boolean>;
227               new-zones-directory <quoted_string>;
228               no-case-compress { <address_match_element>; ... };
229               nocookie-udp-size <integer>;
230               notify ( explicit | master-only | primary-only | <boolean> );
231               notify-delay <integer>;
232               notify-rate <integer>;
233               notify-source ( <ipv4_address> | * );
234               notify-source-v6 ( <ipv6_address> | * );
235               notify-to-soa <boolean>;
236               nsec3-test-zone <boolean>; // test only
237               nta-lifetime <duration>;
238               nta-recheck <duration>;
239               nxdomain-redirect <string>;
240               parental-source ( <ipv4_address> | * );
241               parental-source-v6 ( <ipv6_address> | * );
242               pid-file ( <quoted_string> | none );
243               port <integer>;
244               preferred-glue <string>;
245               prefetch <integer> [ <integer> ];
246               provide-ixfr <boolean>;
247               qname-minimization ( strict | relaxed | disabled | off );
248               query-source [ address ] ( <ipv4_address> | * );
249               query-source-v6 [ address ] ( <ipv6_address> | * );
250               querylog <boolean>;
251               rate-limit {
252                    all-per-second <integer>;
253                    errors-per-second <integer>;
254                    exempt-clients { <address_match_element>; ... };
255                    ipv4-prefix-length <integer>;
256                    ipv6-prefix-length <integer>;
257                    log-only <boolean>;
258                    max-table-size <integer>;
259                    min-table-size <integer>;
260                    nodata-per-second <integer>;
261                    nxdomains-per-second <integer>;
262                    qps-scale <integer>;
263                    referrals-per-second <integer>;
264                    responses-per-second <integer>;
265                    slip <integer>;
266                    window <integer>;
267               };
268               recursing-file <quoted_string>;
269               recursion <boolean>;
270               recursive-clients <integer>;
271               request-expire <boolean>;
272               request-ixfr <boolean>;
273               request-nsid <boolean>;
274               require-server-cookie <boolean>;
275               resolver-nonbackoff-tries <integer>;
276               resolver-query-timeout <integer>;
277               resolver-retry-interval <integer>;
278               resolver-use-dns64 <boolean>;
279               response-padding { <address_match_element>; ... } block-size <integer>;
280               response-policy { zone <string> [ add-soa <boolean> ] [ log <boolean> ] [ max-policy-ttl <duration> ] [ min-update-interval <duration> ] [ policy ( cname | disabled | drop | given | no-op | nodata | nxdomain | passthru | tcp-only <quoted_string> ) ] [ recursive-only <boolean> ] [ nsip-enable <boolean> ] [ nsdname-enable <boolean> ] [ ede <string> ]; ... } [ add-soa <boolean> ] [ break-dnssec <boolean> ] [ max-policy-ttl <duration> ] [ min-update-interval <duration> ] [ min-ns-dots <integer> ] [ nsip-wait-recurse <boolean> ] [ nsdname-wait-recurse <boolean> ] [ qname-wait-recurse <boolean> ] [ recursive-only <boolean> ] [ nsip-enable <boolean> ] [ nsdname-enable <boolean> ] [ dnsrps-enable <boolean> ] [ dnsrps-options { <unspecified-text> } ];
281               reuseport <boolean>;
282               root-key-sentinel <boolean>;
283               rrset-order { [ class <string> ] [ type <string> ] [ name <quoted_string> ] <string> <string>; ... };
284               secroots-file <quoted_string>;
285               send-cookie <boolean>;
286               serial-query-rate <integer>;
287               serial-update-method ( date | increment | unixtime );
288               server-id ( <quoted_string> | none | hostname );
289               servfail-ttl <duration>;
290               session-keyalg <string>;
291               session-keyfile ( <quoted_string> | none );
292               session-keyname <string>;
293               sig-signing-nodes <integer>;
294               sig-signing-signatures <integer>;
295               sig-signing-type <integer>;
296               sig-validity-interval <integer> [ <integer> ]; // obsolete
297               sortlist { <address_match_element>; ... };
298               stale-answer-client-timeout ( disabled | off | <integer> );
299               stale-answer-enable <boolean>;
300               stale-answer-ttl <duration>;
301               stale-cache-enable <boolean>;
302               stale-refresh-time <duration>;
303               startup-notify-rate <integer>;
304               statistics-file <quoted_string>;
305               synth-from-dnssec <boolean>;
306               tcp-advertised-timeout <integer>;
307               tcp-clients <integer>;
308               tcp-idle-timeout <integer>;
309               tcp-initial-timeout <integer>;
310               tcp-keepalive-timeout <integer>;
311               tcp-listen-queue <integer>;
312               tcp-receive-buffer <integer>;
313               tcp-send-buffer <integer>;
314               tkey-domain <quoted_string>;
315               tkey-gssapi-credential <quoted_string>;
316               tkey-gssapi-keytab <quoted_string>;
317               tls-port <integer>;
318               transfer-format ( many-answers | one-answer );
319               transfer-message-size <integer>;
320               transfer-source ( <ipv4_address> | * );
321               transfer-source-v6 ( <ipv6_address> | * );
322               transfers-in <integer>;
323               transfers-out <integer>;
324               transfers-per-ns <integer>;
325               trust-anchor-telemetry <boolean>; // experimental
326               try-tcp-refresh <boolean>;
327               udp-receive-buffer <integer>;
328               udp-send-buffer <integer>;
329               update-check-ksk <boolean>; // obsolete
330               update-quota <integer>;
331               use-v4-udp-ports { <portrange>; ... }; // deprecated
332               use-v6-udp-ports { <portrange>; ... }; // deprecated
333               v6-bias <integer>;
334               validate-except { <string>; ... };
335               version ( <quoted_string> | none );
336               zero-no-soa-ttl <boolean>;
337               zero-no-soa-ttl-cache <boolean>;
338               zone-statistics ( full | terse | none | <boolean> );
339          };
340
341          parental-agents <string> [ port <integer> ] [ source ( <ipv4_address> | * ) ] [ source-v6 ( <ipv6_address> | * ) ] { ( <remote-servers> | <ipv4_address> [ port <integer> ] | <ipv6_address> [ port <integer> ] ) [ key <string> ] [ tls <string> ]; ... }; // may occur multiple times
342
343          plugin ( query ) <string> [ { <unspecified-text> } ]; // may occur multiple times
344
345          primaries <string> [ port <integer> ] [ source ( <ipv4_address> | * ) ] [ source-v6 ( <ipv6_address> | * ) ] { ( <remote-servers> | <ipv4_address> [ port <integer> ] | <ipv6_address> [ port <integer> ] ) [ key <string> ] [ tls <string> ]; ... }; // may occur multiple times
346
347          server <netprefix> {
348               bogus <boolean>;
349               edns <boolean>;
350               edns-udp-size <integer>;
351               edns-version <integer>;
352               keys <server_key>;
353               max-udp-size <integer>;
354               notify-source ( <ipv4_address> | * );
355               notify-source-v6 ( <ipv6_address> | * );
356               padding <integer>;
357               provide-ixfr <boolean>;
358               query-source [ address ] ( <ipv4_address> | * );
359               query-source-v6 [ address ] ( <ipv6_address> | * );
360               request-expire <boolean>;
361               request-ixfr <boolean>;
362               request-nsid <boolean>;
363               require-cookie <boolean>;
364               send-cookie <boolean>;
365               tcp-keepalive <boolean>;
366               tcp-only <boolean>;
367               transfer-format ( many-answers | one-answer );
368               transfer-source ( <ipv4_address> | * );
369               transfer-source-v6 ( <ipv6_address> | * );
370               transfers <integer>;
371          }; // may occur multiple times
372
373          statistics-channels {
374               inet ( <ipv4_address> | <ipv6_address> | * ) [ port ( <integer> | * ) ] [ allow { <address_match_element>; ... } ]; // may occur multiple times
375          }; // may occur multiple times
376
377          tls <string> {
378               ca-file <quoted_string>;
379               cert-file <quoted_string>;
380               ciphers <string>;
381               dhparam-file <quoted_string>;
382               key-file <quoted_string>;
383               prefer-server-ciphers <boolean>;
384               protocols { <string>; ... };
385               remote-hostname <quoted_string>;
386               session-tickets <boolean>;
387          }; // may occur multiple times
388
389          trust-anchors { <string> ( static-key | initial-key | static-ds | initial-ds ) <integer> <integer> <integer> <quoted_string>; ... }; // may occur multiple times
390
391          trusted-keys { <string> <integer> <integer> <integer> <quoted_string>; ... }; // may occur multiple times, deprecated
392
393          view <string> [ <class> ] {
394               allow-new-zones <boolean>;
395               allow-notify { <address_match_element>; ... };
396               allow-query { <address_match_element>; ... };
397               allow-query-cache { <address_match_element>; ... };
398               allow-query-cache-on { <address_match_element>; ... };
399               allow-query-on { <address_match_element>; ... };
400               allow-recursion { <address_match_element>; ... };
401               allow-recursion-on { <address_match_element>; ... };
402               allow-transfer [ port <integer> ] [ transport <string> ] { <address_match_element>; ... };
403               allow-update { <address_match_element>; ... };
404               allow-update-forwarding { <address_match_element>; ... };
405               also-notify [ port <integer> ] [ source ( <ipv4_address> | * ) ] [ source-v6 ( <ipv6_address> | * ) ] { ( <remote-servers> | <ipv4_address> [ port <integer> ] | <ipv6_address> [ port <integer> ] ) [ key <string> ] [ tls <string> ]; ... };
406               attach-cache <string>;
407               auth-nxdomain <boolean>;
408               catalog-zones { zone <string> [ default-primaries [ port <integer> ] [ source ( <ipv4_address> | * ) ] [ source-v6 ( <ipv6_address> | * ) ] { ( <remote-servers> | <ipv4_address> [ port <integer> ] | <ipv6_address> [ port <integer> ] ) [ key <string> ] [ tls <string> ]; ... } ] [ zone-directory <quoted_string> ] [ in-memory <boolean> ] [ min-update-interval <duration> ]; ... };
409               check-dup-records ( fail | warn | ignore );
410               check-integrity <boolean>;
411               check-mx ( fail | warn | ignore );
412               check-mx-cname ( fail | warn | ignore );
413               check-names ( primary | master | secondary | slave | response ) ( fail | warn | ignore ); // may occur multiple times
414               check-sibling <boolean>;
415               check-spf ( warn | ignore );
416               check-srv-cname ( fail | warn | ignore );
417               check-svcb <boolean>;
418               check-wildcard <boolean>;
419               clients-per-query <integer>;
420               deny-answer-addresses { <address_match_element>; ... } [ except-from { <string>; ... } ];
421               deny-answer-aliases { <string>; ... } [ except-from { <string>; ... } ];
422               dialup ( notify | notify-passive | passive | refresh | <boolean> ); // deprecated
423               disable-algorithms <string> { <string>; ... }; // may occur multiple times
424               disable-ds-digests <string> { <string>; ... }; // may occur multiple times
425               disable-empty-zone <string>; // may occur multiple times
426               dlz <string> {
427                    database <string>;
428                    search <boolean>;
429               }; // may occur multiple times
430               dns64 <netprefix> {
431                    break-dnssec <boolean>;
432                    clients { <address_match_element>; ... };
433                    exclude { <address_match_element>; ... };
434                    mapped { <address_match_element>; ... };
435                    recursive-only <boolean>;
436                    suffix <ipv6_address>;
437               }; // may occur multiple times
438               dns64-contact <string>;
439               dns64-server <string>;
440               dnskey-sig-validity <integer>; // obsolete
441               dnsrps-enable <boolean>; // not configured
442               dnsrps-options { <unspecified-text> }; // not configured
443               dnssec-accept-expired <boolean>;
444               dnssec-dnskey-kskonly <boolean>; // obsolete
445               dnssec-loadkeys-interval <integer>;
446               dnssec-must-be-secure <string> <boolean>; // may occur multiple times, deprecated
447               dnssec-policy <string>;
448               dnssec-secure-to-insecure <boolean>; // obsolete
449               dnssec-update-mode ( maintain | no-resign ); // obsolete
450               dnssec-validation ( yes | no | auto );
451               dnstap { ( all | auth | client | forwarder | resolver | update ) [ ( query | response ) ]; ... }; // not configured
452               dual-stack-servers [ port <integer> ] { ( <quoted_string> [ port <integer> ] | <ipv4_address> [ port <integer> ] | <ipv6_address> [ port <integer> ] ); ... };
453               dyndb <string> <quoted_string> { <unspecified-text> }; // may occur multiple times
454               edns-udp-size <integer>;
455               empty-contact <string>;
456               empty-server <string>;
457               empty-zones-enable <boolean>;
458               fetch-quota-params <integer> <fixedpoint> <fixedpoint> <fixedpoint>;
459               fetches-per-server <integer> [ ( drop | fail ) ];
460               fetches-per-zone <integer> [ ( drop | fail ) ];
461               forward ( first | only );
462               forwarders [ port <integer> ] [ tls <string> ] { ( <ipv4_address> | <ipv6_address> ) [ port <integer> ] [ tls <string> ]; ... };
463               ipv4only-contact <string>;
464               ipv4only-enable <boolean>;
465               ipv4only-server <string>;
466               ixfr-from-differences ( primary | master | secondary | slave | <boolean> );
467               key <string> {
468                    algorithm <string>;
469                    secret <string>;
470               }; // may occur multiple times
471               key-directory <quoted_string>;
472               lame-ttl <duration>;
473               lmdb-mapsize <sizeval>;
474               managed-keys { <string> ( static-key | initial-key | static-ds | initial-ds ) <integer> <integer> <integer> <quoted_string>; ... }; // may occur multiple times, deprecated
475               masterfile-format ( raw | text );
476               masterfile-style ( full | relative );
477               match-clients { <address_match_element>; ... };
478               match-destinations { <address_match_element>; ... };
479               match-recursive-only <boolean>;
480               max-cache-size ( default | unlimited | <sizeval> | <percentage> );
481               max-cache-ttl <duration>;
482               max-clients-per-query <integer>;
483               max-ixfr-ratio ( unlimited | <percentage> );
484               max-journal-size ( default | unlimited | <sizeval> );
485               max-ncache-ttl <duration>;
486               max-records <integer>;
487               max-recursion-depth <integer>;
488               max-recursion-queries <integer>;
489               max-refresh-time <integer>;
490               max-retry-time <integer>;
491               max-stale-ttl <duration>;
492               max-transfer-idle-in <integer>;
493               max-transfer-idle-out <integer>;
494               max-transfer-time-in <integer>;
495               max-transfer-time-out <integer>;
496               max-udp-size <integer>;
497               max-zone-ttl ( unlimited | <duration> ); // deprecated
498               message-compression <boolean>;
499               min-cache-ttl <duration>;
500               min-ncache-ttl <duration>;
501               min-refresh-time <integer>;
502               min-retry-time <integer>;
503               minimal-any <boolean>;
504               minimal-responses ( no-auth | no-auth-recursive | <boolean> );
505               multi-master <boolean>;
506               new-zones-directory <quoted_string>;
507               no-case-compress { <address_match_element>; ... };
508               nocookie-udp-size <integer>;
509               notify ( explicit | master-only | primary-only | <boolean> );
510               notify-delay <integer>;
511               notify-source ( <ipv4_address> | * );
512               notify-source-v6 ( <ipv6_address> | * );
513               notify-to-soa <boolean>;
514               nsec3-test-zone <boolean>; // test only
515               nta-lifetime <duration>;
516               nta-recheck <duration>;
517               nxdomain-redirect <string>;
518               parental-source ( <ipv4_address> | * );
519               parental-source-v6 ( <ipv6_address> | * );
520               plugin ( query ) <string> [ { <unspecified-text> } ]; // may occur multiple times
521               preferred-glue <string>;
522               prefetch <integer> [ <integer> ];
523               provide-ixfr <boolean>;
524               qname-minimization ( strict | relaxed | disabled | off );
525               query-source [ address ] ( <ipv4_address> | * );
526               query-source-v6 [ address ] ( <ipv6_address> | * );
527               rate-limit {
528                    all-per-second <integer>;
529                    errors-per-second <integer>;
530                    exempt-clients { <address_match_element>; ... };
531                    ipv4-prefix-length <integer>;
532                    ipv6-prefix-length <integer>;
533                    log-only <boolean>;
534                    max-table-size <integer>;
535                    min-table-size <integer>;
536                    nodata-per-second <integer>;
537                    nxdomains-per-second <integer>;
538                    qps-scale <integer>;
539                    referrals-per-second <integer>;
540                    responses-per-second <integer>;
541                    slip <integer>;
542                    window <integer>;
543               };
544               recursion <boolean>;
545               request-expire <boolean>;
546               request-ixfr <boolean>;
547               request-nsid <boolean>;
548               require-server-cookie <boolean>;
549               resolver-nonbackoff-tries <integer>;
550               resolver-query-timeout <integer>;
551               resolver-retry-interval <integer>;
552               resolver-use-dns64 <boolean>;
553               response-padding { <address_match_element>; ... } block-size <integer>;
554               response-policy { zone <string> [ add-soa <boolean> ] [ log <boolean> ] [ max-policy-ttl <duration> ] [ min-update-interval <duration> ] [ policy ( cname | disabled | drop | given | no-op | nodata | nxdomain | passthru | tcp-only <quoted_string> ) ] [ recursive-only <boolean> ] [ nsip-enable <boolean> ] [ nsdname-enable <boolean> ] [ ede <string> ]; ... } [ add-soa <boolean> ] [ break-dnssec <boolean> ] [ max-policy-ttl <duration> ] [ min-update-interval <duration> ] [ min-ns-dots <integer> ] [ nsip-wait-recurse <boolean> ] [ nsdname-wait-recurse <boolean> ] [ qname-wait-recurse <boolean> ] [ recursive-only <boolean> ] [ nsip-enable <boolean> ] [ nsdname-enable <boolean> ] [ dnsrps-enable <boolean> ] [ dnsrps-options { <unspecified-text> } ];
555               root-key-sentinel <boolean>;
556               rrset-order { [ class <string> ] [ type <string> ] [ name <quoted_string> ] <string> <string>; ... };
557               send-cookie <boolean>;
558               serial-update-method ( date | increment | unixtime );
559               server <netprefix> {
560                    bogus <boolean>;
561                    edns <boolean>;
562                    edns-udp-size <integer>;
563                    edns-version <integer>;
564                    keys <server_key>;
565                    max-udp-size <integer>;
566                    notify-source ( <ipv4_address> | * );
567                    notify-source-v6 ( <ipv6_address> | * );
568                    padding <integer>;
569                    provide-ixfr <boolean>;
570                    query-source [ address ] ( <ipv4_address> | * );
571                    query-source-v6 [ address ] ( <ipv6_address> | * );
572                    request-expire <boolean>;
573                    request-ixfr <boolean>;
574                    request-nsid <boolean>;
575                    require-cookie <boolean>;
576                    send-cookie <boolean>;
577                    tcp-keepalive <boolean>;
578                    tcp-only <boolean>;
579                    transfer-format ( many-answers | one-answer );
580                    transfer-source ( <ipv4_address> | * );
581                    transfer-source-v6 ( <ipv6_address> | * );
582                    transfers <integer>;
583               }; // may occur multiple times
584               servfail-ttl <duration>;
585               sig-signing-nodes <integer>;
586               sig-signing-signatures <integer>;
587               sig-signing-type <integer>;
588               sig-validity-interval <integer> [ <integer> ]; // obsolete
589               sortlist { <address_match_element>; ... };
590               stale-answer-client-timeout ( disabled | off | <integer> );
591               stale-answer-enable <boolean>;
592               stale-answer-ttl <duration>;
593               stale-cache-enable <boolean>;
594               stale-refresh-time <duration>;
595               synth-from-dnssec <boolean>;
596               transfer-format ( many-answers | one-answer );
597               transfer-source ( <ipv4_address> | * );
598               transfer-source-v6 ( <ipv6_address> | * );
599               trust-anchor-telemetry <boolean>; // experimental
600               trust-anchors { <string> ( static-key | initial-key | static-ds | initial-ds ) <integer> <integer> <integer> <quoted_string>; ... }; // may occur multiple times
601               trusted-keys { <string> <integer> <integer> <integer> <quoted_string>; ... }; // may occur multiple times, deprecated
602               try-tcp-refresh <boolean>;
603               update-check-ksk <boolean>; // obsolete
604               v6-bias <integer>;
605               validate-except { <string>; ... };
606               zero-no-soa-ttl <boolean>;
607               zero-no-soa-ttl-cache <boolean>;
608               zone-statistics ( full | terse | none | <boolean> );
609          }; // may occur multiple times
610
611
612
613       Any of these zone statements can also be set inside the view statement.
614
615          zone <string> [ <class> ] {
616               type primary;
617               allow-query { <address_match_element>; ... };
618               allow-query-on { <address_match_element>; ... };
619               allow-transfer [ port <integer> ] [ transport <string> ] { <address_match_element>; ... };
620               allow-update { <address_match_element>; ... };
621               also-notify [ port <integer> ] [ source ( <ipv4_address> | * ) ] [ source-v6 ( <ipv6_address> | * ) ] { ( <remote-servers> | <ipv4_address> [ port <integer> ] | <ipv6_address> [ port <integer> ] ) [ key <string> ] [ tls <string> ]; ... };
622               check-dup-records ( fail | warn | ignore );
623               check-integrity <boolean>;
624               check-mx ( fail | warn | ignore );
625               check-mx-cname ( fail | warn | ignore );
626               check-names ( fail | warn | ignore );
627               check-sibling <boolean>;
628               check-spf ( warn | ignore );
629               check-srv-cname ( fail | warn | ignore );
630               check-svcb <boolean>;
631               check-wildcard <boolean>;
632               checkds ( explicit | <boolean> );
633               database <string>;
634               dialup ( notify | notify-passive | passive | refresh | <boolean> ); // deprecated
635               dlz <string>;
636               dnskey-sig-validity <integer>; // obsolete
637               dnssec-dnskey-kskonly <boolean>; // obsolete
638               dnssec-loadkeys-interval <integer>;
639               dnssec-policy <string>;
640               dnssec-secure-to-insecure <boolean>; // obsolete
641               dnssec-update-mode ( maintain | no-resign ); // obsolete
642               file <quoted_string>;
643               forward ( first | only );
644               forwarders [ port <integer> ] [ tls <string> ] { ( <ipv4_address> | <ipv6_address> ) [ port <integer> ] [ tls <string> ]; ... };
645               inline-signing <boolean>;
646               ixfr-from-differences <boolean>;
647               journal <quoted_string>;
648               key-directory <quoted_string>;
649               masterfile-format ( raw | text );
650               masterfile-style ( full | relative );
651               max-ixfr-ratio ( unlimited | <percentage> );
652               max-journal-size ( default | unlimited | <sizeval> );
653               max-records <integer>;
654               max-transfer-idle-out <integer>;
655               max-transfer-time-out <integer>;
656               max-zone-ttl ( unlimited | <duration> ); // deprecated
657               notify ( explicit | master-only | primary-only | <boolean> );
658               notify-delay <integer>;
659               notify-source ( <ipv4_address> | * );
660               notify-source-v6 ( <ipv6_address> | * );
661               notify-to-soa <boolean>;
662               nsec3-test-zone <boolean>; // test only
663               parental-agents [ port <integer> ] [ source ( <ipv4_address> | * ) ] [ source-v6 ( <ipv6_address> | * ) ] { ( <remote-servers> | <ipv4_address> [ port <integer> ] | <ipv6_address> [ port <integer> ] ) [ key <string> ] [ tls <string> ]; ... };
664               parental-source ( <ipv4_address> | * );
665               parental-source-v6 ( <ipv6_address> | * );
666               serial-update-method ( date | increment | unixtime );
667               sig-signing-nodes <integer>;
668               sig-signing-signatures <integer>;
669               sig-signing-type <integer>;
670               sig-validity-interval <integer> [ <integer> ]; // obsolete
671               update-check-ksk <boolean>; // obsolete
672               update-policy ( local | { ( deny | grant ) <string> ( 6to4-self | external | krb5-self | krb5-selfsub | krb5-subdomain | krb5-subdomain-self-rhs | ms-self | ms-selfsub | ms-subdomain | ms-subdomain-self-rhs | name | self | selfsub | selfwild | subdomain | tcp-self | wildcard | zonesub ) [ <string> ] <rrtypelist>; ... } );
673               zero-no-soa-ttl <boolean>;
674               zone-statistics ( full | terse | none | <boolean> );
675          };
676
677
678          zone <string> [ <class> ] {
679               type secondary;
680               allow-notify { <address_match_element>; ... };
681               allow-query { <address_match_element>; ... };
682               allow-query-on { <address_match_element>; ... };
683               allow-transfer [ port <integer> ] [ transport <string> ] { <address_match_element>; ... };
684               allow-update-forwarding { <address_match_element>; ... };
685               also-notify [ port <integer> ] [ source ( <ipv4_address> | * ) ] [ source-v6 ( <ipv6_address> | * ) ] { ( <remote-servers> | <ipv4_address> [ port <integer> ] | <ipv6_address> [ port <integer> ] ) [ key <string> ] [ tls <string> ]; ... };
686               check-names ( fail | warn | ignore );
687               checkds ( explicit | <boolean> );
688               database <string>;
689               dialup ( notify | notify-passive | passive | refresh | <boolean> ); // deprecated
690               dlz <string>;
691               dnskey-sig-validity <integer>; // obsolete
692               dnssec-dnskey-kskonly <boolean>; // obsolete
693               dnssec-loadkeys-interval <integer>;
694               dnssec-policy <string>;
695               dnssec-update-mode ( maintain | no-resign ); // obsolete
696               file <quoted_string>;
697               forward ( first | only );
698               forwarders [ port <integer> ] [ tls <string> ] { ( <ipv4_address> | <ipv6_address> ) [ port <integer> ] [ tls <string> ]; ... };
699               inline-signing <boolean>;
700               ixfr-from-differences <boolean>;
701               journal <quoted_string>;
702               key-directory <quoted_string>;
703               masterfile-format ( raw | text );
704               masterfile-style ( full | relative );
705               max-ixfr-ratio ( unlimited | <percentage> );
706               max-journal-size ( default | unlimited | <sizeval> );
707               max-records <integer>;
708               max-refresh-time <integer>;
709               max-retry-time <integer>;
710               max-transfer-idle-in <integer>;
711               max-transfer-idle-out <integer>;
712               max-transfer-time-in <integer>;
713               max-transfer-time-out <integer>;
714               min-refresh-time <integer>;
715               min-retry-time <integer>;
716               multi-master <boolean>;
717               notify ( explicit | master-only | primary-only | <boolean> );
718               notify-delay <integer>;
719               notify-source ( <ipv4_address> | * );
720               notify-source-v6 ( <ipv6_address> | * );
721               notify-to-soa <boolean>;
722               nsec3-test-zone <boolean>; // test only
723               parental-agents [ port <integer> ] [ source ( <ipv4_address> | * ) ] [ source-v6 ( <ipv6_address> | * ) ] { ( <remote-servers> | <ipv4_address> [ port <integer> ] | <ipv6_address> [ port <integer> ] ) [ key <string> ] [ tls <string> ]; ... };
724               parental-source ( <ipv4_address> | * );
725               parental-source-v6 ( <ipv6_address> | * );
726               primaries [ port <integer> ] [ source ( <ipv4_address> | * ) ] [ source-v6 ( <ipv6_address> | * ) ] { ( <remote-servers> | <ipv4_address> [ port <integer> ] | <ipv6_address> [ port <integer> ] ) [ key <string> ] [ tls <string> ]; ... };
727               request-expire <boolean>;
728               request-ixfr <boolean>;
729               sig-signing-nodes <integer>;
730               sig-signing-signatures <integer>;
731               sig-signing-type <integer>;
732               sig-validity-interval <integer> [ <integer> ]; // obsolete
733               transfer-source ( <ipv4_address> | * );
734               transfer-source-v6 ( <ipv6_address> | * );
735               try-tcp-refresh <boolean>;
736               update-check-ksk <boolean>; // obsolete
737               zero-no-soa-ttl <boolean>;
738               zone-statistics ( full | terse | none | <boolean> );
739          };
740
741
742          zone <string> [ <class> ] {
743               type mirror;
744               allow-notify { <address_match_element>; ... };
745               allow-query { <address_match_element>; ... };
746               allow-query-on { <address_match_element>; ... };
747               allow-transfer [ port <integer> ] [ transport <string> ] { <address_match_element>; ... };
748               allow-update-forwarding { <address_match_element>; ... };
749               also-notify [ port <integer> ] [ source ( <ipv4_address> | * ) ] [ source-v6 ( <ipv6_address> | * ) ] { ( <remote-servers> | <ipv4_address> [ port <integer> ] | <ipv6_address> [ port <integer> ] ) [ key <string> ] [ tls <string> ]; ... };
750               check-names ( fail | warn | ignore );
751               database <string>;
752               file <quoted_string>;
753               ixfr-from-differences <boolean>;
754               journal <quoted_string>;
755               masterfile-format ( raw | text );
756               masterfile-style ( full | relative );
757               max-ixfr-ratio ( unlimited | <percentage> );
758               max-journal-size ( default | unlimited | <sizeval> );
759               max-records <integer>;
760               max-refresh-time <integer>;
761               max-retry-time <integer>;
762               max-transfer-idle-in <integer>;
763               max-transfer-idle-out <integer>;
764               max-transfer-time-in <integer>;
765               max-transfer-time-out <integer>;
766               min-refresh-time <integer>;
767               min-retry-time <integer>;
768               multi-master <boolean>;
769               notify ( explicit | master-only | primary-only | <boolean> );
770               notify-delay <integer>;
771               notify-source ( <ipv4_address> | * );
772               notify-source-v6 ( <ipv6_address> | * );
773               primaries [ port <integer> ] [ source ( <ipv4_address> | * ) ] [ source-v6 ( <ipv6_address> | * ) ] { ( <remote-servers> | <ipv4_address> [ port <integer> ] | <ipv6_address> [ port <integer> ] ) [ key <string> ] [ tls <string> ]; ... };
774               request-expire <boolean>;
775               request-ixfr <boolean>;
776               transfer-source ( <ipv4_address> | * );
777               transfer-source-v6 ( <ipv6_address> | * );
778               try-tcp-refresh <boolean>;
779               zero-no-soa-ttl <boolean>;
780               zone-statistics ( full | terse | none | <boolean> );
781          };
782
783
784          zone <string> [ <class> ] {
785               type forward;
786               forward ( first | only );
787               forwarders [ port <integer> ] [ tls <string> ] { ( <ipv4_address> | <ipv6_address> ) [ port <integer> ] [ tls <string> ]; ... };
788          };
789
790
791          zone <string> [ <class> ] {
792               type hint;
793               check-names ( fail | warn | ignore );
794               file <quoted_string>;
795          };
796
797
798          zone <string> [ <class> ] {
799               type redirect;
800               allow-query { <address_match_element>; ... };
801               allow-query-on { <address_match_element>; ... };
802               dlz <string>;
803               file <quoted_string>;
804               masterfile-format ( raw | text );
805               masterfile-style ( full | relative );
806               max-records <integer>;
807               max-zone-ttl ( unlimited | <duration> ); // deprecated
808               primaries [ port <integer> ] [ source ( <ipv4_address> | * ) ] [ source-v6 ( <ipv6_address> | * ) ] { ( <remote-servers> | <ipv4_address> [ port <integer> ] | <ipv6_address> [ port <integer> ] ) [ key <string> ] [ tls <string> ]; ... };
809               zone-statistics ( full | terse | none | <boolean> );
810          };
811
812
813          zone <string> [ <class> ] {
814               type static-stub;
815               allow-query { <address_match_element>; ... };
816               allow-query-on { <address_match_element>; ... };
817               forward ( first | only );
818               forwarders [ port <integer> ] [ tls <string> ] { ( <ipv4_address> | <ipv6_address> ) [ port <integer> ] [ tls <string> ]; ... };
819               max-records <integer>;
820               server-addresses { ( <ipv4_address> | <ipv6_address> ); ... };
821               server-names { <string>; ... };
822               zone-statistics ( full | terse | none | <boolean> );
823          };
824
825
826          zone <string> [ <class> ] {
827               type stub;
828               allow-query { <address_match_element>; ... };
829               allow-query-on { <address_match_element>; ... };
830               check-names ( fail | warn | ignore );
831               database <string>;
832               dialup ( notify | notify-passive | passive | refresh | <boolean> ); // deprecated
833               file <quoted_string>;
834               forward ( first | only );
835               forwarders [ port <integer> ] [ tls <string> ] { ( <ipv4_address> | <ipv6_address> ) [ port <integer> ] [ tls <string> ]; ... };
836               masterfile-format ( raw | text );
837               masterfile-style ( full | relative );
838               max-records <integer>;
839               max-refresh-time <integer>;
840               max-retry-time <integer>;
841               max-transfer-idle-in <integer>;
842               max-transfer-time-in <integer>;
843               min-refresh-time <integer>;
844               min-retry-time <integer>;
845               multi-master <boolean>;
846               primaries [ port <integer> ] [ source ( <ipv4_address> | * ) ] [ source-v6 ( <ipv6_address> | * ) ] { ( <remote-servers> | <ipv4_address> [ port <integer> ] | <ipv6_address> [ port <integer> ] ) [ key <string> ] [ tls <string> ]; ... };
847               transfer-source ( <ipv4_address> | * );
848               transfer-source-v6 ( <ipv6_address> | * );
849               zone-statistics ( full | terse | none | <boolean> );
850          };
851
852
853          zone <string> [ <class> ] {
854               in-view <string>;
855          };
856
857

FILES

859       /etc/named.conf
860

SEE ALSO

862       named(8), named-checkconf(8), rndc(8), rndc-confgen(8), tsig-keygen(8),
863       BIND 9 Administrator Reference Manual.
864

AUTHOR

866       Internet Systems Consortium
867
869       2023, Internet Systems Consortium
870
871
872
873
8749.19.18                                                          NAMED.CONF(5)
Impressum