久久国产成人av_抖音国产毛片_a片网站免费观看_A片无码播放手机在线观看,色五月在线观看,亚洲精品m在线观看,女人自慰的免费网址,悠悠在线观看精品视频,一级日本片免费的,亚洲精品久,国产精品成人久久久久久久

分享

BIND配置文件詳解

 sailorhzr 2010-09-27

BIND配置文件語法介紹
BIND配置文件語法介紹
logging 和options 語句只在每個(gè)配置中出現(xiàn)一次,。
 
1.acl語句
acl語句的定義和使用
acl 語句給一個(gè)地址匹配表賦予了一個(gè)象征名稱,。它的名字來自于地址匹配列表的最基本功能:訪問控制表列(ACLs),。
注意,一個(gè)地址表名必須首先在acl中定義了,,然后才能在別處使用,;提前調(diào)用是不允許的。
acl acl-name {address_match_list};
下列ACLs 組成:
acls
localhost 和localnets 的ACLs 目前不支持IPV6(也就是說,,localhost不匹配主機(jī)的IPV6地址,,localnets不匹配連上IPV6 網(wǎng)絡(luò)的主機(jī)),因?yàn)槿狈Υ_定本地IPV6 主機(jī)地址的標(biāo)準(zhǔn)方法,。
 
2.controls語句
控制語句controls的定義和使用
controls {
inet ( ip_addr | * ) [ port ip_port ] allow { address_match_list }
keys { key_list };
[ inet ...; ]
};
controls 語句定義了系統(tǒng)管理員使用的,,有關(guān)本地域名服務(wù)器操作的控制通道。這些控制通道被rndc用來發(fā)送命令,,并從域名服務(wù)器中檢索非DNS的結(jié)果,。
 
inet 控制通道是一個(gè)監(jiān)聽在ip_addr(可以是ipv4或ipv6地址)地址上的ip_port端口的TCP socket。ip_addr 是“*”的話,,則說明是一個(gè)ipv4的通配符,;允許接受系統(tǒng)上的任何IPV4地址上的用戶連接,。要想監(jiān)聽所有ipv6地址上的連接,則應(yīng)該使用“::”作 為ip_addr,。如果僅想在本地主機(jī)上使用rndc,,建議使用loopback 地址(127.0.0.1 或::1)以獲得最大安全性。
 
allow 和keys子語用來限制通過控制通道發(fā)出命令的能力,。根據(jù)address_match_list中的定義,,來監(jiān)控控制通道上的用戶連接。 address_match_list中的key_id成員則被忽略,,反之則根據(jù)key_list來單獨(dú)的表示,。每個(gè)在key_list中的key_id 都允許用來鑒別通過控制通道傳送的命令和響應(yīng),這些服務(wù)器和用戶端之間的命令和響應(yīng)都經(jīng)過了數(shù)字簽名的技術(shù)處理,。所有經(jīng)過控制通道的命令都必須使用設(shè)置的 密匙進(jìn)行加密,。如果沒有設(shè)置controls語句,named就會(huì)建立一個(gè)默認(rèn)控制通道,,監(jiān)聽loopback地址127.0.0.1 和對應(yīng)的IPV6地址::1,。當(dāng)有一個(gè)controls 語句,,但沒有key子句時(shí),,named將會(huì)試著從文件/etc/rndc.key(或者任意在BIND編譯時(shí)設(shè)定的sysconfdir)中讀取命令通道 密匙。用rndc-confgen –a 命令,,創(chuàng)建一個(gè)rndc.key文件,。
 
rndc.key 是用來簡化從BIND8系統(tǒng)上的升級過程,因?yàn)锽IND8 在它的命令通道中沒有使用數(shù)字簽名,,也就沒有key子句,。這樣,在BIND9安裝后執(zhí)行rndc-confgen –a 命令,,BIND9就可以繼續(xù)使用和BIND8一樣的配置文件,,并仍然使用類似于BIND8中的ndc一樣的工作方式。既然rndc.key 的特性只是用于兼容BIND8配置文件,,所以它的配置就沒有什么高難度,。
 
當(dāng) 用戶想修改加密的信息時(shí),當(dāng)然不能簡單的修改密匙名稱和加密程度,,而應(yīng)該用用戶自己的密匙來生成新的rndc.conf文件,。rndc.key文件也有自 己的讀取權(quán)限設(shè)置,只有文件的所有者(運(yùn)行named的用戶)可以訪問,。如果用戶要求能有更多的用戶能夠使用rndc,,則生成rndc.conf文件時(shí), 將文件屬組的權(quán)限置為可讀,,并將這些用戶歸入這個(gè)組就可以了,。
要想禁止掉命令通道,,則使用一條空controls語句:controls { }; 即可。
 
3.include語句
include語句的定義和使用
include 文件名,;
include語句通過允許對配置文件的讀或?qū)?,來簡化對配置文件的管理。例如,,它可以包含多個(gè)只能由域名服務(wù)器讀取的私人密匙(private key),。
 
4. key語句
key語句的定義和使用
key key_id {
algorithm string;
secret string;
};
key 語句定義了一個(gè)用于TSIG的共享密匙。
key 語句可以出現(xiàn)在配置文件的開始或者在一個(gè)view語句中,。定義在開始的key語句可以在所有視圖中應(yīng)用,。在controls語句中使用的key必須事先定義在文件的開始。
key_id,,也叫做密匙名,,是確認(rèn)一個(gè)域名的唯一密匙??梢栽谝粋€(gè)“server”語句中使用,,使得發(fā)給這個(gè)服務(wù)器的請求都會(huì)用這個(gè)密匙進(jìn)行加密,或者用于確認(rèn)來自于地址匹配列表中的主機(jī)的請求,,是否已經(jīng)用這個(gè)名字,、算法和secret的密匙進(jìn)行了加密。
algorithm_id 是一個(gè)標(biāo)記安全/鑒定的字符串,。目前唯一由TSIG鑒別支持的算法是hmac-md5,。secret_string 是算法要使用的機(jī)密級,是一個(gè)64位編碼的字符串,。
 
5.logging語句
日志logging語句的定義和使用
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 ; … ]
}; ]
...
};
logging語句為域名服務(wù)器設(shè)定了一個(gè)多樣性的logging選項(xiàng),。它的channel短語對應(yīng)于輸出方式、格式選項(xiàng)和分類級別,,它的名稱可以與category短語一起定義多樣的日志信息,。
 
只用一個(gè)logging語句就可以用來定義多個(gè)channel和category。如果沒有l(wèi)ogging 語句的話,,logging設(shè)置就是:
logging {
category "unmatched" { "null"; };
category "default" { "default_syslog"; "default_debug"; };
};
 
在 BIND9中,,logging的配置只有在整個(gè)配置文件被讀取后才被執(zhí)行。而在BIND8中,,logging部分被讀取后就開始執(zhí)行了,。當(dāng)服務(wù)器啟動(dòng)時(shí), 所有在配置文件中關(guān)于語法錯(cuò)誤的logging信息都轉(zhuǎn)到缺省通道(channel)中,,或者使用”-g”選項(xiàng),,指定轉(zhuǎn)成標(biāo)準(zhǔn)錯(cuò)誤。
 
A.channel 短語
所 有日志會(huì)輸出到一個(gè)或多個(gè)channel中,;你可以定義所有你想要的通道,。每個(gè)通道的定義必須包括一個(gè)目的字句,,用來確定所選的相關(guān)通道的信息,將會(huì)被輸 出到一個(gè)文件,,或者到一個(gè)特殊的syslog工具,,或者到一個(gè)標(biāo)準(zhǔn)錯(cuò)誤流,或者被忽略,。它也可以隨意的限制通道能接受的信息級別(默認(rèn)值info),,定義 是否包含一個(gè)由named產(chǎn)生的時(shí)間標(biāo)記,或者是否包含分類的名稱,、級別等(默認(rèn)是不包含任何內(nèi)容),。
目的子句為null時(shí),會(huì)使所有發(fā)送給通道的信息被丟棄,;那樣的話,,其他通道選項(xiàng)就沒有意義了。
目的子句為file 時(shí),,會(huì)使通道的內(nèi)容輸出到一個(gè)磁盤文件,。它可以包含這個(gè)文件的大小和該文件可以保存多少個(gè)版本。
如 果使用versions日志文件選項(xiàng),,named就會(huì)自動(dòng)保留多個(gè)版本的日志文件,。例如,如果選擇保存文件lamers.log的三個(gè)老版本,,那么在它被 打開的時(shí)候lamers.log.1被更名為lamers.log.2,,lamers.log.0 被更名為lamers.log.1 ,lamers.log 被更名為lamers.log.0,。也可以設(shè)置version unlimited,這樣就沒有備份版本的限制了,。
如 果對日志文件設(shè)置了size選項(xiàng),,那么僅當(dāng)此文件超過了設(shè)定的大小時(shí),系統(tǒng)就會(huì)進(jìn)行更名,。默認(rèn)情況下不儲(chǔ)存?zhèn)浞菸募?;所有存在的日志文件被簡單進(jìn)行追加。 文件的size 選項(xiàng)用來限制日志的增長,。如果文件超過了限制,,又沒有versions選項(xiàng),則named 就會(huì)停止寫入文件,。如果保留了備份版本,,則備份文件如上所述進(jìn)行滾動(dòng)命名,然后開始創(chuàng)建一個(gè)新的文件,。如果沒有versions選項(xiàng),,也沒有其它的機(jī)制來 刪除或減小日志文件,,則系統(tǒng)就不會(huì)有數(shù)據(jù)繼續(xù)寫入日志中。默認(rèn)狀態(tài)是不限制文件的大小的,。
size 和versions 選項(xiàng)的使用例子:
channel "an_example_channel" {
file "example.log" versions 3 size 20m;
print-time yes;
print-category yes;
};
syslog 目的子句是把通道指向系統(tǒng)日志,。它的參數(shù)是一個(gè)syslog的前綴,如syslog幫助中所述,。syslog是怎樣處理帶有這些前綴的信息,,可以參考syslog.conf 的幫助信息。
severity子句象syslog中的”priorites”一樣工作,,唯一區(qū)別的是用戶可以直接寫入一個(gè)文件,,而不是使用syslog寫入一個(gè)文件。不到嚴(yán)重級的信息將不會(huì)被通道選擇,;高嚴(yán)重級的信息將會(huì)被接受,。
如 果用戶正在使用syslog,那么syslog.conf 的優(yōu)先級也會(huì)決定什么會(huì)最終通過,。例如,,將channel facility和severity定義成daemon和debug,就不會(huì)只記錄通過syslog.conf的daemon.warning信息,,后者 會(huì)使severity是info和notice的信息被丟棄,。如果情況相反,named就會(huì)只記錄warning或更高級別的信息,,而syslogd則會(huì) 記錄來自于通道的所有信息,。
stderr目的子句將通道輸出 到服務(wù)器的標(biāo)準(zhǔn)錯(cuò)誤流。它用于服務(wù)器在前臺運(yùn)行的情況下,,例如,,當(dāng)處于debug模式的時(shí)候,服務(wù)器能提供豐富的調(diào)試信息,。如果服務(wù)器的全局debug級 別(globe debug level)大于0,,debug 模式將被激活。全局debug級別可以通過在啟動(dòng)named時(shí)設(shè)置“-d”參數(shù)加一個(gè)正數(shù),,或運(yùn)行rndc trace來設(shè)置,。如果要關(guān)閉debug模式,則將全局debug 級別設(shè)置成0,,或運(yùn)行rndc notrace,。服務(wù)器中所有的debug信息有一個(gè)debug級別,高調(diào)試級給出更詳細(xì)的輸出,。
例如,,指定調(diào)試嚴(yán)重級別的通道:
channel "specific_debug_level" {
file "foo";
severity debug 3;
};
上例中,服務(wù)器在處于debug模式的時(shí)候都會(huì)收到3級和比3級小的級別的調(diào)試信息,,全局的調(diào)試級別在這里不起作用,。dynamic嚴(yán)重級別的通道將使用服務(wù)器全局debug級別決定打印哪些信息,。
如 果使用了print-time參數(shù),則日期和時(shí)間也將會(huì)記錄下來,。print-time也可以針對syslog的通道進(jìn)行設(shè)置,,但因?yàn)閟yslog也打印 日期和時(shí)間,所以一般來講,,這沒有什么意義,。如果設(shè)置了print-category 參數(shù),則信息的分類也會(huì)記錄下來,。如果設(shè)置了print-severity參數(shù),,則信息的嚴(yán)重級別也會(huì)記錄下來。print-xxx 選項(xiàng)可以進(jìn)行多重組合,,單輸出格式都是這個(gè)順序:時(shí)間,、分類、嚴(yán)重級別,。
 
下面是一個(gè)當(dāng)三個(gè)打印選項(xiàng)都設(shè)置的例子:
28-Feb-2000 15:05:32.863 general: notice: running
下面是named 提前定義的四個(gè)通道,,用于指定缺省的日志。
channel "default_syslog" {
syslog daemon; // 發(fā)送給syslog 的daemon facility
severity info; //只發(fā)送此優(yōu)先級和更高優(yōu)先級的信息
};
channel "default_debug" {
file "named.run"; // 寫入工作目錄下的named.run 文件,。注意:如果服務(wù)器用-f 參數(shù)啟動(dòng),,則"named.run"會(huì)被stderr 所替換。
severity dynamic; // 按照服務(wù)器當(dāng)前的debug 級別記錄日志
};
channel "default_stderr"{
stderr; //寫到stderr
severity info; //只發(fā)送此優(yōu)先級和更高優(yōu)先級的信息
};
channel "null" {
null; // 丟棄所有發(fā)到此通道的信息
};
default_debug 通道有特殊的性質(zhì):只有當(dāng)服務(wù)器的debug級別非0的時(shí)候,,它才產(chǎn)生輸出,。一般來說,它會(huì)在服務(wù)器的工作目錄中寫入named.run文件,。
因?yàn)榘踩?,?dāng)在命令行選項(xiàng)中使用了“-u”參數(shù)后,只有當(dāng)named使用了新的UID
后,,named.run文件才會(huì)產(chǎn)生,,以root身份啟動(dòng)和運(yùn)行的named所產(chǎn)生的debug信息將會(huì)被丟棄。如果用戶需要得到這些輸出,,則必須使用“-g”參數(shù)運(yùn)行服務(wù)器,并重新將標(biāo)準(zhǔn)錯(cuò)誤定向到一個(gè)文件中去,。
一旦定義好一個(gè)通道,,它就不能被重新定義。這樣就不能修改內(nèi)置的通道,,但是可以通
過把分類指向你已經(jīng)定義的通道,,來修改默認(rèn)的日志記錄。
 
B. category 短語
這里存在許多分類,,用戶可根據(jù)需要定義想看到或不想看到的日志,。如果你不將某個(gè)分類指定到某些通道的話,,那么在這個(gè)分類的日志信息就會(huì)被發(fā)送到default分類通道中。如果用戶沒有設(shè)定缺省的分類,,下列"default"則會(huì)被系統(tǒng)使用:
category "default" { "default_syslog"; "default_debug"; };
 
作為一個(gè)例子,,假定你要在文件中記錄安全事件,但您也要保留缺省的日志文件,。最好按照下面配置:
channel "my_security_channel" {
file "my_security_file";
severity info;
};
category "security" {
"my_security_channel";
"default_syslog";
"default_debug";
};
為了丟棄一個(gè)分類中的所有信息,,可以設(shè)定null 通道:
category "xfer-out" { "null"; };
category "notify" { "null"; };
 
下面是可用的分類和相關(guān)的簡明描述,以后的BIND版本中會(huì)包含更多的分類,。
bind_category
 
 
6.options語句
options語句的定義和使用:
options語句用來設(shè)置可以被整個(gè)BIND使用的全局選項(xiàng),。這個(gè)語句在每個(gè)配置文件中只有一處。如果出現(xiàn)多個(gè)options語句,,則第一個(gè)options的配置有效,,并且會(huì)產(chǎn)生一個(gè)警告信息。
如果沒有options語句,,則每個(gè)選項(xiàng)使用缺省值,。
options {
[ version version_string; ]
[ directory path_name; ]
[ named-xfer path_name; ]
[ tkey-domain domainname; ]
[ tkey-dhkey key_name key_tag; ]
[ 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; ]
[ has-old-clients yes_or_no; ]
[ host-statistics yes_or_no; ]
[ minimal-responses yes_or_no; ]
[ multiple-cnames yes_or_no; ]
[ notify yes_or_no | explicit; ]
[ recursion yes_or_no; ]
[ rfc2308-type1 yes_or_no; ]
[ use-id-pool yes_or_no; ]
[ maintain-ixfr-base yes_or_no; ]
[ forward ( only | first ); ]
[ forwarders { ip_addr [port ip_port] ; [ ip_addr [port ip_port] ; ... ] }; ]
[ check-names ( master | slave | response )( warn | fail | ignore ); ]
[ allow-notify { address_match_list }; ]
[ allow-query { address_match_list }; ]
[ allow-transfer { address_match_list }; ]
[ allow-recursion { address_match_list }; ]
[ allow-v6-synthesis { address_match_list }; ]
[ blackhole { address_match_list }; ]
[ listen-on [ port ip_port ] { address_match_list }; ]
[ listen-on-v6 [ port ip_port ] { address_match_list }; ]
[ query-source [ address ( ip_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; ]
[ 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] ; ]
[ notify-source (ip4_addr | *) [port ip_port] ; ]
[ notify-source-v6 (ip6_addr | *) [port ip_port] ; ]
[ alsonotify { ip_addr [port ip_port] ; [ ip_addr [port ip_port] ; ... ] }; ]
[ max-ixfr-log-size number; ]
[ 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; ]
};
 
version
回答針對服務(wù)器版本的請求時(shí)的內(nèi)容。缺省返回的是服務(wù)器的真實(shí)版本,。
directory
服務(wù)器的工作目錄,。配置文件中所有使用的相對路徑,指的都是在這里配置的目錄下,。大多數(shù)服務(wù)器的輸出文件(如named.run)都缺省生成在這個(gè)目錄下,。如果沒有設(shè)定目錄,工作目錄缺省設(shè)置為服務(wù)器啟動(dòng)時(shí)的目錄‘.’,。指定的目錄應(yīng)該是一個(gè)絕對路徑,。
named-xfer
這個(gè)選項(xiàng)已經(jīng)被廢棄了。它在BIND8 中,,它用來給named-xfer程序設(shè)定路徑名,。在BIND9中,不需要單獨(dú)的named-xfer程序,;它的功能已經(jīng)內(nèi)置在域名服務(wù)器中,。
tkey-domain
這 個(gè)域名將會(huì)附帶在由TKEY 生成的所有共享密匙名字的后面。當(dāng)用戶請求進(jìn)行TKEY交換時(shí),,它會(huì)為密匙設(shè)定或不設(shè)定所要求的名稱,。如果設(shè)置了tkey_domain,共享密匙的名字 將會(huì)是"client specified part"(用戶設(shè)定的部分)+ "tkey-domain",。否則,,共享密匙的名字將是"random hex digits"(隨機(jī)的16 進(jìn)制數(shù))+ "tkey-domain"。在大多數(shù)情況下,domainname應(yīng)該是服務(wù)器的域名,。
tkey-dhkey
針對使用Diffie-Hellman 的TKEY模式的用戶,,服務(wù)器用來生成共享密匙的Diffie-Hellman 密匙。服務(wù)器必須可以從工作目錄中調(diào)入公共和私人密匙,。大多數(shù)情況下,,密匙的名稱應(yīng)該是服務(wù)器的主機(jī)名。
dump-file
當(dāng)執(zhí)行rndc dumpdb命令時(shí),,服務(wù)器存放數(shù)據(jù)庫文件的路徑名,。如果沒有指定,缺省名字是named_dump.db,。
memstatistics-file
服務(wù)器輸出的內(nèi)存使用統(tǒng)計(jì)文件的路徑名,。如果沒有指定,默認(rèn)值為named.memstats,。
注意:還沒有在BIND9中實(shí)現(xiàn),!
pid-file
進(jìn)程ID文件的路徑名。如果沒有指定,,默認(rèn)為/var/run/named.pid,。pid-file是給那些需要向運(yùn)行著的服務(wù)器發(fā)送信號的程序使用的。
statistics-file
當(dāng)使用rndc stats命令的時(shí)候,,服務(wù)器會(huì)將統(tǒng)計(jì)信息追加到的文件路徑名,。如果沒有指定,默認(rèn)為named.stats在服務(wù)器程序的當(dāng)前目錄中,。
port
服務(wù)器用來接收和發(fā)送DNS協(xié)議數(shù)據(jù)的UDP/TCP端口號,。默認(rèn)為53。這個(gè)選項(xiàng)主要用于服務(wù)器的檢測,;因?yàn)槿绻皇褂?3端口的話,,服務(wù)器將不能與其它的DNS進(jìn)行通訊。
random-device
服 務(wù)器使用的entropy源:entropy主要用于DNSSEC操作,,如TKEY的數(shù)據(jù)交換和加密域的動(dòng)態(tài)更新,。此選項(xiàng)指定了entropy將會(huì)從哪個(gè) 設(shè)備(或文件)中讀取信息。如果它是一個(gè)文件,,則當(dāng)文件耗盡后,,需要entropy的操作將會(huì)失敗。如果沒有指定,,默認(rèn)值是/dev/random(或等 價(jià)的),,如果它存在,否則就是沒有,。random-device選項(xiàng)是在服務(wù)器啟動(dòng)時(shí),初始化配置時(shí)起作用的,,在以后的重啟時(shí)則被忽略,。
 
A.Boolean 選項(xiàng)
auth-nxdomain
如果是yes,,那么AA位將一直設(shè)置成NXDOMAIN響應(yīng),甚至在服務(wù)器不是授權(quán)服務(wù)器的情況下都是這樣的,。默認(rèn)值是no,;這與BIND8不同。如果用戶使用的是非常老版本的DNS軟件,,則有必要把它設(shè)置成yes,。
deallocate-on-exit
此選項(xiàng)在BIND8中用于檢查出口處內(nèi)存泄露。BIND9忽略此選項(xiàng),,并始終進(jìn)行檢查,。
dialup
如果是yes, 那么服務(wù)器將會(huì)像在通過一條按需撥號的鏈路進(jìn)行域傳送一樣,,對待所有的域(按需撥號就是在服務(wù)器有流量的時(shí)候,,鏈路才連通)。根據(jù)域類型的不同它有不同的 作用,,并將集中域的維護(hù)操作,,這樣所有有關(guān)的操作都會(huì)集中在一段很短的時(shí)間內(nèi)完成,每個(gè)heartbeat-interval一次,,一般是在一次調(diào)用之中 完成,。它也禁止一些正常的域維護(hù)的流量。默認(rèn)值是no,。
dialup選項(xiàng)也可以定義在view和zone語句中,,這樣就會(huì)代替了全局設(shè)置中dialup的選項(xiàng)。
如果域是一個(gè)主域,,服務(wù)器就會(huì)對所有輔域發(fā)送NOTIFY請求,。這將激活輔域名服務(wù)器中的對域的序列號的檢驗(yàn)。這樣當(dāng)建立一個(gè)連接時(shí),,輔域名服務(wù)器才能確認(rèn)這個(gè)域的傳輸合法性,。
如果這個(gè)域是一個(gè)輔域或是末梢域(stub zone),那么服務(wù)器將會(huì)禁止通常的“zone up to date”(refresh)請求,,為了能發(fā)送NOTIFY請求,,只有在heartbeat-interval 過期之后才執(zhí)行。
通過下列的設(shè)置,,可以實(shí)現(xiàn)更好的控制,。
1、notify 只發(fā)送NOTIFY信息,。
2,、notify-passive 發(fā)送NOTIFY信息,并禁止普通的刷新(refresh)請求。
3,、refresh 禁止普通的刷新處理,,當(dāng)heartbeat-interval 過期時(shí)才發(fā)送刷新請求。
4,、passive 只用于關(guān)閉普通的刷新處理,。
fake-iquery
在BIND8中,此選項(xiàng)用來模擬陳舊的DNS查詢類型IQUERY,。BIND9不再進(jìn)行IQUERY模擬,。
fetch-glue
這個(gè)選項(xiàng)以后不再使用。
has-old-clients
這個(gè)選項(xiàng)在BIND8中執(zhí)行有問題,,BIND9則忽略了這個(gè)選項(xiàng),。為了達(dá)到has-old-clients yes的預(yù)期效果,可以設(shè)定兩個(gè)獨(dú)立選項(xiàng)auth-nxdomain yes和rfc2308-type1 no來代替,。
host-statistics
在BIND8中,,它可以保留每臺和域名服務(wù)器交互的主機(jī)統(tǒng)計(jì)信息。BIND9中不支持,。
maintain-ixfr-base
此選項(xiàng)不再使用了,。在BIND8用于判定是否保存了增量域傳輸?shù)奶幚砣罩尽IND9任何可能的時(shí)候都會(huì)保存?zhèn)鬏斎罩?。如果需要禁止流出的增量域傳輸,,可以使用provide-ixfr no。
minimal-responses
如果是yes,,當(dāng)產(chǎn)生響應(yīng)的時(shí)候,,服務(wù)器將只會(huì)按照需要將記錄添加到authority和additional的數(shù)據(jù)部分。(例如,,delegations,,negative responses)。這樣會(huì)改善服務(wù)器的性能,。默認(rèn)值為no,。
multiple-cnames
這個(gè)選項(xiàng)在BIND8中使用,允許一個(gè)域名承認(rèn)多條CNAME記錄(與DNS標(biāo)準(zhǔn)相違
背),。BIND9.2在主hosts文件和動(dòng)態(tài)更新中都嚴(yán)格強(qiáng)制執(zhí)行CNAME規(guī)則,。
notify
如果是yes(默認(rèn)),當(dāng)一個(gè)授權(quán)的服務(wù)器修改了一個(gè)域后,,DNS NOTIFY信息被發(fā)送出去。此信息將會(huì)發(fā)給列在域NS記錄上的服務(wù)器(除了由SOA MNAME標(biāo)示的主域名服務(wù)器)和任何列在also-notify選項(xiàng)中的服務(wù)器,。
如果是explicit,,則notify將只發(fā)給列在also-notify中的服務(wù)器,。如果是no,就不會(huì)發(fā)出任何報(bào)文,。
notify選項(xiàng)也可能設(shè)定在zone語句中,,這樣它就替代了options中的notify 語句。如果notify會(huì)使得輔域名服務(wù)器崩潰,,就需要將此選項(xiàng)關(guān)閉。
recursion
如 果是yes,,并且一個(gè)DNS詢問要求遞歸,,那么服務(wù)器將會(huì)做所有能夠回答查詢請求的工作,。如果recursion是off的,,并且服務(wù)器不知道答案,,它將 會(huì)返回一個(gè)推薦(referral)響應(yīng)。默認(rèn)值是yes,。注意把recursion設(shè)為no,,不會(huì)阻止用戶從服務(wù)器的緩存中得到數(shù)據(jù),它僅僅阻止新數(shù)據(jù) 作為查詢的結(jié)果被緩存,。服務(wù)器的內(nèi)部操作還是可以影響本地的緩存內(nèi)容,如NOTIFY地址查詢,。
rfc2308-type1
設(shè)置成yes 將會(huì)使得服務(wù)器發(fā)送NS 記錄和關(guān)于negative answer 的SOA記錄,。默認(rèn)值為no。
注:BIND9 中還不支持,。
use-id-pool
此選項(xiàng)已經(jīng)不再使用,。BIND9 始終都是從池中分配請求ID的。
zone-statistics
如果是yes,,缺省情況下,,服務(wù)器將會(huì)收集在服務(wù)器所有域的統(tǒng)計(jì)數(shù)據(jù)。這些統(tǒng)計(jì)數(shù)據(jù)可以通過使用rndc stats來訪問,,rndc stats命令可以將這些信息轉(zhuǎn)儲(chǔ)到statistics-file定義的文件中去,。
use-ixfr
這個(gè)選項(xiàng)不再使用。如果需要針對一個(gè)或多個(gè)特殊的服務(wù)器關(guān)閉IXFR,,可以參考provide-ixfr中的內(nèi)容,。
provide-ixfr
參閱中關(guān)于provide-ixfr的陳述,。
request-ixfr
參閱關(guān)于request-ixfr的陳述。
treat-cr-as-space
這 個(gè)選項(xiàng)應(yīng)用于BIND8中,,使服務(wù)器正確處理回車(”\r”)字符,,就象其它的空格或tab字符一樣。這樣可以便于在unix系統(tǒng)上加載由NT或DOS系 統(tǒng)生成的域文件,。在BIND9中,UNIX”的\n”和DOS 的”\r\n”都可以正確處理為換新行,,這個(gè)選項(xiàng)就被忽略了。
additional-from-auth
additional-from-cache
當(dāng)回答具有additional數(shù)據(jù)的請求,,或者當(dāng)在CNAME 和DNAME串的后面時(shí),,這些選項(xiàng)控制一個(gè)權(quán)威服務(wù)器的操作。
當(dāng)這兩個(gè)選項(xiàng)都被設(shè)成yes(默認(rèn)狀態(tài)),,并且查詢的是授權(quán)的數(shù)據(jù)(這個(gè)域就配置在本地服務(wù)器中)時(shí),,回答中的additional部分的數(shù)據(jù)將使用來自于其它授權(quán)域和cache。
在許多情況下這是不需要的,,比如在緩存內(nèi)容的正確性受到懷疑的情況下,,或是在某些輔域可能被非法修改的服務(wù)器。還有,,避免對這些additional數(shù)據(jù)的搜索將會(huì)加速服務(wù)器運(yùn)轉(zhuǎn),。
例如,如果一個(gè)查詢需要主機(jī)foo.example.com的MX記錄,,找到的記錄是"MX 10
mail.example.net",,如果知道的話, mail.example.net的地址記錄(A,A6 和AAAA)也會(huì)被提供出來。把選項(xiàng)設(shè)置為no,,則禁止了這種操作,。
這些選項(xiàng)用于授權(quán)的服務(wù)器,或者是授權(quán)的視圖中,。把它們設(shè)成no,,但沒有同時(shí)設(shè)置recursion no,將會(huì)使得服務(wù)器忽略這些選項(xiàng),,并記錄一個(gè)警告日志,。
設(shè)定additional-from-cache為no實(shí)際上針對additional信息的查詢和正在響應(yīng)的查詢,都禁止了緩存的使用,。這常常使用在一臺授權(quán)的服務(wù)器中,,因?yàn)樵谶@里緩存數(shù)據(jù)的正確性非常重要。
當(dāng) 一臺域名服務(wù)器不提供遞歸查詢時(shí),,并且查詢的名稱并不在本地域中,,一般會(huì)對根服務(wù)器或者其他已知的上級服務(wù)器回答"upwards referral(向上推薦)"。既然在向上查詢中的數(shù)據(jù)來自于緩存,,那么當(dāng)additional-from-cache被設(shè)定為no時(shí),,服務(wù)器就不能提 供向上推薦,。相反,它會(huì)使用REFUSED(拒絕)回答這些查詢,。因?yàn)橄蛏贤扑]不是在用戶解析過程中需要的,,所以就不會(huì)出任何問題。
match-mapped-addresses
如 果是yes,,那么一個(gè)ipv4映射成的ipv6地址就會(huì)匹配任何地址匹配表中能匹配于對應(yīng)的ipv4 地址的記錄,。打開這個(gè)選項(xiàng),對于運(yùn)行了ipv6的linux系統(tǒng)有時(shí)非常有用,,這樣通過地址映射,,就可以使得ipv4的TCP連接(如域傳送)實(shí)現(xiàn)在 Ipv6的soket上,因?yàn)榈刂菲ヅ淞斜硎墙oIpv4設(shè)計(jì)的,。
 
B. 轉(zhuǎn)發(fā)
轉(zhuǎn)發(fā)功能可以用來在一些服務(wù)器上產(chǎn)生一個(gè)大的緩存,從而減少到外部服務(wù)器鏈路上的流量,。它可以使用在和internet沒有直接連接的內(nèi)部域名服務(wù)器上,,用來提供對外部域名的查詢。只有當(dāng)服務(wù)器是非授權(quán)的,,并且緩存中沒有相關(guān)記錄時(shí),,才會(huì)進(jìn)行轉(zhuǎn)發(fā)。
forward
此選項(xiàng)只有當(dāng)forwarders列表中有內(nèi)容的時(shí)候才有意義,。當(dāng)值是First,,默認(rèn)情況下,使服務(wù)器先查詢設(shè)置的forwarders,,如果它沒有得到回答,,服務(wù)器就會(huì)自己尋找答案。如果設(shè)定的是only,,服務(wù)器就只會(huì)把請求轉(zhuǎn)發(fā)到其它服務(wù)器上去,。
forwarders
設(shè)定轉(zhuǎn)發(fā)使用的ip地址。默認(rèn)的列表是空的(不轉(zhuǎn)發(fā)),。轉(zhuǎn)發(fā)也可以設(shè)置在每個(gè)域上,,這樣全局選項(xiàng)中的轉(zhuǎn)發(fā)設(shè)置就不會(huì)起作用了。用戶可以將不同的域轉(zhuǎn)發(fā)到服務(wù)器上,,或者對不同的域可以實(shí)現(xiàn)forward only或first的不同方式,,也可以根本就不轉(zhuǎn)發(fā)。
 
C. 訪問控制
可以根據(jù)用戶請求使用的IP地址進(jìn)行限制,。
allow-notify
設(shè)定哪個(gè)主機(jī)上的輔域(不包括主域)已經(jīng)進(jìn)行了修改,。allow-notify也可以在zone語句中設(shè)定,這樣全局options中的allow-notify選項(xiàng)在這里就不起作用了,。但它只對輔域有效,。如果沒有設(shè)定,,默認(rèn)的是只從主域發(fā)送notify信息。
allow-query
設(shè)定哪個(gè)主機(jī)可以進(jìn)行普通的查詢,。allow-query也能在zone語句中設(shè)定,,這樣全局options中的allow-query選項(xiàng)在這里就不起作用了。默認(rèn)的是允許所有主機(jī)進(jìn)行查詢,。
allow-recursion
設(shè)定哪臺主機(jī)可以進(jìn)行遞歸查詢,。如果沒有設(shè)定,缺省是允許所有主機(jī)進(jìn)行遞歸查詢,。注意禁止一臺主機(jī)的遞歸查詢,,并不能阻止這臺主機(jī)查詢已經(jīng)存在于服務(wù)器緩存中的數(shù)據(jù)。
allow-v6-synthesis
設(shè)定哪臺主機(jī)能接收對ipv6的響應(yīng),。
allow-transfer
設(shè)定哪臺主機(jī)允許和本地服務(wù)器進(jìn)行域傳輸,。allow-transfer也可以設(shè)置在zone語句中,這樣全局options中的allow-transfer選項(xiàng)在這里就不起作用了,。如果沒有設(shè)定,,默認(rèn)值是允許和所有主機(jī)進(jìn)行域傳輸。
blackhole
設(shè)定一個(gè)地址列表,,服務(wù)器將不會(huì)接收來自這個(gè)列表的查詢請求,,或者解析這些地址。從這些地址來的查詢將得不到響應(yīng),。默認(rèn)值是none,。
 
D. 接口
接口和端口(服務(wù)器回答來自于此的詢問)可以使用listen-on選項(xiàng)來設(shè)定。listen-on使用可選的端口和一個(gè)地址匹配列表(address_match_list),。服務(wù)器將會(huì)監(jiān)聽所有匹配地址列表中所允許的端口,。如果沒有設(shè)定端口,就使用默認(rèn)的53,。
允許使用多個(gè)listen-on語句,。例如:
listen-on{ 5.6.7.8; };
listen-on port 1234 { !1.2.3.4; 1.2/16; };
將在5.6.7.8 的ip地址上打開53端口,在除了1.2.3.4的1.2 網(wǎng)段上打開1234 端口,。
如果沒有設(shè)定listen-on,,服務(wù)器將在所有接口上監(jiān)聽端口53。
listen-on-v6選項(xiàng)用來設(shè)定監(jiān)聽進(jìn)入服務(wù)器的ipv6請求的端口,。
服務(wù)器并不象在ipv4中那樣對每個(gè)IPV6端口地址綁定一個(gè)獨(dú)立的socket,。相反,它一直監(jiān)聽ipv6通配的地址,。這樣,,對于listen-on-v6語句唯一的address_match_list的參數(shù)就是:{ any; }和{ none;}
多個(gè)listen-on-v6選項(xiàng)可以用來監(jiān)聽多個(gè)端口:
listen-on-v6 port 53 { any; };
listen-on-v6 port 1234 { any; };
要使服務(wù)器不監(jiān)聽任何ipv6地址,使用:
listen-on-v6 { none; };
如果沒有設(shè)定listen-on-v6語句,,服務(wù)器將不會(huì)監(jiān)聽任何ipv6地址,。
 
E. 查詢地址
如果服務(wù)器查不到要解析的地址,,它將會(huì)查詢其它域名服務(wù)器。query-source可以用來設(shè)定這類請求所使用的地址和端口,。對于使用ipv6發(fā)送的查詢,,有一個(gè)獨(dú)立的query-source-v6選項(xiàng)。如果address是*或者被省略了,,則將會(huì)使用一個(gè)通配的IP地址
(INADDR ANY),。如果port是*或者被省略了,則將會(huì)使用一個(gè)隨機(jī)的大于1024的端口,。
默認(rèn)為:
query-source address * port *;
query-source-v6 address * port *;
注:query-source選項(xiàng)中設(shè)置的地址是同時(shí)用于UDPTCP兩種請求的,,但是port僅僅用
UDP請求。TCP請求使用的是隨機(jī)的大于1024的端口,。
 
F. 域傳輸
BIND有適當(dāng)?shù)臋C(jī)制來簡化域傳輸,,并限定系統(tǒng)傳輸?shù)呢?fù)載量。下列設(shè)定應(yīng)用于域傳輸:
also-notify
定 義一個(gè)用于全局的域名服務(wù)器IP地址列表,。無論何時(shí),,當(dāng)一個(gè)新的域文件被調(diào)入系統(tǒng),域名服務(wù)器都會(huì)向這些地址,,還有這些域中的NS記錄發(fā)送NOTIFY信 息。這有助于更新的域文件盡快在相關(guān)的域名服務(wù)器上收斂同步,。如果一個(gè)also-notify列表配置在一個(gè)zone語句中,,全局options中的 also-notify語句就會(huì)在這里失效。當(dāng)一個(gè)zone-notify語句被設(shè)定為no,,系統(tǒng)就不會(huì)向在全局中also-notify列表中的IP地 址發(fā)送NOTIFY消息,。缺省狀態(tài)為空表(沒有全局通知列表)。
max-transfer-time-in
比設(shè)定時(shí)間更長的進(jìn)入的域傳輸將會(huì)被終止,。默認(rèn)值是120分鐘(2小時(shí)),。
max-transfer-idle-in
在設(shè)定時(shí)間下沒有任何進(jìn)展的進(jìn)入域傳輸將會(huì)被終止。默認(rèn)為60分鐘(1小時(shí)),。
max-transfer-time-out
運(yùn)行時(shí)間比設(shè)定的時(shí)間長的發(fā)出的域傳輸將會(huì)被終止,。默認(rèn)為120分鐘(2小時(shí)).
max-transfer-idle-out
在設(shè)定時(shí)間下沒有任何進(jìn)展的發(fā)出的域傳輸將會(huì)被終止。默認(rèn)為60分鐘(1小時(shí)),。
serial-query-rate
輔域名服務(wù)器將會(huì)定時(shí)查詢主域名服務(wù)器,,來確定域的串號是否改變。每個(gè)查詢將會(huì)占用一些輔域名服務(wù)器網(wǎng)絡(luò)帶寬,。為限制占用的帶寬,,BIND9可以限制每個(gè)查詢發(fā)送的頻率。serial-query-rate的值是一個(gè)整數(shù),,就是每秒能發(fā)送的最大查詢數(shù),。默認(rèn)值為20,。
serial-queries
在BIND8中, serial-queries選項(xiàng)設(shè)定了在任何時(shí)候允許達(dá)到的最大的并發(fā)查詢數(shù)。BIND9不限制串號查詢的數(shù)量并忽略了serial-queries選項(xiàng),。它會(huì)使用serial-query-rate選項(xiàng)來限制查詢的頻率,。
transfer-format
域傳輸可以用兩種不同格式,one-answer和many-answer,。transfer-format選項(xiàng)使用在主域名服務(wù)器上,,用來確定發(fā)送哪種格式。one-answer在每個(gè)資源記錄傳輸中使用一個(gè)
DNS消息,。many-answer則將盡可能多的資源記錄集中在一個(gè)消息中,。many-answer是
更加有效的,但只有相對比較新的輔域名服務(wù)器才支持它,,如BIND9,、BIND8.x 和打了補(bǔ)丁的BIND4.9.5。默認(rèn)的設(shè)置為many-answer,。使用server語句中的相關(guān)選項(xiàng),,可以替代全局選項(xiàng)中的transfer-format設(shè)置。
transfers-in
可以同時(shí)運(yùn)行的進(jìn)入的域傳輸?shù)淖畲笾?。默認(rèn)值為10,。增加transfers-in的值,可以加速輔域的收斂速度,,但也可能增加本地系統(tǒng)的負(fù)載,。
transfers-out
可以同時(shí)運(yùn)行的發(fā)出的傳輸?shù)淖畲笾怠3^限定的域傳輸請求將會(huì)被拒絕,。默認(rèn)值為10,。
transfers-per-ns
從一臺指定的遠(yuǎn)程域名服務(wù)器,同時(shí)進(jìn)行的進(jìn)入的域傳輸?shù)淖畲笾?。默認(rèn)值2,。增加
transfers-per-ns的值,會(huì)加速輔域的收斂速度,,但也可能增加遠(yuǎn)程系統(tǒng)的負(fù)載,。使用
server語句中的transfer短語可以替代全局選項(xiàng)中的transfers-per-ns。
transfer-source
transfer- source決定在從外部域名服務(wù)器上得到域傳送數(shù)據(jù)時(shí),,選哪個(gè)本地的ip地址使用在IPV4的TCP連接中,。它可以選定IPV4的源地址,和可選的 UDP端口,,用于更新的查詢和轉(zhuǎn)發(fā)的動(dòng)態(tài)更新,。不過不做設(shè)置,它會(huì)缺省挑選一個(gè)系統(tǒng)中的地址(常常是最靠近遠(yuǎn)程終端服務(wù)器的接口地址)。但這個(gè)地址必須已 經(jīng)配置在遠(yuǎn)程終端的allow-tranfer選項(xiàng)中,,才能進(jìn)行域傳送,。此語句為所有的域設(shè)定了transfer-source,但如果view或 zone中也使用了transfer-source語句,,則全局選項(xiàng)中的配置就在這里失效了,。
transfer-source-v6
和transfer-source一樣,只是域傳輸是通過IPV6執(zhí)行的,。
notify-source
notify-source確定使用哪些本地的源地址和可選的UDP端口,,用于發(fā)送NOTIFY消息。這個(gè)地址必須在輔域名服務(wù)器的master域或在allow-notify中設(shè)置,。它會(huì)為所有域設(shè)定
notify-source, 但如果view或zone中也使用了notify-source語句,,則全局選項(xiàng)中的配置就在這里失效了。
notify-source-v6
與notify-source類似,,但應(yīng)用于ipv6地址的notify報(bào)文的發(fā)送,。
 
G. 操作系統(tǒng)資源限制
可以限制服務(wù)器對許多系統(tǒng)資源的使用。這些就是通過調(diào)節(jié)資源限制的數(shù)值來完成的,。例如,,1G可以代替1073741824,限定一個(gè)十億字節(jié)的限制,。Unlimited 要求不限制使用,,或者最大可用量。Default 將會(huì)使用服務(wù)器啟動(dòng)時(shí)的缺省值,。
下列選項(xiàng)設(shè)定了域名服務(wù)器進(jìn)程的操作系統(tǒng)資源占用限制,。一些操作系統(tǒng)可能不支持一些
或所有的限制。在這樣的系統(tǒng)中,,當(dāng)使用不被支持的限制時(shí),會(huì)產(chǎn)生一個(gè)告警,。
coresize
core dump文件的最大值尺寸,。默認(rèn)值為default
datasize
服務(wù)器可以使用的最大數(shù)據(jù)內(nèi)存量。默認(rèn)值為default,。這是一個(gè)在服務(wù)器系統(tǒng)內(nèi)存中
已經(jīng)設(shè)置了的參數(shù),。如果服務(wù)器要超過這個(gè)限制的內(nèi)存量,則會(huì)失敗,,這將使服務(wù)器不能
提供DNS服務(wù),。所以,這個(gè)選項(xiàng)作為一種限制服務(wù)器所使用的內(nèi)存量的方式就不太有效,,但是它能夠?qū)⒉僮飨到y(tǒng)設(shè)置的太小的缺省數(shù)據(jù)尺寸增大,。如果要限制服務(wù)器使用的內(nèi)存量,可以使用max-cache-size和recursive-clients選項(xiàng)。
files
服務(wù)器可以同時(shí)打開的最大文件數(shù),。默認(rèn)是unlimited,。
stacksize
服務(wù)器可以使用最大的堆棧內(nèi)存量。默認(rèn)值為default,。
 
H. 服務(wù)器資源限制
下列選項(xiàng)設(shè)定了服務(wù)器資源使用限制,,這是由域名服務(wù)內(nèi)部做的而不是操作系統(tǒng)設(shè)定的。
max-ixfr-log-size
此選項(xiàng)比較老,;它由BIND8兼容接受或者忽略,。
recursive-clients
服務(wù)器同時(shí)為用戶執(zhí)行的遞歸查詢的最大數(shù)量。默認(rèn)值1000,,因?yàn)槊總€(gè)遞歸用戶使用許多位內(nèi)存,,一般為20KB,主機(jī)上的recursive-clients選項(xiàng)值必須根據(jù)實(shí)際內(nèi)存大小調(diào)整,。
tcp-clients
服務(wù)器同時(shí)接受的TCP連接的最大數(shù)量,,默認(rèn)值100。
max-cache-size
服務(wù)器緩沖使用的最大內(nèi)存量,,用比特表示,。但在緩存數(shù)據(jù)的量達(dá)到這個(gè)界限,服務(wù)器將會(huì)使記錄提早過期這樣限制就不會(huì)被突破,。在多視圖的服務(wù)器中,,限制分別使用于每個(gè)視圖的緩存。默認(rèn)值沒有限制,,意味著只有當(dāng)總的限制被突破的時(shí)候記錄才會(huì)被緩存清除,。
 
I. 周期性任務(wù)間隔
cleaning-interval
服務(wù)器將在cleaning-interval的每一時(shí)間中從緩存中清除過期的資源記錄。默認(rèn)為60分鐘,,如果設(shè)置為0,,就不會(huì)有周期性清理。
heartbeat-interval
服務(wù)器將會(huì)為所有標(biāo)記dialup的域運(yùn)行維護(hù)任務(wù),,無論它的間隔在何時(shí)到期,。默認(rèn)為60分鐘,合理值不超過1天(1440 分鐘),。如果設(shè)定為0,不會(huì)為這些域產(chǎn)生域維護(hù),。
interface-interval
服務(wù)器將在每個(gè)interface-interval時(shí)間掃描網(wǎng)絡(luò)接口表。默認(rèn)為60分鐘,。如果設(shè)置為0,,僅當(dāng)配置文件被加載時(shí)才會(huì)進(jìn)行接口掃描。在掃描之后,,所有新接口上的監(jiān)聽器將會(huì)被打開(listen-on配置使用的接口),。關(guān)閉接口上的監(jiān)聽器將會(huì)被清除。
statistics-interval
域名服務(wù)器統(tǒng)計(jì)將會(huì)在每個(gè)statistics-interval時(shí)刻被記入日志。默認(rèn)值60分鐘,,如果設(shè)為0,,就沒有統(tǒng)計(jì)數(shù)據(jù)記入日志。
注意:BIND9 不支持
 
J. 拓?fù)?/strong>
當(dāng) 服務(wù)器從一個(gè)域名服務(wù)器列表中選擇一個(gè)域名服務(wù)器查詢時(shí),,這些域名服務(wù)器是沒有什么不同的,,但是服務(wù)器會(huì)先選擇在拓?fù)浣Y(jié)構(gòu)上距離自己最近的服務(wù)器去做解 析。拓?fù)湔Z句使用一個(gè)地址匹配列表并且以一個(gè)特殊方式解釋它,。每個(gè)頂層列表元素被賦了一段距離,,非否定元素得到它們在列表中的位置的距離,匹配距離表的開 頭越近,,它離服務(wù)器的距離就越小,。否定匹配元素將會(huì)從服務(wù)器分配最大距離;沒有匹配的地址將會(huì)得到一個(gè)比任何非否定表元素都遠(yuǎn)的并且比任何否定元素近的距 離,。例如:
topology {
10/8;
!1.2.3/24;
{ 1.2/16; 3/8; };
};
最優(yōu)先網(wǎng)段10的服務(wù)器,,然后是在網(wǎng)絡(luò)1.2.0.0(網(wǎng)絡(luò)掩碼255.255.0.0)和3.0.0.0(網(wǎng)絡(luò)掩
碼255.0.0.0);再就是沒列出來的,,但是沒有否定的網(wǎng)段,。否定的網(wǎng)段1.2.3 的主機(jī)(網(wǎng)絡(luò)掩
碼255.255.255.0)。
默認(rèn)拓?fù)錇?
topology { localhost; localnets; };
注意:BIND9不支持拓?fù)溥x項(xiàng),。
 
K. sortlist 語句
對 一個(gè)DNS詢問的響應(yīng)包括形成一個(gè)資源記錄集(RR集)的多資源記錄(RRs),。名稱服務(wù)器將會(huì)以不確定的順序返回在RRset中的RRs(參見 rrset-order語句)。用戶端的解答器會(huì)重新適當(dāng)?shù)呐帕?,也就是說,,使用任何在本地網(wǎng)上的地址優(yōu)先于其他的地址。盡管如此,,不是所有的解答器可以 做到或者正確配置,。當(dāng)用戶使用一個(gè)本地服務(wù)器的時(shí)候,服務(wù)器可以基于用戶地址進(jìn)行分類,。這只要求配置名稱服務(wù)器,,而不是所有用戶端。
sortlist 語句(如下)使用一個(gè)地址匹配表甚至比拓?fù)湔Z句還要特殊的解釋它,。每個(gè)在sortlist 的頂層語句必須自己就是一個(gè)清楚的擁有一個(gè)或兩個(gè)元素的地址匹配表。每個(gè)頂級表的第一個(gè)元素(可能是一個(gè)IP地址,,一個(gè)IP前綴,,一個(gè)ACL名稱或者一個(gè) 地址匹配表)與查詢源地址進(jìn)行匹配檢查直到找到匹配的地址。
一旦查詢的源地址 被匹配,,如果頂級語句只包括一個(gè)元素的話,,真正的匹配于源地址的原始元素就被用來選擇地址,對應(yīng)的轉(zhuǎn)移到了響應(yīng)的開始。如果語句是兩個(gè)元素的表,,那么第二 個(gè)元素遵照拓?fù)湔Z句中地址匹配表的方式進(jìn)行處理,。每個(gè)頂級元素被賦予一個(gè)距離和與響應(yīng)的開頭距離最近的地址。
在 下列例子中,,任何來自于任何主機(jī)地址的查詢將會(huì)得到本地網(wǎng)上第一首選地址的響應(yīng),。下一個(gè)首選地址在網(wǎng)段192.168.1/24上,既可以在 192.168.2/24或192.168.3/24網(wǎng)段之后,。從一臺在192.168.1/24網(wǎng)段上的主機(jī)收到的查詢將會(huì)優(yōu)先本網(wǎng)段和 192.168.2/24和192.168.3/24網(wǎng),。而來自192.168.4/24或192.168.5/24上主機(jī)的查詢將只優(yōu)先直連的網(wǎng)段。
sortlist {
{ localhost; //IF 主機(jī)名
{ localnets;
192.168.1/24; //THEN 在下列網(wǎng)中最適合
{ 192.168.2/24; 192.168.3/24; }; }; }; //IF 在C類192.168.1
{ 192.168.1/24; //THEN 使用.1, 或.2 或.3
{ 192.168.2/24; 192.168.3/24; }; }; };
{ 192.168.2/24; //IF C類192.168.1
{ 192.168.2/24; //THEN使用2, 或.1 或.3
{ 192.168.1/24; 192.168.3/24; }; }; };
{ 192.168.3/24; //IF 在C類192.168.3
{ 192.168.1/24; 192.168.2/24; }; }; }; //THEN使用.3 或.1 或.2
};
};
下 個(gè)例子將給出一個(gè)本地主機(jī)和直接連接到網(wǎng)上的主機(jī)的合理的狀態(tài)(behavior),。它很象BIND4.9.x分類的地址狀態(tài),。從本地主機(jī)發(fā)給查詢的響應(yīng) 支持任何直接連接的網(wǎng)絡(luò),從其他直接連接網(wǎng)絡(luò)上的主機(jī)發(fā)送給查詢的響應(yīng)優(yōu)先在相同網(wǎng)段上的地址,。對其他查詢的響應(yīng)沒有分類,。
sortlist {
{ localhost; localnets; };
{ localnets; };
};
 
L. RRset 排序
當(dāng)多重記錄在一個(gè)解答中被返回的時(shí)候,設(shè)定在響應(yīng)中的記錄順序是很有用的.,。
rrset-order語句允許對在多記錄響應(yīng)下的記錄順序的設(shè)定,。參見sortlist語句。
一個(gè)order_spec定義如下:
[ class class_name ][ type type_name ][ name "domain_name"] order ordering
如果沒有設(shè)定類,,默認(rèn)值為ANY,。如果沒有設(shè)定類型,默認(rèn)值為ANY,。如果沒有設(shè)定
名稱,,默認(rèn)值為”*”。
合法的排序值是:
fixed:記錄以它們在域文件中的順序
random:記錄以隨機(jī)順序被返回
cyclic:記錄以環(huán)順序被返回
例如:
rrset-order {
class IN type A name "host.example.com" order random;
order cyclic;
};
將會(huì)使得任何處于IN類中的A類記錄的響應(yīng)以隨機(jī)順序返回,,IN 類以"host.example.com"為后綴,。其他的記錄以循環(huán)記錄被返回。
如果多重rrset-order語句出現(xiàn),,它們并不組合在一起,,只適用于最后一個(gè)條。
注意:rrset-order語句不被BIND9支持,,BIND9目前只支持"random-cyclic"排序,,服務(wù)器隨機(jī)選擇RRset集中的開始點(diǎn),有順序返回在那個(gè)點(diǎn)開始的記錄,。如果需要的話圍繞RRset
結(jié)尾,。
 
M. 合成的IPV6響應(yīng)
許 多現(xiàn)存的子域解答器支持ipv6的DNS查詢(定義在RFC1986 中,使用AAAA 記錄進(jìn)行前向查詢和ip6.int域中的”nibble labels”進(jìn)行反向查詢)但是不支持RFC2874-style 查詢(使用A6記錄和在ip6.arpa 中的二進(jìn)制標(biāo)簽)對于那些希望繼續(xù)使用子域解答器而不是轉(zhuǎn)到
BIND9 lightweight 解答器的人來說,,BIND 9提供一種自動(dòng)把RFC1886-型查詢轉(zhuǎn)換成
RFC2874-型查詢的方法,。返回合成的AAAA和PTR記錄,。
這個(gè)性質(zhì)默認(rèn)下是無效的,可以在分用戶基礎(chǔ)上添加一個(gè)allow-v6-synthesis
{ address_match_list };子句到選項(xiàng)或者視圖語句中,。當(dāng)它被激活時(shí),,遞歸AAAA查詢使服
務(wù)器先進(jìn)行A6查詢,如果失敗,,執(zhí)行AAAA查詢,。不管哪個(gè)成功,結(jié)果都作為一個(gè)合成的AAAA 記錄返回,。
類 似的,,在ip6.int中的遞歸PTR查詢將會(huì)促使一個(gè)ip6.arpa查詢使用二進(jìn)制標(biāo)簽,如果失敗,,執(zhí)行另一個(gè)在ip6.int中的查詢,,結(jié)果將會(huì)以 在ip6.int中的合成PTR記錄返回。合成記錄的TTL 為0值,。合成響應(yīng)的DNSSEC確認(rèn)當(dāng)前并不被支持,;也沒有了AD標(biāo)記。
注:allow-v6-synthesis僅為提供了遞歸服務(wù)的用戶執(zhí)行,。
 
N. 調(diào)諧
lame-ttl
設(shè)定緩存有問題服務(wù)器指示的秒數(shù),。0使不緩存(不被推薦)。默認(rèn)值600(10 分鐘),。最大值1800(30 分鐘),。
max-ncache-ttl
為降低網(wǎng)絡(luò)流量和提升服務(wù)器存儲(chǔ)否定回答的性能。max-ncache-ttl以秒為單位設(shè)定這些回答的保存時(shí)間,。默認(rèn)max-ncache-ttl是10800秒(3小時(shí)),。max-ncache-ttl不能超過7天,如果設(shè)成一個(gè)更大的值,,則將會(huì)被自動(dòng)減為7天,。
max-cache-ttl
max-cache-ttl設(shè)定了服務(wù)器儲(chǔ)存普通(肯定)答案的最大時(shí)間。默認(rèn)值一周(7 天),。
min-roots
一個(gè)請求要求的最小的根服務(wù)器數(shù)量,。默認(rèn)為2。
注意:不被BIND9 支持
sig-validity-interval
設(shè)定未來作為動(dòng)態(tài)更新結(jié)果的自動(dòng)生成的DNSSEC信號過期的天數(shù),。默認(rèn)是30天,。信號的初始時(shí)間無條件設(shè)為在當(dāng)前時(shí)間的前一個(gè)小時(shí),以允許一個(gè)有限的時(shí)鐘偏差,。
min-refresh-time
max-refresh-time
min-retry-time
max-retry-time
這些選項(xiàng)控制了服務(wù)器在更新一個(gè)域(詢問SOA變化)或者重試失敗的傳輸時(shí)的狀態(tài),。通常域的SOA值(但是這些值是由主服務(wù)器設(shè)定的)幾乎不給此級服務(wù)器管理者對它們內(nèi)容的控制。
這些選項(xiàng)允許管理者為每域,,每個(gè)視圖或者全局設(shè)定一個(gè)最小或者最大更新和重試時(shí)間,。這些選項(xiàng)對于此級和根域是有效的并且設(shè)定SOA更新和重試時(shí)間。
 
O. 統(tǒng)計(jì)文件
由BIND9產(chǎn)生的統(tǒng)計(jì)文件和由BIND8產(chǎn)生的類似,,但不完全一樣,。
一個(gè)統(tǒng)計(jì)數(shù)據(jù)開始于行+++ Statistics Dump +++ (973798949),這里出現(xiàn)的數(shù)字是一個(gè)標(biāo)準(zhǔn)UNIX型的時(shí)間戳,,從1970年1月1日開始以秒計(jì),。緊跟這行的是一系列行,包括一個(gè)
記數(shù)器類型,,記數(shù)器值,,任意的域名和任意的視圖名,沒有所列的視圖和域的行是整個(gè)服務(wù)器的整體統(tǒng)計(jì),。具有域和視圖的行以給定的視圖和域命名(對默認(rèn)的視圖來說視圖名缺省),。
這個(gè)統(tǒng)計(jì)數(shù)據(jù)以行--- Statistics Dump ---(973798949)結(jié)束,在這數(shù)字是和開始行的數(shù)字一樣的,。Success對服務(wù)器或者域做出的成功查詢,。定義一個(gè)成功查詢是查詢返回非錯(cuò)誤響應(yīng)而不是返回推薦響應(yīng)。
Referral:導(dǎo)致推薦響應(yīng)查詢
Nxrrset:導(dǎo)致沒有數(shù)據(jù)的非錯(cuò)誤查詢的響應(yīng)
Nxdomain:導(dǎo)致NXDOMAIN 的查詢數(shù)量
Recursion:使服務(wù)器運(yùn)行遞歸以找出最后答案的查詢數(shù)量
Failure:導(dǎo)致失敗的查詢數(shù)量
7.server語句
服務(wù)器(server)語句的定義和使用:
server ip_addr {
[ bogus yes_or_no ; ]
[ provide-ixfr yes_or_no ; ]
[ request-ixfr yes_or_no ; ]
[ edns yes_or_no ; ]
[ transfers number ; ]
[ transfer-format ( one-answer | many-answers ) ; ]]
[ keys { string ; [ string ; [...]] } ; ]
};
服務(wù)器語句定義了與遠(yuǎn)程服務(wù)器相關(guān)的性質(zhì),。
服務(wù)器語句可以出現(xiàn)在配置文件的頂層或者在視圖語句的內(nèi)部,。如果一個(gè)視圖語句包括一個(gè)或更多的服務(wù)器語句,只有那些視圖語句內(nèi)的被應(yīng)用到視圖和任何頂層的語句被忽略,。如果一個(gè)視圖不包括服務(wù)器語句,,則任何頂層服務(wù)器語句都被當(dāng)做默認(rèn)。
bogus
如果你發(fā)現(xiàn)一臺遠(yuǎn)端服務(wù)器正在輸出錯(cuò)誤數(shù)據(jù),,使用bogus標(biāo)記它,,將會(huì)阻止對它的更多查詢。Bogus的默認(rèn)值為no,。
provide-ixfr
provide- ixfr子句決定本地服務(wù)器是否作為主域名服務(wù)器,,當(dāng)遠(yuǎn)端的一臺輔域名服務(wù)器要求的時(shí)候,響應(yīng)增量的域傳輸,。如果設(shè)定成yes,,增量傳輸將會(huì)在任何可能的 時(shí)候進(jìn)行。如果設(shè)定為no,,所有對遠(yuǎn)端服務(wù)器的傳輸都將是非增量的,。如果不設(shè)置,在視圖或者全局選項(xiàng)塊中的provide-ixfr選項(xiàng)的值將使用默認(rèn) 值,。
request-ixfr
request-ixfr子句決定本地服務(wù)器是否作為輔域名服務(wù)器,,將會(huì)向給定的遠(yuǎn)端服務(wù)器(一般為主域名服務(wù)器)發(fā)送域的增量傳送請求。如果不設(shè)置,,在視圖或者全局選項(xiàng)塊中的provide-ixfr選項(xiàng)的值將使用默認(rèn)值,。
對 不支持IXFR的服務(wù)器的IXFR請求將會(huì)自動(dòng)轉(zhuǎn)回AXFR,。這樣,就不需要用手工列出哪個(gè)服務(wù)器支持IXFR哪個(gè)不支持,。全局默認(rèn)值yes 一直會(huì)起作用,。provide-ixfr和request-ixfr子句的作用是使IXFR無效,甚至當(dāng)主域名服務(wù)器和輔域名服務(wù)器宣布支持它,。
例如當(dāng)使用IXFR時(shí),,如果一臺服務(wù)器受災(zāi)并且崩潰或者破壞了數(shù)據(jù)。
edns
edns子句決定本地服務(wù)器與遠(yuǎn)端服務(wù)器通訊時(shí)是否使用EDNS.默認(rèn)值為yes,。
服務(wù)器支持兩類域傳輸方式:
第一類,,one-answer,每個(gè)源數(shù)據(jù)傳輸使用一個(gè)DNS報(bào)文,。
第二類,,many-answer,在一個(gè)報(bào)文中匯集了盡可能多的記錄,。多答案更有效率,,但是
只被BIND9,BIND8.X 和BIND4.9.5補(bǔ)丁版本識別,。你可以使用transfer-format選項(xiàng)為
一個(gè)服務(wù)器指定使用哪種方式,。如果transfer-format沒有被指定,就使用options里的
語句指定的transfer-format,。
transfers
transfers用來限定同時(shí)從特定服務(wù)器進(jìn)行數(shù)據(jù)傳輸?shù)挠虻臄?shù)量,。如果transfers子句沒有被指定,限制將會(huì)參照transfers-per-ns制定,。
keys
keys子句用來確定一個(gè)由key語句定義的key_id,,用于當(dāng)遠(yuǎn)端服務(wù)器通話時(shí)的安全處理。key語句必須在涉及它的服務(wù)器語句之前,。當(dāng)一個(gè)請求發(fā)送到遠(yuǎn)端服務(wù)器,,一個(gè)請求報(bào)文將會(huì)產(chǎn)生(使用本地指定鍵并附在報(bào)文上)。一個(gè)來自遠(yuǎn)端服務(wù)器的請求不要求被這個(gè)鍵標(biāo)記,。
盡管鍵子句語法支持多鍵,但是目前每個(gè)服務(wù)器只支持一個(gè)鍵.
 
8. trusted-keys語句
trusted-keys語句的定義和使用:
trusted-keys {
string number number number string ;
[ string number number number string ; [...]]
};
trusted- keys語句定義DNSSEC安全根,。當(dāng)非授權(quán)域的公共鍵是已知的但是卻不能安全的通過DNS得到,或者因?yàn)镈NS根域或者它的當(dāng)前域沒有被標(biāo)記時(shí)定義安 全根,。一旦一個(gè)鍵被設(shè)置成信任鍵,,它就被認(rèn)為是有效和安全的。解答器在所有存在于安全根次級域中的DNS 數(shù)據(jù)上嘗試DNSSEC有效性,。
trusted-keys語句能包含多重鍵入口,,每個(gè)由鍵的域名,旗幟,,協(xié)議算法和鍵數(shù)據(jù)的64進(jìn)位組成,。
 
9. view語句
視圖(view)語句的定義和使用:
view view_name [class] {
match-clients { address_match_list } ;
match-destinations { address_match_list } ;
match-recursive-only { yes_or_no } ;
[ view_option; ...]
[ zone-statistics yes_or_no ; ]
[ zone_statement; ...]
};
視圖是BIND9強(qiáng)大的新功能,,允許名稱服務(wù)器根據(jù)詢問者的不同有區(qū)別的回答DNS查詢。特別是當(dāng)運(yùn)行拆分DNS設(shè)置而不需要運(yùn)行多個(gè)服務(wù)器時(shí)特別有用,。每個(gè)視圖定義了一個(gè)將會(huì)在用戶的子集中見到的DNS名稱空間,。
根據(jù)用戶的源地址(“address_match_list”)匹配視圖定義的“match_clients”和用戶的目的地址(“address_match_list”)匹配視圖定義的” matach-destinations”。
如 果沒有被指定,,match-clients和match-destinations默認(rèn)匹配所有地址。一個(gè)視圖也可以做為match- recursive-only來指定,,意思是來自匹配用戶的遞歸請求將會(huì)匹配該視圖,。視圖語句的順序是很重要的,一位用戶的請求將會(huì)在它所匹配的第一個(gè)視 圖中被解答,。在視圖語句中定義的域只對匹配視圖的用戶是可用的,。通過在多個(gè)視圖中用相同名稱定義一個(gè)域,不同域數(shù)據(jù)可以傳給不同的用戶,。例如:在拆分 DNS設(shè)置中的”內(nèi)部”和”外部”用戶,。
許多在named.conf 的options里的語句中給出的選項(xiàng)也能在視圖語句中使用,僅僅用于使用哪個(gè)視圖解答請求的時(shí)候,。當(dāng)view-specific值沒有給出,,options里的語句值就使用默 認(rèn)值。域選項(xiàng)也可以在視圖語句中指定默認(rèn)值,;這些view-specific默認(rèn)值的優(yōu)先級高于那些在options里面配置的語句,。
視圖精確到類。如果沒有給定任何類,,就假設(shè)為IN類,。注意到所有非-IN視圖必須包含一個(gè)暗示域,因?yàn)橹挥蠭N類具有compiled-in默認(rèn)暗示,。
如果在配置文件中沒有view語句,,在IN類中就會(huì)自動(dòng)產(chǎn)生一個(gè)默認(rèn)視圖匹配于任何用戶,任何指定在配置文件的最高級的zone語句被看作是此默認(rèn)視圖的一部分,。如果存在外部view語句,,所有的域視圖必須會(huì)在view語句內(nèi)部產(chǎn)生。
 
這是一則典型的使用視圖語句運(yùn)行的拆分DNS設(shè)置
view "internal" {
match-clients { 10.0.0.0/8; };
// 應(yīng)該與內(nèi)部網(wǎng)絡(luò)匹配.
// 只對內(nèi)部用戶提供遞歸服務(wù).
// 提供example.com zone 的完全視圖
//包括內(nèi)部主機(jī)地址.
recursion yes;
zone "example.com" {
type master;
file "example-internal.db";
};
};
view "external" {
match-clients { any; };
// 拒絕對外部用戶提供遞歸服務(wù)
// 提供一個(gè)example.com zone 的受限視圖
// 只包括公共可接入主機(jī)
recursion no;
zone "example.com" {
type master;
file "example-external.db";
};
};
 
10. zone語句
Zone語句的定義和使用:
zone zone_name [class] [{
type ( master | slave | hint | stub | forward ) ;
[ allow-notify { address_match_list } ; ]
[ allow-query { address_match_list } ; ]
[ allow-transfer { address_match_list } ; ]
[ allow-update { address_match_list } ; ]
[ update-policy { update_policy_rule [...] } ; ]
[ allow-update-forwarding { address_match_list } ; ]
[ alsonotify
{ ip_addr [port ip_port] ; [ ip_addr [port ip_port] ; ... ] }; ]
[ check-names (warn|fail|ignore) ; ]
[ dialup dialup_option ; ]
[ file string ; ]
[ forward (only|first) ; ]
[ forwarders
{ ip_addr [port ip_port] ; [ ip_addr [port ip_port] ; ... ] }; ]
[ ixfr-base string ; ]
[ ixfr-tmp-file string ; ]
[ maintain-ixfr-base yes_or_no ; ]
[ masters [port ip_port] { 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 ; ]
[ pubkey number number number 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] ; ]
[ 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 ; ]
}];
 
A. 域文件類型
master
服務(wù)器有一個(gè)主域(控制域或主域)的配置文件拷貝,,能夠?yàn)橹峁┦跈?quán)解析服務(wù),。
slave
輔 域(也可以叫次級域)是主域的復(fù)制。主域名服務(wù)器定義了一個(gè)輔域或多個(gè)輔域(次級域聯(lián)系以更新域拷貝)的IP地址.默認(rèn)下,,傳輸是從服務(wù)器上的53端口進(jìn) 行的,;對所有的服務(wù)器來說這是可變的,通過設(shè)定一個(gè)在IP地址表前或者在IP地址之后基于每個(gè)服務(wù)器設(shè)定端口數(shù)字,。對主域名服務(wù)器的鑒別也能通過每個(gè)服務(wù) 器上的TSIG鍵來完成,。如果文件被指定了,,那么任何主域配置信息改變的時(shí)候就要復(fù)制文件,并且當(dāng)輔服務(wù)器重新啟動(dòng)的時(shí)候都會(huì)從主域名服務(wù)器上重新下載文 件,。這可能會(huì)導(dǎo)致帶寬的浪費(fèi)和服務(wù)器重新啟動(dòng)次數(shù)的增加,。
注意對每個(gè)服務(wù)器的數(shù)量眾多的域來說(數(shù)萬或者數(shù)十萬),最好使用兩級方式命名配置,。
例如:一個(gè)域的服務(wù)器example.com可能把域內(nèi)容放到一個(gè)叫做ex/example.com的文件中,,在此, ex/只是域名前兩個(gè)字符(如果把100K 的文件放入一個(gè)單獨(dú)的目錄中,大多數(shù)操作系統(tǒng)都會(huì)反應(yīng)緩慢)
stub
子根域與輔域類似,子域只復(fù)制主域的NS記錄而不是整個(gè)域,。根域不是DNS的一個(gè)標(biāo)準(zhǔn)部分,,它們是BIND運(yùn)行的特有性質(zhì)。
根 域可以用來避免在本機(jī)重新獲得該域的NS記錄,,代價(jià)是保存一個(gè)根域入口和一組named.conf名稱服務(wù)器地址,。這個(gè)用法在新設(shè)置中并不建議使 用,BIND9只在有限的情況下才支持它,。在BIND4/8中當(dāng)前的域傳輸包括來自當(dāng)前域的子根的NS記錄,。這表明,在某些情況下,,用戶可以為當(dāng)前域設(shè)置 只存在于控制服務(wù)器里的子根,。BIND9服務(wù)器從不以這種方式把來自不同域的數(shù)據(jù)混合。這樣的話,,如果一個(gè)BIND9控制服務(wù)器服務(wù)于一個(gè)已經(jīng)設(shè)定了子根 域的母域,,所有的當(dāng)前域的次級服務(wù)器都需要設(shè)定相同的子根域。子根域也可以用來作為一種促使一個(gè)特定域的解答使用一個(gè)授權(quán)服務(wù)器的特定系,。例如,在一個(gè)使 用RFC2157 地址的私有網(wǎng)絡(luò)上緩存域名服務(wù)器可以用子根域進(jìn)行設(shè)置,。
forward
一 個(gè)”轉(zhuǎn)發(fā)域”是一種在每個(gè)域基礎(chǔ)上進(jìn)行配置轉(zhuǎn)發(fā)的一種方式。forward 類型的域語句包括一個(gè)轉(zhuǎn)發(fā)語句和轉(zhuǎn)發(fā)列表,,都應(yīng)用于在域內(nèi)的由域名給出的查詢,。如果當(dāng)前沒有轉(zhuǎn)發(fā)器語句,就會(huì)給出空列表,,在域中就不會(huì)轉(zhuǎn)發(fā),,也就取消了所 有在選項(xiàng)中的轉(zhuǎn)發(fā)的作用。如果你要使用此種域來改變整體轉(zhuǎn)發(fā)選項(xiàng)的狀態(tài)(”forward first”,,”forward only”但是要用同一服務(wù)器作為是全局設(shè)置)你需要理解全局轉(zhuǎn)發(fā)器的特點(diǎn),。
hint
根名稱服務(wù)器在最初設(shè)置時(shí)指定使用一個(gè)”hint zone”。當(dāng)配置了”hint zone”的服務(wù)器
啟動(dòng)的時(shí)候,,它使用根線索的設(shè)置找到根的名稱服務(wù)器并得到根名稱服務(wù)器的最新表,。
如果沒有為IN類設(shè)定線索域,服務(wù)器使用一個(gè)compiled-in的默認(rèn)根服務(wù)器列表。
 
B.
域名后面的選項(xiàng)可以對應(yīng)類,。如果沒有指定類,,系統(tǒng)假定為IN類。這在大多數(shù)的情況下都是正確的,。
Hesiod類是以一個(gè)信息服務(wù)的名稱命名的,,信息服務(wù)源于MIT的Athena工程.。Hesiod類是用來在多系統(tǒng)數(shù)據(jù)之間共享信息,,如用戶,、組、打印機(jī)等等,?!盚S”對Hesiod來說是相同的類。
MIT發(fā)展的另一個(gè)是CHAOSnet,,一個(gè)在70年代中期創(chuàng)立的本地協(xié)議。它的域數(shù)據(jù)可以用CHAOS類設(shè)定,。
 
C. zone 選項(xiàng)
allow-notify
allow-query
allow-transfer
allow-update
設(shè)定哪臺主機(jī)允許為主域名服務(wù)器提交動(dòng)態(tài)DNS更新,。默認(rèn)為拒絕任何主機(jī)進(jìn)行更新。
update-policy
設(shè)定一個(gè)”簡單安全更新政策”,。
allow-update-forwarding
設(shè) 定哪個(gè)主機(jī)能夠向輔域名服務(wù)器的次級域提交動(dòng)態(tài)域名服務(wù)器更新,。默認(rèn)值為{ none; },意味著不能進(jìn)行動(dòng)態(tài)更新轉(zhuǎn)發(fā),。要使用更新轉(zhuǎn)發(fā),,設(shè)定allow-update-forwarding{ any; };設(shè)定其他值而不是{ none; } 或者{ any; } 是常常起反作用的,,因?yàn)橹饔蛎?wù)器擁有接入控制的權(quán)利,,而輔域名服務(wù)器沒有。
注意到激活一臺次級服務(wù)器上的更新轉(zhuǎn)發(fā)性質(zhì)可能使主域名服務(wù)器依賴基于不安全I(xiàn)P地址的接入控制而可能使之受到攻擊,。
also-notify
只 當(dāng)本域notify被激活時(shí)才是有意義的,。能夠收到本域DNS NOTIFY信息的計(jì)算機(jī)的集合是由所有域中列明的名稱服務(wù)器加上任何由also-notify設(shè)定的IP地址。一個(gè)端口可能用每個(gè)also- notify地址設(shè)定以發(fā)送通告信息到那個(gè)端口而不是默認(rèn)的53端口,。
also-notify 對根域是無意義的,。默認(rèn)值為空。
check-names
此選項(xiàng)應(yīng)用于BIND8中以約束hosts文件中的域名的字符集和/或從網(wǎng)絡(luò)上接收的DNS響應(yīng),。BIND9不限制域名的字符集也不執(zhí)行check-names選項(xiàng),。
database
設(shè) 定儲(chǔ)存域數(shù)據(jù)的數(shù)據(jù)庫的類型。Database后面的關(guān)鍵詞是一列whitespace-delimited(非限制空白空間)詞,。第一個(gè)詞定義數(shù)據(jù)庫類 型,,后續(xù)詞作為數(shù)據(jù)庫的參數(shù)傳給數(shù)據(jù)庫,解釋為特殊的數(shù)據(jù)庫類型。默認(rèn)值為"rbt",BIND9的本地native in-memory red-black-tree 庫,,則此數(shù)據(jù)庫沒有參數(shù)如果其它數(shù)據(jù)庫驅(qū)動(dòng)連接到服務(wù)器上的話其他值也是可能的,。這些可能的數(shù)據(jù)庫包括分布式的數(shù)據(jù)庫,但缺省是沒有連接的,。
dialup
forward
只當(dāng)域有一個(gè)轉(zhuǎn)發(fā)器列表的時(shí)候才是有意義的,。當(dāng)配置為”only”時(shí),在轉(zhuǎn)發(fā)查詢失敗和得不到結(jié)果時(shí)會(huì)導(dǎo)致查詢失??;在配置為”first”時(shí),則在轉(zhuǎn)發(fā)查詢失敗或沒有查到結(jié)果時(shí),,會(huì)在本地發(fā)起正常查詢,。
forwarders
用來代替全局的轉(zhuǎn)發(fā)器列表。如果如故不在forward類型的域中設(shè)定,,就不會(huì)有這個(gè)域查詢的被轉(zhuǎn)發(fā),;全局的轉(zhuǎn)發(fā)設(shè)置則沒有起作用。
ixfr-base
在BIND8中設(shè)定動(dòng)態(tài)更新和IXFR的交易日志文件(journal)的名稱,。BIND9 忽略這個(gè)選項(xiàng)而通過附加".jnl"到域文件名后創(chuàng)建日志文件.
ixfr-tmp-file
BIND8的非正式選項(xiàng),,BIND9忽略
max-transfer-time-in
max-transfer-idle-in
notify
pubkey
在BIND8中,此選項(xiàng)用于為DNSSEC標(biāo)記域的信號(當(dāng)它們從磁盤裝載的時(shí)候)的驗(yàn)證設(shè)定一個(gè)公共域密鑰,,BIND9不在裝載的時(shí)候驗(yàn)證密鑰并忽略此選項(xiàng),。
zone-statistics
如果設(shè)為”yes”,服務(wù)器將會(huì)為本域儲(chǔ)存統(tǒng)計(jì)信息,,可以存儲(chǔ)到在服務(wù)器選項(xiàng)中定義的統(tǒng)計(jì)文件中,。
sig-validity-interval
transfer-source
transfer-source-v6
notify-source
notify-source-v6
min-refresh-time
max-refresh-time
min-retry-time
max-retry-time
 
D. 動(dòng)態(tài)更新政策
BIND9支持兩個(gè)授予用戶對一個(gè)域執(zhí)行動(dòng)態(tài)更新權(quán)限的備選方案,分別由allow-update和update-policy設(shè)定,。
allow-update 的使用與以前的BIND版本相同,。它授于指定用戶對域中的任何名稱的任何的記錄更新的權(quán)利。
update-policy 是BIND9中新出現(xiàn)的,,允許更多更新控制,,定義了一個(gè)規(guī)則集,規(guī)則授予或者取消一個(gè)或多個(gè)名稱被一個(gè)或多個(gè)用戶更新的權(quán)利,。如果動(dòng)態(tài)更新要求信息被標(biāo)記(也就是說,可以包含TSIG 或SIG(0)記錄),,標(biāo)記人的身份就能被確定。
規(guī)則在update-policy 域選項(xiàng)中指定,,并只對主域有意義,。當(dāng)update-policy語句出現(xiàn),這是一個(gè)allow-update的配置錯(cuò)誤.,。update-policy語句只檢查信息的簽名人,,與源地址是不相關(guān)的,。
這是一則規(guī)則的定義:
( grant | deny ) identity nametype name [ types ]
每條規(guī)則賦予或者取消授權(quán),一旦一條信息成功的匹配一個(gè)規(guī)則,,則馬上執(zhí)行該規(guī)則的給予或者取消操作,,并且不檢查其它的規(guī)則。一個(gè)規(guī)則是匹配的,,就是當(dāng)標(biāo)記人匹配身份字段,,名稱匹配名稱字段并且類型是在類型字段中定義的時(shí)候。
身份字段定義一個(gè)名稱或者一個(gè)通配符名稱,,名稱類型字段有四個(gè)值:
name, subdomain, wildcard 和self
name
當(dāng)更新名稱與原定義的名稱字段相同時(shí)匹配,。
subdomain
當(dāng)更新名稱與原定義的子域的一個(gè)名稱字段相同時(shí)匹配。(包含它本身的名字)
wildcard
當(dāng)更新名稱與原定義的一個(gè)位于名稱字段中的統(tǒng)配符名稱的有效延伸相同時(shí)匹配
self
當(dāng)更新名稱與信息標(biāo)記人的名稱相同時(shí)匹配,。忽略名稱字段,。
如果沒有設(shè)定任何類型,規(guī)則匹配所有類型除了SIG,、NS,、SOA 和NXT;類型可能用
名稱設(shè)定,,包括"ANY",。(ANY 匹配所有類型除了NXT,NXT 不能被更新),。
此文章由 flyinweb 于 2009-07-01 18:17:04 編輯

    本站是提供個(gè)人知識管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,,不代表本站觀點(diǎn),。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,,謹(jǐn)防詐騙,。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊一鍵舉報(bào),。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多