不是這樣的,轉寄站最主要目的是查詢非自身網域的 record.
舉例來說,假設你公司的網域是:abc.com.tw 而你要瀏覽 Yahoo 的網頁時,你的 DNS Server 不會理會這個查詢,而會將你的查詢轉接給轉寄站;這是因為 Yahoo 跟你公司是不同網域。
簡言之,只要不是你 DNS Server 所管理的 Domain 一律都會將查詢丟給轉寄站處理,並將結果 Cache 一分在你的 DNS Server 上。
所以,轉寄站最主要目的是在降低 DNS 受 query 的頻繁度。
不太能理解你的問題是要問什麼??
你是問windows or linux ,郵件伺服器還是單純DNS查詢??
我選1. 因為轉寄站是Server to Server.
http://technet.microsoft.com/zh-tw/library/cc775637(v=ws.10).aspx
DNS client並不知道也不在乎哪個NS是某個domain的master NS,哪個是slave NS(non authoritative NS無法保證向authoritative NS查詢時的順序),client只知道某次query是否成功,如果查詢成功的話就不會向其它NS繼續查詢,此時上層的AP(在此應該是指SMTP吧)就會依照查詢到的結果行動,而負責此次查詢的NS則是到到超過SOA中的TTL之後才會重新向authoritative NS做查詢(DNS的cache機制)....BTW,基於上述原因,master NS和slave NS內的資料應該力求同步,否則常常會帶來很多不必要的麻煩(trouble shooting困難)....
一般的經驗:
Client 向主或副任丟一個(有些 OS 會先丟主),
只要有活著, Client 就會等這台 DNS Server 回應.
如果 DNS Server 沒有反應, 才會查另一台.
而這台 DNS Server 遇到不是被授權的 Domain Name , 就會有幾個動作:
a. 往 Forwarder 查.
b. 從 Root Servers 往下逐層去查.
c. 回應查不到.
所以 Client 只會有幾種可能:
a. 查主或副 -> 該機無回應 -> 再查另一台 -> 有查到, 查不到, 另一台也無回應.
b. 查主或副 -> 該機回應查不到 -> 結束
c. 查主或副 -> 該機回應資料 -> 結束
不錯,很多人都以為主DNS查不到就會改查第2DNS,其實不是這樣。
而且CLIENT也不一定優先向主DNS查詢。
bruck提到:
不錯,很多人都以為主DNS查不到就會改查第2DNS,其實不是這樣。
client遇到某個domain有1個以上authoritative NS時,會先試著往其中之一query,如果有回應(wether postive or negative answer)就以其回應為準,沒有回應的話才會往其它NS query....BTW,除非看SOA,不然client根本無從分辨哪個是master,哪個是slave,但NS除非是做zone transfer,不然通常是不會去看SOA的....
所以我們設定主和副DNS並不能決定它的查詢順序就是了,從以前到現在都誤會大了~!
我的環境是這樣的:
在本地端有台內部DNS,異地端也有台內部DNS
Client設定本地為主DNS,異地為副DNS
大部份的Client網路查詢都正常,偶爾會有幾台Client會無法連到外部的網站,只能連到內部的網站,但如果DNS多加上一條168.95.1.1的DNS,它就能連到外部的網站了,所以才懷疑是DNS解析的問題.
不知各位大大對於此問題有何見解~
這樣的架構建議:
這樣的架構, 如果是內部 DNS 無授權的資料, 就會由內部 DNS 往 ISP 提供的 DNS Server 查, 而 Client 只送出一個查詢動作, 往內部 DNS 查.
但是您提到有兩臺內部 DNS , 則建議再說明一下, 這兩台內部 DNS 是分在不同的分公司或只是備援架構嗎?
是在不同分公司,內部DNS也是依您所建議的設定方法