Name Server
負責記錄forward/reverse mapping的機器會執行一個叫name server的軟體,透過這個軟體回應來自其它機器對domain name或IP的查詢。
master(Primary)server
主要名稱伺服器由它所在的主機上的檔案中取得管理地帶的資料。如果您的學校擁有自己的網域(Domain),則必須建立自己的DNS系統,來回答網路上對您學校中,所有與網際網路有關的電腦名稱與IP地址的轉換服務。
slave(Secondary) server
次要名稱伺服器是由其他管理這個地帶的名稱伺服器中取得地帶的資料。為了網路穩定度的考慮,通常你需要一部次要名稱伺服器,以備不時之需。
Cache only server
每個DNS都會將查詢過的Domain Name給cache起來,所以每個DNS都快取名稱伺服器的功能。硬碟中沒有該Domain的database 檔案。
Forwarder
我們除了能夠用slave來分擔master工作、減少網路流量之外,還可以透過另外一種DNS機制來減低網路流量的,那就是forwarder設定了。所謂的forwarder,就是當某一台DNS主機遇到非本機負責zone(slave zone也屬於本機負責的範圍)之查詢請求的時候,將不直接向root zone查詢而把請求轉交給指定的forwarder(一台或多台)主機代為查詢。
Name Resolver
相當於是DNS server的client端,通常是以函式庫的方式被放在整套作業系統中,各類的應用程式經由呼叫這個resolver函式庫可以很容易地向DNS server進行查詢,得到所要的資料。
DNS運作原理
DNS分為Client和Server,Client扮演發問的角色,也就是問Server 一個Domain Name,而Server必須要回答此Domain Name的真正IP地址。而當地的DNS先會查自己的資料庫。如果自己的資料庫沒有,則會往該DNS上所設的的DNS尋問,依此得到答案之後,將收到的答案存起來,並回達客戶。真正DNS的運作:有兩種詢問方法,Recursive和Iterative兩種。前面是由DNS代理去問,問的方法是用Iterative方式,後者是由本機直接做Iterative式的詢問。
Recursive(遞迴式)
DNS用戶端向DNS Server的查詢模式,這種方式是將要查詢的封包送出去問,就等待正確名稱的正確回應,這種方式只處理回應回來的封包是否是正確回應或是說是找不到該名稱的錯誤訊息。問的方式是用Iterative的方式。
Iterative(交談式)
DNS Server間的查詢模式,由Client端或是DNS Server上所發出去問,這種方式送封包出去問,所回應回來的資料不一定是最後正確的名稱位置,但也不是如上所說的回應回來是錯誤訊息,也許是另外一台DNS的位址(當該台DNS沒有答案時,會傳回一台 "權威授權者"DNS的位址)。再由Client或DNS自己向" 權威授權者"DNS詢問。 一般說來,name resolver對local DNS server都是recursive query,而DNS server之間的 query多是iterative。大部份的DNS server都可以接受recursive和iterative兩種query方式,但是考量負載問題,root name server只接受iterative query。

arrow
arrow
    全站熱搜

    taichenyu 發表在 痞客邦 留言(0) 人氣()