您的瀏覽器不支援JavaScript語法,但是並不影響您獲取本網站的內容 網頁設計,網頁設計公司,網頁程式設計,網站程式設計,台北網頁設計,無障礙網頁設計,3d互動網頁設計, 720度環場,網站建置,主機代管,電子商務,政府機關網頁設計,公家機關網頁設計,網站製作公司,網站架設
網頁設計,網頁設計公司,網頁程式設計,網站程式設計,台北網頁設計,無障礙網頁設計,3d互動網頁設計, 720度環場,網站建置,主機代管,電子商務,政府機關網頁設計,公家機關網頁設計,網站製作公司,網站架設
網頁設計程式設計網站規劃虛擬主機與主機代管關於網繹我們的服務我們的客戶無障礙網頁設計網站優化SEO聯絡我們
網頁設計,網頁設計公司,網頁程式設計,網站程式設計,台北網頁設計,無障礙網頁設計,3d互動網頁設計, 720度環場,網站建置,主機代管,電子商務,政府機關網頁設計,公家機關網頁設計,網站製作公司,網站架設
Logo 排版用圖片
:::回首頁網站地圖ENGLISH日本語簡體中文rss
:::
關於網繹
我們的客戶
網頁設計
程式設計
無障礙網頁
SEO網站優化
資訊與知識庫
聯絡我們
關於網繹裝飾用圖片
無障礙網頁的專家
透過網繹將您的網站輕鬆的通過無障礙網頁檢測標準,達到轉換網頁無障礙,擴充單元無障礙,新增內容無障礙的功能。
:::
資訊與知識庫
標題 DNS介紹
主題分類 網路資訊
原文章出處 財團法人台灣網路資訊中心

DNS介紹

甚麼是DNS?
早期(大約20~30年前)的電腦可是貴重物資,一般人是可望而不可及的,因為電腦數量太少,所以可以使用 /etc/hosts 來記憶這些 IP 與名稱的對應。但是在現代,Internet上面這麼多主機,並且常常會突然的又多出一部主機來服務,那麼我們總不能一個一個的將它輸入在 /etc/hosts裡面吧!?所以後來的這個時候就有所謂的『領域名稱解析系統,DNS』。DNS利用類似樹狀目錄的型態,將主機名稱的管理分配在不同層級的DNS主機當中,經由分層管理,所以每一部主機的記憶的資訊就不會很多,而且異動上面也相當的容易修改!
DNS提供的服務

DNS的全稱是Domain Name System(或Service),是一套系統軟體,讓大家所使用及管理的電腦網路系統,能夠作領域名稱(Domain name)與位址(IP address)相互之間的轉換。 例如:查詢領域名稱www.twnic.net.tw,可對映到位址210.17.9.228反過來,也可以經由位址210.17.9.228查詢,對映到領域名稱 www.twnic.net.tw 當您連上一個網址,在URL打上﹕www.twnic.net.tw的時候,可以說就是使用了DNS的服務了。但如果您知道這個www.twnic.com.tw的IP位址,直接輸入210.17.9.228也同樣可以到達這個網址。其實,電腦使用的只是IP位址而已(最終也是0和1),這個www.twnic.com.tw只是讓人們容易記憶而設的。因為我們人類,對一些比較有意義的文字記憶(如﹕www.twnic.net.tw),比記憶那些毫無頭緒的號碼(如:210.17.9.228),往往容易得多。DNS的作用就是『讓有意義的,人類較容易記憶的主機名稱(英文字母),轉譯成為電腦所熟悉的 IP 位址!』,而免除了強記號碼的痛苦。

DNS兩大功用
FORWARD DOMAIN(正解):DOMAIN NAME a IP ADDRESS
REVERSE DOMAIN(反解):IP ADDRESS a DOMAIN NAME

DNS的架構?

Domain Name Space

整個INTERNET上的電腦如此眾多,如何保證兩部電腦不會有相同的domain name/IP是一個很重要的問題。利用domain name space來避免上述問題,幾個重要的觀念如下:

Domain
將整個internet分成許多domain,每個domain下又細分為許多domain,然後這些細分的domain視實際需求又再細分成許多domain,一直循環下去。基本上每個domain內的mapping由一部主機負責管理。
Delegation
剛才提到每個domain都可因實際需求再細分成許多sub domain。上層的domain可以將其分出的某個sub domain的domain name與IP mapping交由另一部機器管理,這個動作我們稱之為delegation(授權)。
Forward / Reverse
在講到domain name <-> IP mapping,其實應該看成兩個命名空間: 一個是domain name -> IP,稱之為forward mapping,在這個命名空間中就是先分成前面提到的那些top domain,再細分sub domain,再細分...。比如說www.twnic.net.tw->210.17.9.228代表在負責twnic.net.tw這個sub domain的機器上,可以查到其mapping table上有一筆記錄是www->210.17.9.228。一個是IP->domain name稱為reverse mapping。在這個命名空間中,所有的IP組成一個叫作arpa.in-addr的top domain,然後再依IP層層細分...。比如說210.17.9.228->www.twnic.net.tw代表在負責9.17.210.in-addr.arpa (注意是反過來寫,因為top domain要在最後面)這個sub domain的機器上,可以查到其mapping table上有一筆記錄是228->www.twnic.net.tw
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運作原理
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。
DNS運作步驟
下面讓我們看看DNS是怎樣運作的:
1. 客戶端向伺服器提出查詢項目﹔
2. 當被詢問到有關本域名之內的主機名稱的時候,DNS伺服器會直接做出回答﹔
3. 如果所查詢的主機名稱屬於其它域名的話,會檢查快取記憶體(Cache),看看有沒有相關資料﹔
4. 如果沒有發現,則會轉向root伺服器查詢﹔
5. 然後root伺服器會將該域名之下一層授權(authoritative)伺服器的位址告知(可能會超過一台)﹔
6. 本地伺服器然後會向其中的一台伺服器查詢,並將這些伺服器名單存到記憶體中,以備將來之需(省卻再向root查詢的步驟)﹔
7. 遠方伺服器回應查詢﹔
8. 若該回應並非最後一層的答案,則繼續往下一層查詢,直到獲得客戶端所查詢的結果為止﹔
9. 將查詢結果回應給客戶端,並同時將結果儲存一個備份在自己的快取記憶裡面﹔
10. 如果在存放時間尚未過時之前再接到相同的查詢,則以存放於快取記憶裡面的資料來做回應。
從這個過程我們可以看出,沒有任何一台DNS主機會包含所有域名的DNS資料,資料都是分散在全部的DNS伺服器中,而NIC只需知道各DNS伺服器位址就可以了。
DNS與防火牆
基於安全性的考量,配合防火牆的建置常常需要設置內部DNS伺服器及外部DNS伺服器。當建置有網路位址轉換機制(NAT)的防火牆時,更需要設置內部DNS伺服器供內部機器查詢,這時所查到的內部機器都是機器上的內部IP;另外建立一個外部DNS伺服器供外部的機器查詢,這時所查到的內部機器都是網路位址轉換過的NIC IP。注意防火牆本身必須詢問內部的DNS伺服器而非外部的DNS伺服器。
而我們通常以Split DNS來實現上述功能,Split DNS的意義就是在於將所要對外公佈的主機資訊以及只可對內公佈的主機資訊經由兩個獨立運作的DNS server來處理,如此可以達到內部使用者可正常查詢內部主機資訊而外界使用者無法順利窺視內部主機資訊的目的。
因此當外部主機需查詢內部主機時,便將封包送至防火牆,再由防火牆決定是否轉送此封包至內部DNS伺服器(取決於是否要讓內部主機供外部查詢)。反之,當內部主機查詢外部主機時,內部DNS伺服器會將此查詢轉送至防火牆,再由防火牆將此DNS查詢轉送至外部DNS伺服器。

文章整理: Shaina
關鍵字: DNS,Domain Name System,防火牆,伺服器

go to top
通過第三優先等級無障礙網頁檢測
   
網繹數位科技網頁設計公司 地址:台北市復興南路一段321號3樓 Tel: (02)2704-1758(代表號)  Fax: (02)2704-0372 Email:e-service@eki.com.tw
網頁設計程式設計網站規劃虛擬主機與主機代管關於網繹我們的服務我們的客戶無障礙網頁設計網站優化SEO聯絡我們
(a) 跨國企業 為Sony 新力、Du Pont 台灣杜邦、Syngenta 台灣先正達、Xerox 全錄、TUV 德國萊因、Imation 美商怡敏信、DHL 洋基通運、日商丸紅等跨國企業、國際大型公司網站設計、程式設計、網頁設計、資料庫規劃及系統整合之設計廠商。 (b) 知名企業 為流行風尚精品之公司網站設計、程式設計、網頁設計、諸如居禮名店、長榮桂冠酒店、三井日本料理、天仁集團、菲夢絲、歌林公司、八王子集團、牡丹園餐廳、華固建設、等製作高質感之精緻網站。 (c) 金融機構 為金融單位或公司網站設計、程式設計、網頁設計、如兆豐金控、新光產物保險、中央再保、第一期貨、慶豐銀行、KGI中信期貨、台灣銀行等諸銀行,南山人壽、金融聯合徵信中心等金融公司及單位之網站建置及資料庫設計協力廠商。 (d) 政府機關及民間機構 為政府機構及民間團體網站設計、程式設計、網頁設計、如台北世界貿易中心、台北國際會議中心、中研院、十三行博物館、黃金博物園區、鶯歌陶瓷博物館、臺北縣政府文化局、石門水庫、北區水資源局等政府機關以及法鼓山、中華電信工會、國科會、靈鷲山佛教基金會、財團法人保險事業發展中心等民間團體建置氣勢磅礡、兼具人文、藝術、歷史的網站或電子報。