orward first | only; forward指令用于設置DNS轉發(fā)的工作方式: forward first設置優(yōu)先使用forwarders DNS服務器做域名解析,,如果查詢不到再使用本地DNS服務器做域名解析,。 forward only設置只使用forwarders DNS服務器做域名解析,如果查詢不到則返回DNS客戶端查詢失敗,。 某些網絡連接不鼓勵向本地以外發(fā)送很大的數據流量,,這要么是因為網絡連接是按流量計費的,或網絡連接本身是帶寬不足,。在這樣的情況下,,如果想將發(fā)往外部的 DNS 流量限制到盡可能的小,就需要使用 BIND 的轉發(fā)機制,?;蛘吣愕木W絡中只有一臺機器能連接到 Internet ,而你在這臺機器上運行了 BIND ,,那么你可以將這臺 BIND 作為內部網絡中的其他 BIND 的轉發(fā)器,,使得其他 DNS 也能查找 Internet 域名。 轉發(fā)機制的這樣的:當你設置了轉發(fā)器后,,所有非本域的和在緩存中無法找到的域名查詢都將轉發(fā)到設置的 DNS 轉發(fā)器上,,由這臺 DNS 來完成解析工作并做緩存,因此這臺轉發(fā)器的緩存中記錄了豐富的域名信息,。因而對非本域的查詢,,很可能轉發(fā)器就可以在緩存中找到答案,避免了再次向外部發(fā)送查詢,,減少了流量,。 轉發(fā)器的配置格式是: options { forwarders { 192.168.24.35; 192.168.24.36; }; }; 這里要注意,轉發(fā)器本身不用做任何設置,,而是對需要轉發(fā)器的其他 DNS server 做以上配置,。還有,如果該 DNS Server 無法聯系到轉發(fā)器,,那么 BIND 會自己嘗試解析,。 如果你要禁止 BIND 在無法聯系到轉發(fā)器時不做任何操作,那么你還可以使用 forward only 命令,,這樣 BIND 只能使用區(qū)的權威數據和緩存來響應查詢了( 在連接不到轉發(fā)器的情況下 ),。 options { forwarders { 192.168.24.35; 192.168.24.36; }; forward only; }; 在 BIND 8.2 以后引入了一個新的特性:轉發(fā)區(qū)( forward zone ),它允許你把 DNS 配置成只有查找特定域名的時候才使用轉發(fā)器。( BIND 9 從9.1.0 才開始有轉發(fā)區(qū)功能 )例如,,你可以使你的服務器將所有對 xmgd.com 結尾的域名查詢都轉發(fā)給 xmgd.com 的兩臺名字服務器: zone "xmgd.com" { type forward; forwarders { 210.52.83.228; 210.52.83.229; }; }; 這樣的功能有什么用呢,?假設 xmgd.com 和你的網絡有一個私有的連接,而 xmgd.com 又沒有連接上 Internet ,,那么你從 Internet 是無法查到 xmgd.com 后綴的域名的,,這時你就要使用轉發(fā)區(qū)的功能了。 還有一種轉發(fā)區(qū)設置和剛才的設置剛好相反,,它允許你設置什么樣的查詢將不被轉發(fā),,當然這只適用于在 options 語句中指定了轉發(fā)器的 DNS 。配置如下: options { directory "/var/named"; forwarders { 192.168.24.35; 192.168.24.36; }; }; zone "xmgd.com" { type master; file "zone.xmgd.com"; forwarders {}; }; 這樣寫你可能會問為什么你要在自己的權威區(qū)里禁止轉發(fā),?難道不是自己回答查詢而不使用轉發(fā)器嗎,? 有這樣一種情況,在 xmgd.com 這個區(qū)中,,你授權了幾個子域,,例如:zx.xmgd.com、lab.xmgd.com 等,,那么在 xmgd.com 的權威服務器上設置轉發(fā)后,,因為對 zx.xmgd.com、lab.xmgd.com 這幾個子域不是權威,,那么如果有對 www.zx.xmgd.com 這樣的子域的域名查詢,,服務器也將轉發(fā)。這完全是沒有必要的,,因為服務器上就有 zx.xmgd.com 子域的 NS 記錄,,何須再轉發(fā)。 DNS轉發(fā)器:
forward only; [/code] 這里的192.168.1.10解析不了的,,就會被轉發(fā)到192.168.1.12這就是DNS轉發(fā)器,。 說到這里就不得不說遞歸了。 二,、BIND遞歸查詢: 遞歸查詢的工作方式 示例說明:A向B發(fā)送遞歸查詢請求,,B向C發(fā)送迭代查詢請求(下一節(jié)將介紹迭代查詢),得到C給出的提示后,,B向D發(fā)送迭代查詢請求,,得到D給出的提示后,B向E發(fā)出迭代請求,,得到E給出的提示后,,B向F發(fā)出迭代查詢請求,得到F給出的提示后,,B得到了F返回G的IP地址,,B向A返回G的IP地址,整個查詢結束,。 迭代查詢的工作方式 但某些情況下,,服務器應該被配置為不接受遞歸請求,,例如根域服務器。根域服務器不接受遞歸請求的原因 :
要注意以下幾點; |
|