域名系統(tǒng)(Domain Name System) ·前面已介紹,IP協(xié)議使用32位IP地址來標識網(wǎng)絡中的主機,為在網(wǎng)上發(fā)送IP數(shù)據(jù)報指定源主機、目的主機提供了一種較為方便、緊湊的表示方法。但是,對于一般使用人員而言,IP地址仍是沒有任何意義、難以記憶的。因而出現(xiàn)了用便于記憶的、有意義的符號來標記主機的做法,也稱之為主機名。 ·為了直接使用主機名進行通信,每臺主機上都包含了一個HOSTS的文件, HOSTS文件中包含了因特網(wǎng)上所有計算機的IP地址-主機名稱的映射,通過主機名稱,就可以映射到其IP地址。主機定期從網(wǎng)上更新HOSTS文件。由于在網(wǎng)絡發(fā)展的早期,直到1980年以前,網(wǎng)絡中的機器較少,只有幾百臺主機。這種方式并沒有什么困難。 ·隨著網(wǎng)絡規(guī)模的擴展,維護和分布HOSTS文件副本的工作變得難于管理。另外,定期下載更新的HOSTS文件所產(chǎn)生的通信量也成問題。此時,出現(xiàn)了利用一個中心數(shù)據(jù)庫來執(zhí)行主機名稱注冊和主機名稱-IP地址轉換的功能。這種集中方法也有助于防止不安全的復制。 ·第一版的中心數(shù)據(jù)庫,是以一個線形(flat)名稱空間為基礎的,沒有更多的結構:如developer以一個單詞來標記一個主機。隨著主機數(shù)目的增多,這樣的主機命名方式效率低,不利于管理,也不利于辨識,易重名。 ·為此,提出了一種分層結構的命名方案,即域名系統(tǒng)(RFC 974、 RFC 1034 和 RFC 1035) 。 ·域名系統(tǒng)的優(yōu)點: –提供了用戶友好的主機名稱,可以把名稱空間分成多個不同的域,并允許使用多臺服務器,以方便管理、提高性能和容錯能力。 ·域名系統(tǒng)的主要部分: –域名空間:具有樹形結構的分層名稱空間,包括根域、頂級域、二級域、三級域等等。每一個較下一層的域都會從屬于某一個上層的域。 –域名服務器:保存域名空間各部分信息并把主機名映射到相應IP地址的計算機。 –名稱解析器:依據(jù)主機名向域名服務器查詢某臺主機的IP地址的客戶機稱為名稱解析器。 ·域名空間的結構: –根域:分層結構的最高級,其他所有的域都屬于根域的下級。根域服務器維護核心數(shù)據(jù)庫,目前有七臺根域服務器。 –頂級域:根域的下一級為頂級域,頂級域被分為三個主要區(qū)域:組織域、地理域和逆向域。 ·組織域有如下類型: –.com:商業(yè) –.edu:教育 –.gov:政府 –.mil:軍隊 –.org:非盈利組織 –.net:網(wǎng)絡組織等 –1997年后開始啟用了.store(貨物交易)、.web(Web事物組)、.arts(文藝團體)、.rec(娛樂休閑資源)、.info(信息服務)、.nom(個人)。 ·地理域:按國家分配的頂級域 ·逆向域:為地址-名稱逆向查詢用。 名為:in-addr.arpa –二級域 …… ·域名空間的劃分管理: –DNS的管理單元是區(qū)域,一個區(qū)域是DNS的一部分,它可以作為一個單獨的實體進行管理。每個區(qū)域都定位在一個具體的域節(jié)點上,這個域節(jié)點是該區(qū)域的根域。如可以把edu.cn作為一個管理區(qū)域。 –可以把一個區(qū)域再細分成多個子區(qū)域,分別管理。如把edu.cn在分成bupt.edu.cn以及其他一些區(qū)域。 –整個域或每個區(qū)域都是由域名服務器來管理,進行域或某個特定區(qū)域名稱管理的服務器都必須是授權的。 –域名空間的區(qū)域劃分管理使得域名管理能夠分布式、局部化,這對于提高整個網(wǎng)絡的可靠性、降低通信量都有極大的好處。 ·域名服務器(1) ·從地位來看,可以分為主名稱服務器和次名稱服務器。 –主(Primary)名稱服務器:該服務器存儲和管理區(qū)域的配置數(shù)據(jù)。區(qū)域的所有變化,如子域或主機的添加,都必須在主名稱服務器中注冊執(zhí)行。一個給定的區(qū)域只能與一臺主名稱服務器相關聯(lián)。 –次名稱服務器:次名稱服務器通過區(qū)域傳輸過程,從網(wǎng)絡上其他名稱服務器(可以是主名稱服務器,也可以是另一個次名稱服務器)上獲得自己區(qū)域的的數(shù)據(jù)。次名稱服務器提供了幾個方面的好處: ·通過冗余提高可靠性,在主名稱服務器不能正常工作時,完成主名稱服務器的工作。 ·通過在具有大量客戶機的位置分布次名稱服務器可以降低網(wǎng)絡上的通信量。 ·通過分擔對主名稱服務器的客戶請求可以均衡服務器任務負載,加快響應時間。 ·域名服務器(2) ·從功能來看,可以分為主控名稱服務器、轉發(fā)名稱服務器、從屬名稱服務器和純高速緩存服務器。 –主控(master)名稱服務器:主控名稱服務器可以是主名稱服務器也可以是次名稱服務器,它是次名稱服務器信息的來源。當一個次名稱服務器啟動時,將與主控名稱服務器聯(lián)系。主控名稱服務器將為次名稱服務器初始化一個區(qū)域傳輸,并定期把更新的信息進行區(qū)域傳輸。 –轉發(fā)名稱服務器:DNS服務器在收到查詢后,首先在本地文件中查找信息。如果所請求的名稱不屬于該服務器授權的區(qū)域,則該服務器需要與其他域名服務器聯(lián)系。通常情況下,需要查詢本地網(wǎng)絡以外的資源,一般不是所有本地服務器都可以直接和外部服務器聯(lián)系的,而是指定一臺專門的服務器。這個專門指定的用于與外部網(wǎng)絡通信請求外部域名信息的服務器成為轉發(fā)名稱服務器。一般域名服務器在與轉發(fā)名稱服務器的聯(lián)系中,有兩種方式: ·非互斥方式:名稱服務器在轉發(fā)服務器不能完成地址解析時,自己再進行查詢解析。 ·互斥方式:在轉發(fā)服務器不能完成地址解析時,名稱服務器不再與其他服務器聯(lián)系,直接返回一個出錯消息。這種方式配置的服務器也成為從屬服務器。 –純高速緩存(caching-only)名稱服務器:所有的DNS服務器都會把已經(jīng)解析的查詢高速緩存一段時間。因為一個名稱的使用連續(xù)使用的概率很大,這樣可以加快響應時間。純高速緩存名稱服務器只是專門用來高速緩存其他名稱服務器已解析的查詢。不提供任何其他信息。純高速緩存名稱服務器在啟動時,會一直向不同的DNS服務器轉發(fā)查詢,直到該高速緩存建立,能處理查詢?yōu)橹?。因此當純高速緩存名稱服務器首次啟動時,會有一個較大的通信量,但由于它不需要定期的區(qū)域傳輸,因而通信量會漸漸減少。 ·名稱解析方法: ·DNS客戶機(一臺服務器也可能是另一臺服務器的客戶機)對DNS服務器進行查詢時,可以有三種方式: · 1,遞歸查詢方式:一般發(fā)生在一個最終的客戶和一個DNS服務器之間。DNS服務器在執(zhí)行遞歸查詢時,或者向客戶機返回回復數(shù)據(jù),或者返回一出錯消息,指出不存在該域或該主機。 – 2,重復查詢方式:一般發(fā)生在名稱服務器之間。一臺DNS服務器向另一臺DNS服務器提供它所知道的答案。 – 3,逆向查詢方式:客戶機已知要解析的主機的IP地址,向服務器請求解析該主機的名稱。逆向域就是為完成逆向查詢方式而設置的。逆向域中的條目是按IP地址排列的。詳細過程見后。 ·DNS配置及數(shù)據(jù)庫文件(以Microsoft DNS服務器為例) · ·Microsoft DNS服務器是因特網(wǎng)上常用的DNS服務器,是BIND(Berkeley Internet Name Domain)兼容服務器??梢詮腂IND配置文件中導入數(shù)據(jù),并且在需要BIND服務器導出數(shù)據(jù)時,能夠生成一套兼容BIND文件。BIND DNS系統(tǒng)使用一套標準的文件,定義DNS系統(tǒng)的配置。這些文件包括: –BOOT文件 –數(shù)據(jù)庫文件 –高速緩存文件 –逆向查詢文件。 ·BOOT文件 ·提供BIND DNS服務器的啟動信息。 BOOT文件中的紀錄定義了該服務器的授權區(qū)域,同時也定義了服務器是該域的主服務器還是次服務器。如果該服務器是多個域的主名稱服務器,那么BOOT文件紀錄中還會聲明那些文件含有這些區(qū)域的數(shù)據(jù)。BOOT文件只在第一次導入數(shù)據(jù)時使用。 –BOOT文件舉例: ·directory c:\winnt\system32\dns ·cache cache.dns ·primary quick.com quick.com.dns ·secondary sales.quick.com 137.85.3.100 sales.quick.com.dns –說明: ·directory :指明數(shù)據(jù)庫文件所在的目錄,Microsoft DNS 服務器要求保存在\systemroot\system32\dns目錄下,且該語句忽略。 ·Cache:指明高速緩存文件的名稱。 ·Primary:聲明該服務器是那個域的主服務器,同時指出該域的數(shù)據(jù)庫文件名。 ·Secondary:聲明該服 務器是那個域的次服務器,同時指出向它進行區(qū)域傳輸?shù)脑捶掌鞯腎P地址以及包含該區(qū)域數(shù)據(jù)的文件名。 ·數(shù)據(jù)庫文件 ·DNS數(shù)據(jù)庫文件也叫區(qū)域文件(.dns)。它含有某一區(qū)域內(nèi)的數(shù)據(jù)。區(qū)域數(shù)據(jù)的定義,采用的是資源記錄。以下是DNS數(shù)據(jù)庫中最重要的幾類資源記錄: –授權開始記錄:授權開始(Start Of Authority)記錄定義了DNS服務器中的常用操作參數(shù),SOA記錄的內(nèi)容如下: ·名稱服務器名稱 ·聯(lián)系人,該名稱服務器主要聯(lián)系人的e-mail地址 ·序列號:該文件的修訂次數(shù) ·刷新時間:指明次名稱服務器從主名稱服務器刷新自己的頻率 ·…… –名稱服務器記錄:聲明該域中的每臺名稱服務器 –地址記錄:是DNS數(shù)據(jù)庫的核心,它提供了主機名稱--IP地址的映射 –規(guī)范的名稱記錄:使管理員能夠為一些主機建立別名 –郵件交換器記錄:聲明該域的郵件服務器 ·高速緩存文件 ·高速緩存文件保存因特網(wǎng)根DNS服務器的映射關系,使得區(qū)域DNS服務器能夠解析對局域網(wǎng)絡以外的主機所進行的請求。一旦局域網(wǎng)絡和因特網(wǎng)相連時,就應該配置高速緩存文件,使自己的DNS能夠找到因特網(wǎng)的根名稱服務器。 ·ftp://rs.internic.net/domain/named.cache可以獲得最新的因特網(wǎng)高速緩存文件 ·逆向查詢文件 ·逆向查詢文件含有一些逆向映射信息(IP--主機名稱),供逆向查詢使用。當DNS客戶機只有遠程計算機的IP地址時,使用這種映射可以返回該遠程計算機的主機名稱。逆向查詢文件經(jīng)常用于安全性或TCP/IP網(wǎng)絡的疑難解答。 ·Microsoft DNS提供了DNS Manager作為DNS服務器配置和管理的圖形化工具。 |
|