bind配置文件语法

2023-05-16

acl:定义IP地址表的名字,用于访问控制等


语法:
acl acl-name {     address_match_list;
}  

controls:宣告一个用于rndc工具控制通道

语法:
controls {
   [ inet ( ip_addr | * ) [ port ip_port ] allow {  address_match_list  }
                keys { key_list }; ]
   [ inet ...; ]
   [ unix path perm number owner number group number keys { key_list }; ]
   [ unix ...; ]
};

include:包含一个文件

语法:
include filename;

key:定义key信息用于验证和TSIG验证

语法:
key key_id {
    algorithm string;
    secret string;
};

logging:定义bing服务的日志, channel -> categroy.

语法:
logging {
   [ channel channel_name {
     ( file path name
         [ versions ( number | unlimited ) ]
         [ size size spec ]
       | syslog syslog_facility
       | stderr
       | null );
     [ severity (critical | error | warning | notice |
                 info | debug [ level ] | dynamic ); ]
     [ print-category yes or no; ]
     [ print-severity yes or no; ]
     [ print-time yes or no; ]
   }; ]
   [ category category_name {
     channel_name ; [ channel_name ; ... ]
   }; ]
   ...
};

category 参数:     default: 默认分类,没有分类的日志都使用这个分类的配置.     general: 没有分类的日志都记录在此分类中.     database: 服务器内部使用存储zone和缓存数据.     security: 允许/拒绝的请求.     config: 配置文件分析和处理.     resolver: DNS解析,被dns缓存服务器进行递归查询.     xfer-in: 接收区域传输.     xfer-out: 发送区域传输.     notify: NOTIFY协议.     client: 客户端请求进程.     unmatched: 未匹配的查询?     network: 网络操作.     update: 动态更新.     update-security: 允许/拒绝更新请求.     queries: 客户端队列日志.     dispatch: 数据包传送日志.     dnssec: DNSSEC和TSIG协议处理.     lame-servers: 远端的配置错误的服务器发送的请求.     delegation-only: NXDOMAIN的结果将被强制定义到delegation-only区域

lwres:定义named为一个轻量级的解析进程

语法:
lwres {
    [ listen-on { ip_addr [port ip_port] ; [ ip_addr [port ip_port] ; ... ] }; ]
    [ view view_name; ]
    [ search { domain_name ; [ domain_name ; ... ] }; ]
    [ ndots number; ]
};

masters:定义主域服务器列表

语法:
masters name [port ip_port] { ( masters_list | ip_addr [port ip_port] [key key] ) ; [...] };

options:设定全局配置选项和默认值

语法:
options {
    [ version version_string; ]
    [ hostname hostname_string; ]
    [ server-id server_id_string; ]
    [ directory path_name; ]
    [ key-directory path_name; ]
    [ named-xfer path_name; ]
    [ tkey-domain domainname; ]
    [ tkey-dhkey key_name key_tag; ]
    [ cache-file path_name; ]
    [ dump-file path_name; ]
    [ memstatistics-file path_name; ]
    [ pid-file path_name; ]
    [ statistics-file path_name; ]
    [ zone-statistics yes_or_no; ]
    [ auth-nxdomain yes_or_no; ]
    [ deallocate-on-exit yes_or_no; ]
    [ dialup dialup_option; ]
    [ fake-iquery yes_or_no; ]
    [ fetch-glue yes_or_no; ]
    [ flush-zones-on-shutdown yes_or_no; ]
    [ has-old-clients yes_or_no; ]
    [ host-statistics yes_or_no; ]
    [ host-statistics-max number; ]
    [ minimal-responses yes_or_no; ]
    [ multiple-cnames yes_or_no; ]
    [ notify yes_or_no | explicit | master-only; ]
    [ recursion yes_or_no; ]
    [ rfc2308-type1 yes_or_no; ]
    [ use-id-pool yes_or_no; ]
    [ maintain-ixfr-base yes_or_no; ]
    [ dnssec-enable yes_or_no; ]
    [ dnssec-validation yes_or_no; ]
    [ dnssec-lookaside domain trust-anchor domain; ]
    [ dnssec-must-be-secure domain yes_or_no; ]
    [ dnssec-accept-expired yes_or_no; ]
    [ forward ( only | first ); ]
    [ forwarders { [ ip_addr [port ip_port] ; ... ] }; ]
    [ dual-stack-servers [port ip_port] {
        ( domain_name [port ip_port] |
          ip_addr [port ip_port] ) ;
        ... }; ]
    [ check-names ( master | slave | response )
        ( warn | fail | ignore ); ]
    [ check-mx ( warn | fail | ignore ); ]
    [ check-wildcard yes_or_no; ]
    [ check-integrity yes_or_no; ]
    [ check-mx-cname ( warn | fail | ignore ); ]
    [ check-srv-cname ( warn | fail | ignore ); ]
    [ check-sibling yes_or_no; ]
    [ allow-notify { address_match_list }; ]
    [ allow-query { address_match_list }; ]
    [ allow-query-cache { address_match_list }; ]
    [ allow-transfer { address_match_list }; ]
    [ allow-recursion { address_match_list }; ]
    [ allow-update { address_match_list }; ]
    [ allow-update-forwarding { address_match_list }; ]
    [ update-check-ksk yes_or_no; ]
    [ allow-v6-synthesis { address_match_list }; ]
    [ blackhole { address_match_list }; ]
    [ avoid-v4-udp-ports { port_list }; ]
    [ avoid-v6-udp-ports { port_list }; ]
    [ listen-on [ port ip_port ] { address_match_list }; ]
    [ listen-on-v6 [ port ip_port ] { address_match_list }; ]
    [ query-source ( ( ip4_addr | * )
        [ port ( ip_port | * ) ] |
        [ address ( ip4_addr | * ) ]
        [ port ( ip_port | * ) ] ) ; ]
    [ query-source-v6 ( ( ip6_addr | * )
        [ port ( ip_port | * ) ] |
        [ address ( ip6_addr | * ) ]
        [ port ( ip_port | * ) ] ) ; ]
    [ max-transfer-time-in number; ]
    [ max-transfer-time-out number; ]
    [ max-transfer-idle-in number; ]
    [ max-transfer-idle-out number; ]
    [ tcp-clients number; ]
    [ recursive-clients number; ]
    [ serial-query-rate number; ]
    [ serial-queries number; ]
    [ tcp-listen-queue number; ]
    [ transfer-format ( one-answer | many-answers ); ]
    [ transfers-in  number; ]
    [ transfers-out number; ]
    [ transfers-per-ns number; ]
    [ transfer-source (ip4_addr | *) [port ip_port] ; ]
    [ transfer-source-v6 (ip6_addr | *) [port ip_port] ; ]
    [ alt-transfer-source (ip4_addr | *) [port ip_port] ; ]
    [ alt-transfer-source-v6 (ip6_addr | *) [port ip_port] ; ]
    [ use-alt-transfer-source yes_or_no; ]
    [ notify-source (ip4_addr | *) [port ip_port] ; ]
    [ notify-source-v6 (ip6_addr | *) [port ip_port] ; ]
    [ also-notify { ip_addr [port ip_port] ; [ ip_addr [port ip_port] ; ... ] }; ]
    [ max-ixfr-log-size number; ]
    [ max-journal-size size_spec; ]
    [ coresize size_spec ; ]
    [ datasize size_spec ; ]
    [ files size_spec ; ]
    [ stacksize size_spec ; ]
    [ cleaning-interval number; ]
    [ heartbeat-interval number; ]
    [ interface-interval number; ]
    [ statistics-interval number; ]
    [ topology { address_match_list }];
    [ sortlist { address_match_list }];
    [ rrset-order { order_spec ; [ order_spec ; ... ] ] };
    [ lame-ttl number; ]
    [ max-ncache-ttl number; ]
    [ max-cache-ttl number; ]
    [ sig-validity-interval number ; ]
    [ min-roots number; ]
    [ use-ixfr yes_or_no ; ]
    [ provide-ixfr yes_or_no; ]
    [ request-ixfr yes_or_no; ]
    [ treat-cr-as-space yes_or_no ; ]
    [ min-refresh-time number ; ]
    [ max-refresh-time number ; ]
    [ min-retry-time number ; ]
    [ max-retry-time number ; ]
    [ port ip_port; ]
    [ additional-from-auth yes_or_no ; ]
    [ additional-from-cache yes_or_no ; ]
    [ random-device path_name ; ]
    [ max-cache-size size_spec ; ]
    [ match-mapped-addresses yes_or_no; ]
    [ preferred-glue ( A | AAAA | NONE ); ]
    [ edns-udp-size number; ]
    [ max-udp-size number; ]
    [ root-delegation-only [ exclude { namelist } ] ; ]
    [ querylog yes_or_no ; ]
    [ disable-algorithms domain { algorithm; [ algorithm; ] }; ]
    [ acache-enable yes_or_no ; ]
    [ acache-cleaning-interval number; ]
    [ max-acache-size size_spec ; ]
    [ clients-per-query number ; ]
    [ max-clients-per-query number ; ]
    [ masterfile-format (text|raw) ; ]
    [ empty-server name ; ]
    [ empty-contact name ; ]
    [ empty-zones-enable yes_or_no ; ]
    [ disable-empty-zone zone_name ; ]
    [ zero-no-soa-ttl yes_or_no ; ]
    [ zero-no-soa-ttl-cache yes_or_no ; ]
};

参数(Options):
directory: 服务器的工作目录.
key-directory: 保存密钥的目录.
named-xfer: 已经废弃,bind 8中定义named-xfer命令的路径.
tkey-domain: ...
tkey-dhkey: dhkey用于服务器生成dh模式的客户端共享的tkey,服务器必须加载公钥和私钥从工作目录的文件中.
cache-file: 仅为测试,没用.
dump-file: 当执行rndc dumpdb时服务器dump文件的路径.
memstatistics-file: 默认为named.memestats,当退出的服务的时候将服务器的统计信息写到文件中.
pid-file: 服务器记录进程ID的文件路径.
statictics-file: 执行rndc stats将服务器的统计信息写入文件,默认为named.stats
port: 服务器用于DNS协议的UDP/TCP端口号,默认为53.
random-device: entropy(平均信息量?)主要用于DNSSEC操作,像tkey传输,签署域的动态更新,默认为/dev/random,这个选项主要用于当服务器启动的时候初始化配置,reload将忽略这个选项.
preferred-glue: 优先胶? 优先相应的type list
root-delegation-only: 在根区域打开delegation-only的强制解析,并对exclude列表中的根域排除强制解析.
disable-algorithms: 对域禁用特定的DNSSEC算法,可以用多个,
dnssec-lookaside: 当设置dnssec-lookaside,它为验证器提供另外一个能在网络区域的顶层验证DNSKEY的方法.
dnssec-must-be-secure: 指定验证等级,如果选yes,named只接收安全的回应,如果选no,一般的dnssec验证将允许接收不安全的回应.

Boolean 参数:
auth-nxdomain: 如果选yes,AA字节一直设置为NXDOMAIN的回复,即使服务器不是真正可信赖的.默认为no,这是个从bind8后的改变,如果使用老的DNS软件,需要设置为yes.
deallocate-on-exit: 用于bind8在退出的时候进行内存泄露检测,bind9忽略此项,始终做检查.
dialup: 默认为no,是通过拨号网络的方式进行域传输,通常在每个heartbeat-interval执行,通常会抑制一些网络维护流量,一般的notify设置不受影响.


dialup mode
normal refresh
heart-beat refresh
heart-beat notify


no (default)
yes
no
no


yes
no
yes
yes


notify
yes
no
yes


refresh
no
yes
no


passive
no
no
no


notify-passive
no
no
yes fake-iquery: BIND8中模仿已经淘汰的IQUERY查询,BIND9中从不进行IQUERY模拟. fetch-glue: 选项已经废弃. flush-zone-on-shutdown: 当服务收到退出的信号,清除或者不清除未进行的域的写操作.默认为no has-old-client: 这个选项在BIND8中执行有错误,BIND9忽略. host-statistics: BIND8中保持name服务器相互作用的信息,BIND9无用. maintain-ixfr-base: 已经废弃. minimal-responses: 如果启用,产生响应的服务器只增加记录到权限和附加数据片中.此项能改善服务器性能. multiple-cname: 这个选项在BIND8中允许域名有多个违反标准的CNAME记录,从BIND9.2开始严格执行CNAME规则在主域文件和动态更新中. notify: 默认为yes,当服务器的一个域授权发生改变,将发送DNS NOTIFY信息给域NS记录的服务器列表,和一些列在also-notify选项中的服务器.如果选master-only,信息只发给主域,如果是explicit,通知只发给also-notify的列表,no不发通知. recuision: 如果为yes,一个DNS的递归查询请求,服务器将必须做所有的尝试去应答查询,如果关闭递归并且服务器不知道答案,它将回复一个参考应答.默认为yes. rfc2308-type1: BIND9已经不支持. use-id-pool: 已经废弃. zone-statistics: 如果为yes,服务器将收集所有区域的统计数据,除非从域的配置中关闭.)这些信息将进入rndc stats,会被dump到statistics-file. use-ixfr: 已经废弃. provide-ixfr: 用于主域服务器,设置为yes将进行增量传输,no将不进行增量传输,全局默认为yes. request-ixfr: 用于从域服务器,设置为yes将向主域服务器发送增量传输的请求,no将不进行增量传输,全局默认为yes, treat-cs-as-space: 用于BIND8使服务器对待/r字符像对待空格或者tab,使DOS,NT下的区域文件容易加载到UNIX系统中.BIND9忽略此项. additional-from-auth,additional-from-cache: 这个选项控制权威服务器回答查询的时候的附加数据,或者当跟随CNAME和DNAME链. match-mapped-address: ipv4映射到ipv6的地址 ixfr-from-differences: 当启用,主服务器加载一个新版本的区域或者从服务器接收到一个新版本的使用非增量传输,将进行比较新的版本和先前的版本,两个版本不同的部分记录到区域的日志,改变的将传送给从服务器作为域的增量传输. multi-master: 通常被用于一个区域有多个地址不同的主服务器,如果启用,将不记录主服务器序号小于当前序号的服务.默认为no. dnssec-enable: 是否支持DNSSEC开关,默认为yes dnssec-validation: 是否进行DNSSEC确认开关,默认为no dnssec-accept-expired: 接受验证DNSSEC签名过期的信号,默认为no querylog: 确定querylog在服务启动时候启动,如果querylog没有指定,将使用日志分类中的queries定义的参数. check-names: 用于约束主区域文件中的字符集和从网络收到的DNS应答. check-mx: 检测MX记录指向的IP地址,默认为warn,其他的参数为,fail和ignore. check-wildcard: 默认yes,检测如果为非域末端的通配符则发警告. check-integrity: 检测主区域的完整性.默认为yes,这个检测MX和SRV记录指向的地址是否存在. check-mx-cname: 如果设置check-integrity,那么fail,warn,ignore MX记录指向CNAME的检测,默认为warn. check-srv-cname: 如果设置check-integrity,那么fail,warn,ignore SRV记录指向CNAME的检测,默认为warn. check-sibling: 当执行完完整性检测,进行 兄弟? 胶? 检测,默认为yes zero-no-soa-ttl: 当返回拒绝响应的SOA查询,在授权节中设置SOA记录的TTL值为0,默认为yes. zero-no-soa-ttl-cache: 缓存一个拒绝响应的SOA记录的TTL设置为0,默认为no update-check-ksk: 默认yes.当刷新RRSIGs跟随一个UPDATE请求到一个安全的区域,检测DNSSEC RR上的KSK标记来用于刷新RRSIG,此项被忽略如果非DNSSEC RRs有或者没有KSK,默认是yes 转发(Forward): forward: 这个选项仅在转发列表不为空的情况下有作用.如果为first,将先转发再本地查询,如果为only,将只进行转发查询. forwarders: 指定转发的IP地址表,默认地址表为空. Dual-stack Servers: dual-stack-servers: 指定机器的主机名或者地址进行ipv4或者ipv6传输,如果使用主机名,服务器必须能解析名字只用于传输,如果服务器是对称的,那么daul-stack-servers没有效果,除非用于传输被在命令行中关闭. 权限控制(Access Control): allow-notify: 指定哪个服务器可以通知这个服务器,从域,当主域发生变化时.当allow-notify用于在zone中指定,将覆盖全局的选项.对从域服务器没有用.默认只有主域可以发送通知信息. allow-query: 指定哪个服务器可以进行普通DNS查询,如果在zone中指定,将覆盖全局参数,默认允许来自全部主机的查询. allow-query-cache: 指定哪个主机可以被允许从缓存中得到答案. allow-recursion: 指定哪个主机可以通过服务器进行递归查询. allow-update: 指定哪个主机可以对主域进行动态更新操作. allow-update-forwarding: 指定哪个主机可以对从域发送动态更新,并由从域转发到主域,默认为{ none; }. allow-v6-synthesis: 此参数目的是为了从AAAA到A6的地址平滑转变,从"nibble labels"到二进制标签. allow-transfer: 指定那些主机可以从服务器上接收区域传输,未指定将允许传说到所有的主机. black-hole: 指定地址列表内的地址不接受解析从或者使用一个解析查询,这些地址发出的查询不会被相应,默认为none. 接口(Interface): listen-on port 1234 { 5.6.7.8; }; 指定在地址5.6.7.8上面的1234端口提供服务,默认为53. listen-on-v6: 在ipv6地址上监听. 查询地址(Query Address): query-sources address * port *; query-sources-v6 address * port *; 如果服务器不知道答案,将查询其他的name服务器, query-source指定地址和端口用户这些查询. 区域传输(Zone Transfer): also-notify: 定义一个向在全局的地址列表的服务器发送通知信息当刷新或者加载区域的时候. max-transfer-time-in: 当区域传入运行的时间大于设定的分钟将被中断,默认为120 minutes,最大值为28天,40320 minutes. max-transfer-idle-in: 当区域传入运行处于传输等待的状态,大于设定的时间将被中断,默认为60 minutes,最大值为28天. max-transfer-time-out: 当区域传出运行的时间大于设定的时间,将被中断,默认为120 minutes,最大为28天. max-transfer-idle-out: 当区域传出运行处于传输等待的状态,大于设定时间将被中断,默认为60 minutes,最大为28天. serial-query-rate: 从服务器定期去主服务器查询区域的serial数字是否发生改变.默认为20秒. serial-queries: BIND9忽略此参数,使用serial-query-rate代替. transfer-format: 区域的传输可以使用两种不同的格式,one-answers和many-answers,one-answers传输每个记录使用一个DNS信息,many-answers近可能把资源记录打成一个包,默认为many-answers transfer-in: 设定当前同时传入的区域的最大数目,默认为10个.区域的请求超过限制将被拒绝. transfer-out: 设定当前同时传出的区域的最大数目,默认为10个,区域的传出请求超过限制将被决绝. transfer-per-ns: 设定同时进行传输的区域从给定的name服务,默认为2. transfer-source: 指定通过哪个IPV4的源地址进行域的传送. transfer-source-v6: 指定通过哪个IPV6的源地址进行域的传送. alt-transfer-source: 指定,如果transfer-source发生故障,通过哪个IPV4的源地址进行域的传松. alt-transfer-source-v6: 同上. use-alt-transfer-source: 指定是否通过alt-transfer-source进行域的传松,默认为yes,兼容BIND8. notify-source: 指定哪个本地地址,以及本地端口被用来作为发送通知信息的源.此项受限于allow-notify. notify-source-v6: 同notify-source. Bad UDP Port Lists: 使用avoid-v4-udp-ports和avoid-v6-udp-ports来指定列表中的IPV4和ipv6端口不能被用于系统指定的源端口. Operating System Resource Limits: coresize: 用于core dump的限制. datasize: 可以使用的最大的数据内存. files: 最大打开文件数,默认unlimited. stacksize: 最大使用的内存栈. Server Resource Limits: max-ixfr-log-size: BIND8兼容,相当于BIND9的max-journal-size. max-journal-size: 设定每个日志文件的最大大小.默认unlimited host-statistics-max: BIND9无效. recursive-clients: 设定最大并发进行递归查询的数量,默认为1000. tcp-clients: 服务器接受的最大并发tcp连接数,默认为100. max-cache-size: 服务器缓存最大使用的内存,字节.默认为unlimited,意味着记录只有在TTL过期后才被清除出缓存. tcp-listen-queue: 监听最深队列,默认和最小值为3. Periodic Task Intervals: cleaning-interval: 服务器清理过期的资源记录在每个设定的时间间隔.默认为60分钟,最大设定为28天,如果设定为0将不进行清理. heartbeat-interval: 当被标记为dialup的区域过了设定的时间间隔,将进行区域维护任务,默认为60分钟,合理的设置是1天,最大设置为28天,如果设置为0,将不进行区域维护任务. interface-interval: 服务器将在设定的时间间隔扫描网络接口,默认为60分钟,最大为28天,设定为0只有在配置文件重新加载的时候才进行扫描. statistics-interval: 服务器的统计信息将在设定的期间内被记录,默认为60分钟,最大28天,设置为0将不记录. Topology: topology { localhost; localnets; }; BIND9无效. Sortlist: sortlist { { localhost; localnets; }; { localnets; }; }; RRset Ordering: rrset-order { class IN type A name "host.example.com" order random; order cyclic; };


节(Tuning):
lame-ttl: 设定缓存一个lame服务器的时间,0关闭,默认600秒,最大为1800秒.
max-ncache-ttl: 为了减少网络流量和提升性能,服务器记录不正确的回答得时间,默认为10800秒,不能超过7天.
max-cache-ttl: 设定服务器存储普通应答的最大缓存时间,默认为7天.
min-roots: BIND9无效.
sig-validity-interval: 设定DNSSEC自动生成动态更新的过期时间.默认为30天,最长10年.
min-refresh-time,max-refresh-time,min-retry-time,max-retry-time: 这些选项控制服务器的运转,当刷新一个区域或者重试失败的传输.
edns-udp-size: 这个参数设定发出的EDNS UDP包的大小,有效地值是512-4096之间,默认为4096bytes.
max-udp-size: 设定最大的EDNS信息的大小,有效地值是512-4096之间,默认为4096bytes.
masterfile-format: 指定区域文件的格式,默认为text.
clients-per-query,max-clients-per-query: 设定初始和最大数量服务器接受的客户端并发的递归查询,

服务器内建信息:
version: 版本
hostname: 主机名
server-id: 服务器ID

内建空域:
empty-server: 指定哪个服务器名将出现在返回的空域中的SOA记录,如果没指定,将使用区域的名字.
empty-contact: 指定哪个联系信息将出现在返回的空域的SOA记录中.如果没指定,将使用".".
empty-zones-enable: 打开或者关闭空的区域,默认为开启.
disable-empty-zone: 关闭单独的空地区域,默认关闭,此参数可指定多次.

额外的Cache参数:
acache-enable: 是否打开额外的cache参数.
acache-cleaning-interval: 服务器将删除过期的缓存进入,基于LRU based algorithm,每个设定的间隔时间,默认为60分钟,设置成0则不清除.
max-acache-size: 设定acache使用的最大的内存大小.  

servers:对特定的服务器设置参数

语法:
server ip_addr[/prefixlen] {
    [ bogus yes_or_no ; ]
    [ provide-ixfr yes_or_no ; ]
    [ request-ixfr yes_or_no ; ]
    [ edns yes_or_no ; ]
    [ edns-udp-size number ; ]
    [ max-udp-size number ; ]
    [ transfers number ; ]
    [ transfer-format ( one-answer | many-answers ) ; ]]
    [ keys { string ; [ string ; [...]] } ; ]
    [ transfer-source (ip4_addr | *) [port ip_port] ; ]
    [ transfer-source-v6 (ip6_addr | *) [port ip_port] ; ]
    [ notify-source (ip4_addr | *) [port ip_port] ; ]
    [ notify-source-v6 (ip6_addr | *) [port ip_port] ; ]
    [ query-source [ address ( ip_addr | * ) ] [ port ( ip_port | * ) ]; ]
    [ query-source-v6 [ address ( ip_addr | * ) ] [ port ( ip_port | * ) ]; ]
};

trusted_keys:设置可信任的DNSSEC key

语法:
trusted-keys {
    string number number number string ;
    [ string number number number string ; [...]]
};

view:定义一个视图

view view_name
      [class] {
      match-clients { address_match_list };
      match-destinations { address_match_list };
      match-recursive-only yes_or_no ;
      [ view_option; ...]
      [ zone_statement; ...]
};

zone:定义一个区域

zone zone_name [class] {
    type master;
    [ allow-query { address_match_list }; ]
    [ allow-transfer { address_match_list }; ]
    [ allow-update { address_match_list }; ]
    [ update-policy { update_policy_rule [...] }; ]
    [ also-notify { ip_addr [port ip_port] ; [ ip_addr [port ip_port] ; ... ] }; ]
    [ check-names (warn|fail|ignore) ; ]
    [ check-mx (warn|fail|ignore) ; ]
    [ check-wildcard yes_or_no; ]
    [ check-integrity yes_or_no ; ]
    [ dialup dialup_option ; ]
    [ file string ; ]
    [ masterfile-format (text|raw) ; ]
    [ journal string ; ]
    [ forward (only|first) ; ]
    [ forwarders { [ ip_addr [port ip_port] ; ... ] }; ]
    [ ixfr-base string ; ]
    [ ixfr-tmp-file string ; ]
    [ maintain-ixfr-base yes_or_no ; ]
    [ max-ixfr-log-size number ; ]
    [ max-transfer-idle-out number ; ]
    [ max-transfer-time-out number ; ]
    [ notify yes_or_no | explicit | master-only ; ]
    [ pubkey number number number string ; ]
    [ notify-source (ip4_addr | *) [port ip_port] ; ]
    [ notify-source-v6 (ip6_addr | *) [port ip_port] ; ]
    [ zone-statistics yes_or_no ; ]
    [ sig-validity-interval number ; ]
    [ database string ; ]
    [ min-refresh-time number ; ]
    [ max-refresh-time number ; ]
    [ min-retry-time number ; ]
    [ max-retry-time number ; ]
    [ key-directory path_name; ]
    [ zero-no-soa-ttl yes_or_no ; ]
};

zone zone_name [class] {
    type slave;
    [ allow-notify { address_match_list }; ]
    [ allow-query { address_match_list }; ]
    [ allow-transfer { address_match_list }; ]
    [ allow-update-forwarding { address_match_list }; ]
    [ update-check-ksk yes_or_no; ]
    [ also-notify { ip_addr [port ip_port] ; [ ip_addr [port ip_port] ; ... ] }; ]
    [ check-names (warn|fail|ignore) ; ]
    [ dialup dialup_option ; ]
    [ file string ; ]
    [ masterfile-format (text|raw) ; ]
    [ journal string ; ]
    [ forward (only|first) ; ]
    [ forwarders { [ ip_addr [port ip_port] ; ... ] }; ]
    [ ixfr-base string ; ]
    [ ixfr-tmp-file string ; ]
    [ maintain-ixfr-base yes_or_no ; ]
    [ masters [port ip_port] { ( masters_list | ip_addr [port ip_port] [key key] ) ; [...] }; ]
    [ max-ixfr-log-size number ; ]
    [ max-transfer-idle-in number ; ]
    [ max-transfer-idle-out number ; ]
    [ max-transfer-time-in number ; ]
    [ max-transfer-time-out number ; ]
    [ notify yes_or_no | explicit | master-only ; ]
    [ pubkey number number number string ; ]
    [ transfer-source (ip4_addr | *) [port ip_port] ; ]
    [ transfer-source-v6 (ip6_addr | *) [port ip_port] ; ]
    [ alt-transfer-source (ip4_addr | *) [port ip_port] ; ]
    [ alt-transfer-source-v6 (ip6_addr | *) [port ip_port] ; ]
    [ use-alt-transfer-source yes_or_no; ]
    [ notify-source (ip4_addr | *) [port ip_port] ; ]
    [ notify-source-v6 (ip6_addr | *) [port ip_port] ; ]
    [ zone-statistics yes_or_no ; ]
    [ database string ; ]
    [ min-refresh-time number ; ]
    [ max-refresh-time number ; ]
    [ min-retry-time number ; ]
    [ max-retry-time number ; ]
    [ multi-master yes_or_no ; ]
    [ zero-no-soa-ttl yes_or_no ; ]
};

zone zone_name [class] {
    type hint;
    file string ;
    [ delegation-only yes_or_no ; ]
    [ check-names (warn|fail|ignore) ; // Not Implemented. ]
};

zone zone_name [class] {
    type stub;
    [ allow-query { address_match_list }; ]
    [ check-names (warn|fail|ignore) ; ]
    [ dialup dialup_option ; ]
    [ delegation-only yes_or_no ; ]
    [ file string ; ]
    [ masterfile-format (text|raw) ; ]
    [ forward (only|first) ; ]
    [ forwarders { [ ip_addr [port ip_port] ; ... ] }; ]
    [ masters [port ip_port] { ( masters_list | ip_addr [port ip_port] [key key] ) ; [...] }; ]
    [ max-transfer-idle-in number ; ]
    [ max-transfer-time-in number ; ]
    [ pubkey number number number string ; ]
    [ transfer-source (ip4_addr | *) [port ip_port] ; ]
    [ transfer-source-v6 (ip6_addr | *) [port ip_port] ; ]
    [ alt-transfer-source (ip4_addr | *) [port ip_port] ; ]
    [ alt-transfer-source-v6 (ip6_addr | *) [port ip_port] ; ]
    [ use-alt-transfer-source yes_or_no; ]
    [ zone-statistics yes_or_no ; ]
    [ database string ; ]
    [ min-refresh-time number ; ]
    [ max-refresh-time number ; ]
    [ min-retry-time number ; ]
    [ max-retry-time number ; ]
    [ multi-master yes_or_no ; ]
};

zone zone_name [class] {
    type forward;
    [ forward (only|first) ; ]
    [ forwarders { [ ip_addr [port ip_port] ; ... ] }; ]
    [ delegation-only yes_or_no ; ]
};

zone zone_name [class] {
    type delegation-only;
};

区域Type:
master: 主域服务
slave: 从域服务
stub: 只复制主域的NS记录,属于BIND特有功能.
hint: 设定初始化设置根域服务器所用的参数.
forward: 域转发设置
delegation-only: 设定返回为NXDOMAIN?
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

bind配置文件语法 的相关文章

  • 在 Javascript 中绑定已绑定函数的更多参数

    我尝试整理一下关于 javascript 的 bind 工作原理的想法 我看到如果我这样做 var f function a var g f bind obj g 1 然后 f 被调用obj as this and 1 as a 我认为 g
  • 如何绑定函数参数

    如何将参数部分绑定 应用到 R 中的函数 这就是我走了多远 然后我意识到这种方法行不通 bind lt function fun argNames lt names formals fun bindedArgs lt list binded
  • 使用 boost asio 重用套接字

    我尝试使用 boost asio 套接字 绑定到本地地址 端口组合 效果很好 不起作用的是 一旦套接字和应用程序停止并重新启动 就重新使用套接字 open the socket it would also be opened by the
  • 绑定到特定的IP地址和端口来接收UDP数据

    我正在尝试接收由 PlayCap 广播到网络地址 192 168 103 255 端口 3000 的 UDP 数据 http www signal11 us oss playcap http www signal11 us oss play
  • 将 Param 与参数数组绑定

    我有一个函数可以执行此操作 function registerUser firstName lastName address postcode email password params array firstName lastName a
  • 干净地绑定/取消绑定到应用程序中的服务

    我有一个绑定到持久服务的 Android 应用程序 一旦启动startService 该服务是应用程序的一个组成部分 因此几乎在每个 Activity 中都会使用该服务 因此 我只想绑定到服务一次 而不是在每个活动中绑定 取消绑定 并在应用
  • Jquery如何在动态创建的元素上绑定点击事件?

    我尝试了下面的代码 但它不起作用 jQuery 1 9 1 在这里试试这个
  • OSX Mavericks - 不再安装 BIND...如何使本地 DNS 服务器正常工作?

    我一直在 OSX 上使用 BIND 为我的本地开发机器提供本地 DNS 解析器 特别是为了方便虚拟机访问我的本地开发环境 愚蠢的是 我决定连夜升级到 OSX Mavericks 但似乎不再安装 BIND 即使添加了命令行开发人员工具 有人建
  • 带参数的 Kivy 按钮绑定函数

    我正在尝试学习如何在 Kivy 中创建应用程序 但在向函数发送参数时遇到问题 我想将输入中的文本发送到函数并打印它 有人可以告诉我该怎么做吗 from kivy app import App from kivy uix boxlayout
  • Jquery:当用户单击除该 div 之外的任何内容时如何隐藏该 div。无叠加

    我在想 one在这种情况下会有用吗 但我不知道该怎么做 当我单击搜索链接时 会出现一个搜索框 我希望用户能够单击该 div 中的任何内容而不关闭它 但是当用户单击该 div 之外的任何内容时 div 就会淡出 嗯 这是一个example h
  • 使用 cbind 创建所有可能组合的数据框而不重复列

    我有 3 个数据框 每个数据框如下所示 head New Re JPM GBI GLOBAL MSCI WORLD U MSCI EM U WORLD DS Market EMERGING MARKETS DS S P GSCI HFRI
  • $.proxy() 和 bind() 有什么区别?

    2009 年 ECMAScript 5 添加了一个内置的bind 函数接受一个对象作为参数并返回一个相同的函数 其中this将始终引用您传递给它的对象 我找不到任何看起来像规范文档链接的内容 这与jQuery 的 proxy 功能 http
  • java: 不使用时绑定异常地址使用错误(如netstat所示)

    我的应用程序使用特定的源端口与服务器建立出站连接 考虑到防火墙问题 强化的系统可能需要提前指定端口 我的问题是我的应用程序最初建立连接 但是 如果连接中断 它将重试 但套接字将收到 BindException 指出 地址正在使用 事实并非如
  • 绑定地址和MySQL服务器[关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我在尝试配置 MySQL 服务器时遇到了绑定地址 我为什么要配置绑定地址的详细信息在下面的链接中 多个主机名和多个权限 https sta
  • Tkinter 绑定 Mac OS“command+q”

    当我按 Command q 时 我试图 停止 根窗口退出 但这是不可能的 其他快捷键在我的 Mac 操作系统上有效 即使在 Windows Linux 中 Alt F4 绑定也可以 捕获 但在 Mac 操作系统中对我来说是不可能的 有任何想
  • 检测用户在 jQuery 中向下滚动或向上滚动[重复]

    这个问题在这里已经有答案了 可能的重复 jquery 中向上 向下滚动的区别 https stackoverflow com questions 4989632 differentiate between scroll up down in
  • Docker 错误绑定:地址已在使用中

    当我跑步时docker compose up在我的 Docker 项目中 它失败并显示以下消息 启动用户层代理时出错 监听 tcp 0 0 0 0 3000 绑定 地址已在使用中 netstat pna grep 3000 显示这个 tcp
  • std::bind2nd 和 std::bind 与二维数组和结构数组

    我知道 C 有 lambda 并且 std bind1st std bind2nd 和 std bind 已弃用 然而 从C 的基础开始 我们可以更好地理解新特性 所以 我从这个非常简单的代码开始 使用int 数组s 第一个例子 与std
  • 如何绑定值 INSERT INTO mysql perl

    我有下面的代码可以工作 但我需要知道如何绑定它们以确保安全 如果我只是将 new row 替换为 并将其放入执行中我收到错误 感谢您的帮助 foreach my field account field order new row param
  • 对原型绑定感到困惑,这个声明

    在下面的代码中 我想知道上下文如何绑定到this In obj myMethod 上下文被赋予对象 因此记录它会给出对象 In var myFun obj myMethod then myFun 上下文被赋予窗口 唯一的区别是您将函数设置为

随机推荐