計算機網絡日常作業(yè)(二)_第1頁
計算機網絡日常作業(yè)(二)_第2頁
計算機網絡日常作業(yè)(二)_第3頁
計算機網絡日常作業(yè)(二)_第4頁
計算機網絡日常作業(yè)(二)_第5頁
已閱讀5頁,還剩10頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、精選文檔計算機網絡日常作業(yè)(二)一、概念1 IP地址分類以及子網劃分國際規(guī)定:把全部的IP地址劃分為 A,B,C,D,EA類地址:范圍從0-127,0是保留的并且表示全部IP地址,而127也是保留的地址,并且是用于測試環(huán)回用的。因此A類地址的范圍其實是從1-126之間。如:,第一段號碼為網絡號碼,剩下的三段號碼為本地計算機的號碼。轉換為2進制來說,一個A類IP地址由1字節(jié)的網絡地址和3字節(jié)主機地址組成,網絡地址的最高位必需是“0”, 地址范圍從 到??捎玫腁類網絡有126個,每個網絡能容納1億多個主機(2的24次方的主機數(shù)目)。以子網掩碼來進行區(qū)

2、分:.B類地址:范圍從128-191,如,第一和其次段號碼為網絡號碼,剩下的2段號碼為本地計算機的號碼。轉換為2進制來說,一個B類IP地址由2個字節(jié)的網絡地址和2個字節(jié)的主機地址組成,網絡地址的最高位必需是“10”,地址范圍從到55??捎玫腂類網絡有16382個,每個網絡能容納6萬多個主機 。以子網掩碼來進行區(qū)分:C類地址:范圍從192-223,如,第一,其次,第三段號碼為網絡號碼,剩下的最終一段號碼為本地計算機的號碼。轉換為2進制來說,一個C類IP地址由3字節(jié)的網絡

3、地址和1字節(jié)的主機地址組成,網絡地址的最高位必需是“110”。范圍從到55。C類網絡可達209萬余個,每個網絡能容納254個主機。以子網掩碼來進行區(qū)分: D類地址:范圍從224-239,D類IP地址第一個字節(jié)以“1110”開頭,它是一個特地保留的地址。它并不指向特定的網絡,目前這一類地址被用在多點廣播(Multicast)中。多點廣播地址用來一次尋址一組計算機,它標識共享同一協(xié)議的一組計算機。E類地址:范圍從240-254,以“11110”開頭,為將來使用保留。 全零(“”)地址對應于當前主機。全“1”的IP地

4、址(“55”)是當前子網的廣播地址。2 TCP/IP和OSI體系結構比較OSI和TCP/IP的相同點:二者均接受層次結構,而且都是按功能分層。 OSI和TCP/IP的不同點: OSI分七層,而TCP/IP分四層,嚴格講,TCP/IP網間網協(xié)議只包括下三層,應用程序不算TCP/IP的一部分。 OSI層次間存在嚴格的調用關系,兩個(N)層實體的通信必需通過下一層(N-1)層實體,不能越級,而TCP/IP可以越過緊鄰的下一層直接使用更低層次所供應的服務(這種層次關系常被稱為“等級”關系),因而削減了一些不必要的開銷,提高了協(xié)議的效率。 OSI只考慮用一種標準的公用數(shù)據網將各

5、種不同的系統(tǒng)互聯(lián)在一起,后來生疏到互聯(lián)網協(xié)議的重要性,才在網絡層劃出一個子層來完成互聯(lián)作用。而TCP/IP一開頭就考慮到多種異構網的互聯(lián)問題,并將互聯(lián)網協(xié)議IP作為TCP/IP的重要組成部分。 OSI開頭偏重于面對連接的服務,后來才開頭制定無連接的服務標準,而TCP/IP一開頭就有面對連接和無連接服務,無連接服務的數(shù)據報對于互聯(lián)網中的數(shù)據傳送以及分組話音通信都是格外便利的。 OSI與TCP/IP對牢靠性的強調也不相同。對OSI的面對連接服務,數(shù)據鏈路層、網絡層和傳輸層都要檢測和處理錯誤,尤其在數(shù)據鏈路層接受校驗、確認和超時重傳等措施供應牢靠性,而且網絡和運輸層也有類似技術。而TCP/IP則不然

6、,TCP/IP認為牢靠性是端到端的問題,應由傳輸層來解決,因此它允許單個的鏈路或機器丟失數(shù)據或數(shù)據出錯,網絡本身不進行錯誤恢復,丟失或出錯數(shù)據的恢復在源主機和目的主機之間進行,由傳輸層完成。由于牢靠性由主機完成,增加了主機的負擔。但是,當應用程序對牢靠性要求不高時,甚至連主機也不必進行牢靠性處理,在這種狀況下,TCP/IP網的效率最高。 在兩個體系結構中智能的位置也不相同。OSI網絡層供應面對連接的服務,將尋徑、流控、挨次把握、內部確認、牢靠性帶有智能性的問題,都納入網絡服務,留給末端主機的事就不多了。相反,TCP/IP則要求主機參與幾乎全部網絡服務,所以對入網的主機要求很高。 OSI開頭未考

7、慮網絡管理問題,到后來才考慮這個問題,而TCP/IP有較好的網絡管理。 目前計算機網絡中已經形成的網絡體系結構主要有兩個:OSI參考模型和TCP/IP參考模型。 TCP/IP參考模型是因特網(Internet)的基礎。和OSI的7層協(xié)議比較,TCP/IP參考模型中沒有會話層和表示層。通常說的TCP/IP是一組協(xié)議的總稱,TCP/IP實際上是一個協(xié)議族(或協(xié)議包),包括100多個相互關聯(lián)的協(xié)議,其中IP(Internet Protocol,網際協(xié)議)是網絡層最主要的協(xié)議;TCP(Transmission Control Protocol,傳輸把握協(xié)議)和UDP(User Datagram Pro

8、tocol,用戶數(shù)據報協(xié)議)是傳輸層中最主要的協(xié)議。一般認為IP、TCP、UDP是最根本的三種協(xié)議,是其它協(xié)議的基礎。 TCP/IP也是使用協(xié)議棧來工作,棧是全部用來在兩臺機器間完成一個傳輸?shù)娜繀f(xié)議的幾個集合。數(shù)據通過棧,從一臺機器到另一臺機器,在這過程中,一個簡單的查錯系統(tǒng)會在起始機器和目的機器中執(zhí)行。棧分成五個層,每一層都能從相鄰的層中接收或發(fā)送數(shù)據,每一層都與很多協(xié)議相聯(lián)系。3 域名的概念與機制域名的概念通俗的說,域名就相當于一個家庭的門牌號碼,別人通過這個號碼可以很簡潔的找到你。網絡是基于TCP/IP協(xié)議進行通信和連接的,每一臺主機都有一個唯一的標識固定的IP地址,以區(qū)分在網絡上成千

9、上萬個用戶和計算機。網絡在區(qū)分全部與之相連的網絡和主機時,均接受了一種唯一、通用的地址格式,即每一個與網絡相連接的計算機和服務器都被指派了一個獨一無二的地址。為了保證網絡上每臺計算機的IP地址的唯一性,用戶必需向特定機構申請注冊,該機構依據用戶單位的網絡規(guī)模和近期進展方案,安排IP地址。網絡中的地址方案分為兩套:IP地址系統(tǒng)和域名地址系統(tǒng)。這兩套地址系統(tǒng)其實是一一對應的關系。IP地址用二進制數(shù)來表示,每個IP地址長32比特,由4個小于256的數(shù)字組成,數(shù)字之間用點間隔,例如表示一個IP地址。由于IP地址是數(shù)字標識,使用時難以記憶和書寫,因此在IP地址的基礎上又進展出一種符號

10、化的地址方案,來代替數(shù)字型的IP地址。每一個符號化的地址都與特定的IP地址對應,這樣網絡上的資源訪問起來就簡潔得多了。這個與網絡上的數(shù)字型IP地址相對應的字符型地址,就被稱為域名。 可見域名就是上網單位的名稱,是一個通過計算機登上網絡的單位在該網中的地址。一個公司假如期望在網絡上建立自己的主頁,就必需取得一個域名,域名也是由若干部分組成,包括數(shù)字和字母。通過該地址,人們可以在網絡上找到所需的具體資料。域名是上網單位和個人在網絡上的重要標識,起著識別作用 ,便于他人識別和檢索某一企業(yè) 、組織或個人的信息資源,從而更好地實現(xiàn)網絡上的資源共享。除了識別功能外,在虛擬環(huán)境下,域名還可以起到引導、宣揚、

11、代表等作用。 域名的機制2.1. 定義和名詞域名空間是樹狀結構,每個結點和資源集相對應(這個資源集可能為空),域名系統(tǒng)不區(qū)分樹內結點和葉子結點,統(tǒng)稱為結點。每個結點有一個標記,這個標記的長度為0到63個字節(jié)。不同的結點可以使用相同的標記。0長度的標記(空標記)為根記錄保留。結點的域名是從結點到根的標記組成的。這些標記對大小寫不敏感,這就是說,A和a對域名是等效的。但是你在收到域名時最好保留它的大小寫狀態(tài)以便以后的服務擴展便于使用。用戶需要輸入域名時,每個節(jié)點的標記長度不管多長,總要以點分隔。確定域名的最終總以點結束,例如poneria.ISI.EDU.,而相對域名則不這樣,它由本地域指明位置即

12、可。相對域名相對于一個公認的域名或相對于用作搜尋列的一串域名。相對名通常在用戶接口消滅,在用戶接口,表示方法因實現(xiàn)不同而不同,相對域名也消滅在主文件中,主文件相對于一個源域名而設立。為了簡化實現(xiàn),整個域名的長度不得大于255個字節(jié)。域由域名標記,它由其下的域組成。假如一個域包括在另一域中,則稱它為這個域的子域。我們可能通過表示很直觀的看出。如A.B.C.D是B.C.D,C.D,D和 的子域。2.2. 管理規(guī)范作為策略,DNS技術說明未說明一個特定的樹結構或什么規(guī)章來選擇標記,此說明期望達到的目的是越簡潔越好。應用程序的開發(fā)可以不管名字空間的邊界和名字服務器的存在。這不是說沒有法規(guī)地亂來,而是把

13、規(guī)章制定得開放以便于處理問題,樹的不同部分可以有不同的規(guī)章。例如IN-ADDR.ARPA分布在網絡各處,用于將網絡或主機號轉換為主機名,而NetBIOS域是平面式的,緣由很簡潔,這樣便于應用。但是,對于名字空間的通常部分,我們還是有規(guī)定的,目的是為了應用起來比較便利。低層域名最終被分為多個區(qū),這樣的域應當在頂層域上供應一個標記使最終的解析可能不必重名字就可以完成。在管理的時候,老的軟件可能不支持結點標記中的數(shù)字,特殊字符。2.3. 技術規(guī)范在DNS能夠被用來為某些種類的結點保存名字信息前,必需滿足下面兩個條件: 要有在對象名和域之間映射的規(guī)章,這個規(guī)章描述了關于對象的信息如何被訪問 需要有描述

14、對象的RR類型和數(shù)據格式這些規(guī)章可煩可簡,規(guī)章者要考慮到對現(xiàn)在格式和以后格式的兼容問題。多映射或映射分層是必需的。對于主機,映射取決于主機名的現(xiàn)有格式,它是通常文本表示域名的子集,加上描述主機地址的RR格式。由于我們需要從地址到主機的牢靠映射,所以定義了將地址映射到IN-ADDR.ARPA域的方法。對了郵箱,映射會簡單一些。通常的郵件地址,可以通過將轉換為一個單獨的標記,不要管里面的點,將通過平常的域名解析方法進行解析,這兩部分組合形成一個域名。因此郵件地址HOSTMASTERSRI-NIC.ARPA,會變?yōu)镠OSTMASTER.SRI-NIC.ARPA。通常的用戶不關懷這些定義的規(guī)章,但用戶

15、應當理解它們使用的是一種的很多要求的綜合產物,有要求兼容老產品的,有要求添加新功能的。2.5. 命名規(guī)章DNS的命名規(guī)章是為了使對域名的命名比較統(tǒng)一。也就是要將任何現(xiàn)存的對象都可以在最小改動的狀況下變?yōu)橛蛎?。謹慎的使用者會選擇域名適合域名系統(tǒng)和應用程序。例如在命名郵件域名時,使用者會同時遵守相應的郵件協(xié)議。這就使對老軟件的兼容性提高了。下面的規(guī)章是一個較少引起問題的規(guī)章: := | := | . := := | := | - := | := 大小寫的A到Z,共52個 := 0到9請留意:域名內不分大小寫。標記必需遵守ARPANET主機名規(guī)章,它要求主機名必需以字母開頭,以字母或數(shù)字結束,中間的

16、可以是數(shù)字字母或連字符,長度沒有限制。但標記必需少于63個字符。下面的字符串就表示了APARNET中的主機:A.ISI.EDU XX.LCS.MIT.EDU SRI-NIC.ARPA2.6. 資源記錄域名標記結點,每個結點都有資源信息集,些集可以為空。資源信息集和由分別資源集(RR)的特殊名字相關聯(lián)。在集中的RR挨次沒有關系,標記有這東西就是了,它不用由名字服務器,resovler或DNS的其它部分保存,只在這兒有。特定的RR我們認為有以下幾個:ownerRR能夠被找到的域名它是一個16位值,指定RR內的資源類型,它指一個抽象資源,具體的標記有以下幾個:A主機地址CNAME一個擬名的統(tǒng)一命名H

17、INFO標記由主機使用折CPU和OSMX標記用于域的郵件交換資源NS此域的權威認證名字服務器PTR指向其它域名空間的指針SOA標記區(qū)認證權威的開頭class它是一個16位值,標記協(xié)議族或某一個協(xié)議實例,本文中使用IN代表internet系統(tǒng),CH代表Chaos系統(tǒng)TTL它是RR的生存時間,它是32位整數(shù),單位是秒,它主要用于resolver緩存RR多長時間它是一種類型,有時是依靠于數(shù)據的類,它描述了以下資源:A對于class是IN的,它是一個32位IP地址,對于CH,它是后面跟一個16位八進制Chaos地址的域名CNAME域名MX作為一個域的郵件服務資源的主機名,主機名后有一個16位的配置值N

18、S主機名PTR域名SOA一些域擁有資源的名字通常是隱式的,不構成RR的一部分。TTL時間只影響緩沖內的數(shù)據,不影響區(qū)內的已經保存的認證數(shù)據。TTL通常由管理員設置,TTL=0表示禁止緩沖。RDATA內的數(shù)據是二進制串和域名的混合。域名通常使用指針指向DNS內的其它數(shù)據。2.6.1. RR的文本表示RR在DNS中是以二進制形式表示的,而在名字服務器或resolver中保存的時是經過壓縮編碼處理的。本文中我們接受相同于主文件中表示的表示方法,也就是不壓縮的方法,以便顯示RR的內容。行開頭時給出誰擁有RR,假如這一位置空出,就表示本行RR的擁有者和上面RR的擁有者是一個。其后是TTL,type和RR

19、的class。RR的RDATA部分是在當前數(shù)據的表示類型的基礎上得到的。2.6.2. 別名和統(tǒng)一命名現(xiàn)存的系統(tǒng)中有時會對相同的資源有不同的命名,不但主機是這樣,郵箱也是這樣,不同的名字指向的是同一個位置。大部分系統(tǒng)都能夠對多個名字指定一個是統(tǒng)一命名的結果,另外的是別名。域名系統(tǒng)供應使用統(tǒng)一命名的機制(CNAME RR),CNAME RR標記它的owner名為別名,并指出在RDATA部分的相應統(tǒng)一命名。假如一個結點存在CNAME RR,不應當有其它的數(shù)據,這保證了統(tǒng)一命名和它的別名不能不同。這也使得緩沖的CNAME可以不用檢索認證權威服務器就可以供應服務。在有CNAME RR時,DNS軟件假如查

20、詢不到與域名相關的資源,它會檢查資源集中是不是有一個有匹配class的CNAME,假如有,名字服務器返回的應答中包括這個CNAME記錄,并依據在CNAME中指定的數(shù)據開頭新的查詢。2.7. 查詢查詢就是發(fā)向名字服務器要求響應的一個懇求。在Internet上,這種懇求以UDP或TCP傳輸,名字服務器的響應可以是查詢結果,或是另一個名字名字器地址,要么就是一個錯誤信息。通常用戶并不直接發(fā)送懇求,而是向resolver發(fā)送懇求,由resolver依次將一個或多個懇求發(fā)向名字服務器,并負責處理錯誤狀況。懇求和響應有標準格式,它們包括一個頭和數(shù)個固定的域,然后是包括查詢參數(shù)和RR的四個部分。頭中最重要的

21、域是稱為操作符的東西,它指出要進行什么操作。在全部可能的16個值中,標準查詢是必需的,反向查詢和狀態(tài)查詢是可選的,有一個完全查詢已經過時,其它的還未指定。而上面的提到的四個部分如下:Question包括查詢名和其它參數(shù)Answer包括查詢結果的RRAuthority包括一個RR,但這個RR包括的是另一個名字服務器Additional包括了一個些在其它部分中使用RR時會有用的信息請留意:因頭中操作符(碼)的不同,這些部分的內容可能不同,但格式可是一樣的。2.7.1. 標準查詢標準查詢指定一個目標域名(QNAME),查詢類型(QTYPE)和查詢類(QCLASS),然后查找相應的RR,這類的查詢占了

22、DNS查詢的絕大部分,假如未有特殊說明,一般都指這種查詢。2.7.2. 反向查詢(可選)名字服務器可以反映資源和域名之間的映射關系。標準查詢可以對將域名映射到SOA RR,相應的反向查詢則映射SOA RR到域名。對于名字服務器來說這種實現(xiàn)是可選的,但是全部的名字服務器必需至少能夠理解反向查詢消息,不能說發(fā)來的消息當不知道。域名系統(tǒng)不保證反向查詢的完全和唯一性,由于系統(tǒng)是依據域名而非主機地址或其它資源類型支配的。反向查詢主要用于調試,以及和數(shù)據庫支持相關的活動中。反向查詢可以不返回正確的TTL,也不標明RR是某個集合中的一員,我們不知道它是不是唯一的,因此反向查詢的結果不緩沖。反向查詢對于映射主

23、機地址到主機名是不合適的,此時要用IN-ADDR.ARPA域。3.1. 介紹名字服務器保存了很多信息,這些信息組成了域數(shù)據庫。數(shù)據庫被分為區(qū),這些區(qū)在不同的服務器上保存。服務器可以有不同的可選函數(shù)和數(shù)據源,它最基本的工作是響應查詢,它的響應是是一種簡潔的形式進行的,響應可以僅依據本地數(shù)據作出,也可以依據其它相關服務器而做出。一個給定的區(qū)可以依據不同的服務器來保證其有效性,通過管理命令,用戶可以查詢由至少兩臺服務器保存的一個區(qū)上的數(shù)據,多臺服務器保存信息保證了適當?shù)娜哂?。給定的名字服務器通常支持一個或多個區(qū),但只充當域樹一小部分的認證權威。它有一些緩沖的非認證信息,這些信息是域樹其它部分的,在響

24、應查詢時名字服務器會給出什么時它認證的,什么是它緩沖的。3.2. 數(shù)據庫如何被劃分為區(qū)劃分數(shù)據庫有兩種方法,一種是依據class,另一種是在名字空間的結點間進行分隔,而產生,我們稱這種分隔為cut。class(以下我們稱為類)分隔比較簡潔,在傳統(tǒng)上,名字空間和全部類是一回事,分隔的類可被認為是一系列平行的名字空間樹。創(chuàng)建新類的通常理由是要為已有的類型創(chuàng)建新的數(shù)據格式,或是為了對已有的名字空間進行分隔管理。在一個類中可在兩個相鄰的結點進行cut(以下我們稱為切分),在全部的切分完成后,相連空間的每個組就是一個獨立的區(qū)。此區(qū)是在相連區(qū)域內全部數(shù)據的認證權威。這種方法意味著全部的區(qū)至少有一個結點,域

25、名和全部特定區(qū)內的結點是相連的。給定的樹型結構肯定有一個點更加靠近根,我們用這個點標記這個區(qū)。雖然可能沒什么用,也可以將每個域名分在不同的區(qū)中,也可以讓全部的結點在一個區(qū)中。另外,數(shù)據庫也可依據不同企業(yè)對名字的把握進行劃分,有些企業(yè)可能期望自己管理某一部分域名子樹,這時這個企業(yè)就可以對域名進行相應的增加或刪除操作,可以自己加入自己的下一級域名。當然,這個企業(yè)也可以對自己管理的名字空間進行進一步劃分。3.2.1. 技術問題描述一個區(qū)的數(shù)據有四部分:1. 區(qū)中全部結點的認證數(shù)據2. 定義區(qū)內頂結點的數(shù)據(此數(shù)據可被認為是認證數(shù)據的一部分)3. 描述代表子區(qū)的數(shù)據4. 訪問服務器子區(qū)的數(shù)據(我們也稱

26、為“相關”(glue)數(shù)據)全部這些數(shù)據以RR的形式表示,全部區(qū)可以被RR集的形式描述。通過傳輸RR,可以傳輸整個區(qū),具體的方法可以是通過FTP傳輸相應的文本文件,或是通過網絡消息的形式傳輸。一個區(qū)的認證數(shù)據是全部的RR,這些RR和樹中全部的結點是關聯(lián)的,要么就是切分后的結點關聯(lián)。描述頂結點的RR對于區(qū)的管理特殊重要,這些RR有兩種類型,名字服務器RR,它描述了區(qū)中的服務器列表;另一種是SOA RR,它描述的區(qū)的管理參數(shù)。描述切分的RR是NS RR,由于切分是在結點間進行的,全部RR不是區(qū)認證數(shù)據的一部分,它應當和相應的在子區(qū)內的頂結點全都。由于名字服務器通常和區(qū)邊界相關,NS RR只在一些區(qū)

27、的頂結點上有。在組成一個區(qū)的數(shù)據中,NS RR在頂層結點和在邊界底的切分處消滅,不在其它地方。區(qū)結構所要實現(xiàn)的一個目標是任何區(qū)都有足夠的數(shù)據可以和任何子區(qū)建立通信。也就是說,父區(qū)有足夠的信息可以訪問子區(qū)中的任何一臺名字服務器。NS RR命名了子區(qū)服務器,它不足以完成上面的要求,因此有了名字但仍舊不知道地址。特殊地,假如名字服務器的名字在子區(qū)內是它自己,我們就無法知道通過它的任何信息了。為了解決這一問題,區(qū)中包括了一個關聯(lián)RR,它不是認證權威數(shù)據的一部分,但它表示了服務器的地址。假如名字服務器名在切分下,就需要這些RR了。3.2.2. 管理問題當有些組織期望把握自己的域時,第一步是標記合適的父區(qū)

28、,然后取得父區(qū)中管理結點的許可來管理。管理的時候沒有什么具體的技術問題,可是還是有一些規(guī)章的,對中型的區(qū)可以沒有這些規(guī)定,但是小型的就不行了。本文不具體爭辯這一問題了,有愛好可參閱相關的資料。一旦選擇了子區(qū)的名字,此區(qū)的新管理結點要冗余的名字服務器來支持。留意:沒有要求一個區(qū)的服務器必需在此域中出名字的主機上。在很多種狀況下,一個區(qū)要想被更簡潔地訪問到最好把內容放得分散一點,不要集中在一起。現(xiàn)在很多國家的名字服務器是放置在別國的,這樣在取得名字解析的時候不用把懇求千里迢迢送到遠程主機上去了。作為配置的最終一步,就是要選擇NS RR和關聯(lián)RR。3.3. 深化名字服務器3.3.1. 查詢和響應名字

29、服務器的主要內容就是響應標準查詢。查詢和響應有專用的格式,查詢包括QTYPE,QCLASS和QNAME,它描述了需要數(shù)據的類型,類(class)和名字。服務器的響應取決于它支持不支持循環(huán)查詢: 最簡潔的是不支持循環(huán)查詢,它返回的要么是本地信息,要么是一個錯誤碼,告知用戶你要的信息這里沒有,然后再返回一個鄰近服務器的地址,讓用戶到那里去查一查。 假如支持循環(huán)查詢,那名字服務器假如未能在本地找到相應的信息,就代替用戶向其它服務器進行查詢,這時它是代替用戶扮演了resolver的角色,直到最終把結果找到(也可能根本沒有結果,那就返回錯誤),并返回給用戶為止。使用循環(huán)查詢要客戶和服務器雙方都支持才行。

30、這個信息通過查詢和響應中的兩位來交換: 假如允許循環(huán)查詢則設置RA位,服務器方可以不管客戶是否進行懇求而直接設置此位 查詢中假如懇求循環(huán)查詢則設置RD位,客戶只有在知道服務器方支持循環(huán)查詢后才能夠進行循環(huán)查詢懇求客戶可以在響應中同時設置RA和RD位來確認是否支持循環(huán)查詢懇求。請留意:服務器在客戶未指明RD位時不會自己進行循環(huán)查詢。假如懇求了循環(huán)查詢,同時也支持循環(huán)查詢,對查詢的響應會是以下之一: 查詢指定的CNAME RR有多個別名 指定的名字服務器不存在 臨時錯誤假如未懇求循環(huán)查詢或不支持循環(huán)查詢,則響應可以可能是:- 認證權威服務器指出名字不存在- 臨時錯誤另外還會供應一些信息,指出所查詢

31、的RR是否從一個區(qū)來,或者是不是被緩存;另一種信息指明名字服務器指出還有一個服務器擁有相同的記錄,這個服務器更靠近要查詢的名字的祖先。3.3.2. 算法名字服務器使用的算法和本地操作系統(tǒng)和數(shù)據結構相關,下面的算法假設RR以幾個樹型結構組織,一個樹就是區(qū),有一個樹是用于緩沖的:1. 是不是支持循環(huán)查詢要看服務器,假如支持,而且需要循環(huán)查詢,轉到第5步;2. 查詢最靠近QNAME祖先的結點所在的區(qū),假如未找到這個區(qū),轉第4步;3. 開頭在區(qū)內從上到下進行匹配,匹配過程的結束條件有以下幾個: 假如整個QNAME匹配了,我們就找到了。假如數(shù)據所在結果是CNAME,QTYPE不匹配CNAME,復制CNA

32、ME RR到響應的應答區(qū),將QNAME轉變?yōu)镃NAME RR中的標準形式后返回第1步;否則復制全部匹配QTYPE的RR到響應的應答區(qū),然后轉第6步; 假如匹配的結果使我們離開了認證權威,我們就獲得一個參照(referral),我們這時會遇到一個帶有NS RR的結點,復制NS RR到響應的認證區(qū)內,在其它區(qū)域任憑放上什么地址,假如從認證數(shù)據或緩沖內沒有獲得地址,可以使用關聯(lián)RR。然后轉到第4步; 假如在一些標記上不行能有匹配,看看是不是有*標記存在,假如*標記不存在,檢查我們要查找的名字是不是QNAME,假如名字就是原來的QNAME,在響應中設置錯誤,否則退出。假如*存在,以RR和QTYPE匹配

33、,假如匹配成功,將它們復制到響應中,但設置RR的擁有者(owner)為QNAME,不是帶有*的結點,然后轉到第6步;4. 在緩沖中進行匹配,假如在緩沖中找到QNAME,將全部和它關聯(lián)的而且匹配QTYPE的RR復制到響應區(qū),假如沒有從認證權威來的授權,可以在緩沖中查找最好的一個,將它放在認證區(qū)內,然后轉到第6步;5. 使用本地resolver響應懇求。保存包括中間CNAME在內的結果到應答中。6. 僅使用本地數(shù)據,試著加入其它有用的RR到查詢的附加部分。然后退出。3.3.5. 區(qū)的維護與傳輸區(qū)管理員的部分工作是維護全部服務器上的區(qū)數(shù)據。當必需要進行修改時,修改必需讓全部的名字服務器知道。這一過程

34、可以通過FTP或其它什么過程完成,而推舉的方法是DNS協(xié)議的區(qū)傳輸部分所指出的方法。通常的自動更新模式是一個服務器是區(qū)的主服務器,管理員對區(qū)內的域名文件(master file)進行修改,修改后管理員通知主服務器裝載新的數(shù)據,其它的非主服務器定期和主服務器進行同步。為了知道是否發(fā)生了修改,非主服務器必需檢查SOA的SERIAL域,只要有轉變,SERIAL域就會轉變,這種轉變可能是加一,也可能是其它的什么算法,反正變了就行。由于我們轉變的域大小是有范圍的,因此理論上必需有一個修改的時間間隔,基本上,老的復本必需在序列號(就是那個域)用完其空間一半時消逝。實際上只要保證比較操作的正確性就可以了。非

35、主服務器的定期同步由區(qū)內SOA RR的參數(shù)REFRESH,RETRY和EXPIRE打算。當非主服務器裝入新區(qū)時,它會在REFRESH秒后向主服務器查詢新序列號,假如查詢未能完成,它會每隔RETRY秒重新進行一次。假如查詢得到的序列號和原來的序列號一樣,則不需要進行轉變。在REFRESH時間間隔后重新開頭。假如非主服務器在EXPIRE間隔后不能進行查詢,它必需拋棄現(xiàn)有的區(qū)數(shù)據。當查詢后知道區(qū)內的數(shù)據已經轉變,非主服務器必需通過AXFR懇求懇求主服務器傳送區(qū)數(shù)據。AXFR可能會被拒絕而產生錯誤,但是通常狀況下會得到一系列響應信息。第一個和最終一個信息必需包括區(qū)內頂認證結點的數(shù)據。中間的信息包括區(qū)內

36、其它RR的信息,包括認證的和非認證的。這些數(shù)據使非主服務器得到區(qū)數(shù)據的復本,由于必需保證數(shù)據的精確,我們必需使用基于連接的協(xié)議。以上的查詢操作不但可以在主服務器非主服務器之間進行,而且可以在非主服務器之間進行。這可以提高整體的運行效率。4.1. 介紹Resolver是用戶程序和域名服務器之間的接口,最簡潔的狀況下,resolver接收從用戶來的懇求,返回符合本地數(shù)據格式的查詢結果。resolver和懇求DNS服務的程序在同一臺機器上,但DNS服務器則在其它機器上,由于resolver可能要查詢多個名字服務器,全部它需要有一個本地緩沖,而查詢的時間則可能因具體查詢不同而差別很大。resolver

37、的一個重要作用是就是它有一個多個程序可以共享的緩沖區(qū),這里保存著一些查詢結果,使用這些結果可以削減對服務器反復的查詢。4.2. 客戶-resolver接口4.2.1. 典型函數(shù)這個接口因主機不同而不同,但有三個函數(shù)是大家必需都有的:1. 主機名到主機地址轉換,此函數(shù)通常定義用來模擬原來基于HOSTS.TXT的函數(shù)。給定一個字符串,返回一個32位IP地址,在DNS下,它轉換為懇求類型A的RR懇求。由于DNS不保存RR的挨次,函數(shù)會進行排序將返回的很多地址中的一個返回給用戶。請留意:最好是返回多個地址,但單個地址是模擬原來基于HOSTS.TXT服務的。2. 主機地址到主機名轉換,給定32位IP地址

38、,返回字符串。查詢時接受PRT查詢,主機名加上IN-ADDR.ARPA后綴進行查詢,如IP地址為,則PTR RR查詢域名.IN-ADDR.ARPA。3. 通用查詢函數(shù),調用者供應QNAME,QTYPE和QCLASS,期望全部匹配的RR,函數(shù)會使用DNS格式而非本機格式返回查詢結果,結果中包括全部RR的內容。在resolver執(zhí)行上面的函數(shù)時,會返回以下的結果給客戶: 給定懇求數(shù)據的一個或多個RR,此時resovler以合適的格式返回結果 名字錯誤(NE),在查詢的名字不存在是會返回NE 未找到數(shù)據錯誤,查詢的名字存在,但合適類型的數(shù)據不存在時產生這種錯誤,如把主機地

39、址用于郵箱地址時會返回錯誤需要留意的是,有時某些函數(shù)會在查詢時名字錯誤和數(shù)據未找到錯誤會被合并為另一種類型的錯誤,但通常函數(shù)不會。一個緣由是程序通常先查詢一個名字(包括類型信息),然后是同一個名字的另外類型,假如兩個錯誤合起來,反面會減慢查詢速度。4.2.2. 別名當試圖解析一個特殊的名字查詢時,resolver可能發(fā)覺這是一個別名,假如可能這種狀況會返回給客戶。但是經常,當resolver遇到一個CNAME時,它會重新開頭一個查詢。然而,在執(zhí)行通常函數(shù)而且CNAME RR配置查詢類型時,resolver不應當要別名。在有別名的時候有幾種特殊狀況。多級別名應當避開,由于太缺乏效率,但這也不應當

40、被做為錯誤返回給客戶。對于別名循環(huán)和別名指向不存在的名字時應當將錯誤返回給客戶。4.2.3. 臨時錯誤有時候由于網絡等緣由,resolver可能不能完成某個懇求,這時不應當返回沒出名字或未查詢到這類錯誤。這類錯誤對人類用戶來說可是件煩心的事。在某些時候可以堵塞懇求,但這并不是個好的解決之道,特殊是服務器就等它完成以轉向其它任務的時候。推舉的方法是返回錯誤指示現(xiàn)在消滅臨時錯誤。4.3. Resolver內部每個resolver的實現(xiàn)都不相同,會有簡單的規(guī)律處理各種錯誤,而本文只爭辯一個綱領。4.3.1. 根(Stub)resolvers一種實現(xiàn)resolver的方法就是在支持循環(huán)查詢的服務器上實

41、現(xiàn),這樣可以節(jié)省PC機上的資源,也可以對查詢結果緩沖進行集中管理。其它的事情就是要一個支持循環(huán)查詢服務器地址的文件在PC機上,PC機上資源有限,支持一個域名數(shù)據庫可能不太現(xiàn)實。用戶必需確定所列的名字服務器支持循環(huán)查詢,服務器可以拒絕進行任何客戶的循環(huán)查詢懇求,因此用戶必需向管理員核對。這種類型的服務有一些不足,由于循環(huán)查詢較費時,根對UDP重發(fā)時間的選擇比較難以確定,服務器會由于根的反復重發(fā)而崩潰。使用TCP或許會好,但這樣會嚴峻占用主機時間,使用TCP相當于實現(xiàn)一個實時的查詢系統(tǒng)。4.3.2. 資源除了自己的資源外,resolver可以訪問本地服務器保存的區(qū)數(shù)據。這會使resolver的速度

42、加快,但是也可以讓緩沖數(shù)據沖掉區(qū)數(shù)據。本文中指的本地信息是說緩沖和共享區(qū)數(shù)據,在有認證數(shù)據和緩沖數(shù)據時應當優(yōu)先使用認證數(shù)據。下面的算法假設全部函數(shù)被轉換為一個通常的查詢函數(shù),使用下面的數(shù)據結構代表進行中的懇求的狀態(tài):SNAME要查詢的域名STYPE查詢懇求的QTYPESCLASS查詢懇求的QCLASSSLIST表示正在查詢的名字服務器和區(qū),它保存resolver的猜測,猜測期望查詢的數(shù)據在什么地方,通過接收的數(shù)據,此結構內的數(shù)據會發(fā)生變化。它包括服務器地址,區(qū)內已知的服務器,歷史記錄,以及表示查詢距離目標還有多遠的標記(查詢從樹頂開頭向下,直到目標)。SBELT在resolver無法從本地信息

43、知道應當查詢哪個服務器時,它就派上用場了。CACHE保存前一次響應的結果,由于resolver會拋棄達到TTL時間的RR,全部大部分resolver實現(xiàn)將接收到RR的時間轉換為確定時間,然后保存在緩沖中,resolver可以在查詢時順便將過期RR拋棄,也可定期進行維護。4.3.3. 算法大體上,算法有四步:1. 檢查結果是否在本地,假如是則直接返回;2. 向最合適的服務器查詢;3. 向多個服務器發(fā)出懇求,直到得到響應;4. 分析結果: 假如響應給出了結果或包含名字錯誤,緩沖并返回結果給用戶; 假如響應指出更合適的服務器,緩沖這個結果,轉第2步; 假如響應顯示CNAME,但并不是答案,緩沖CNA

44、ME,將SNAME改為CNAME RR中的統(tǒng)一名稱,然后轉第1步; 假如響應顯示服務器失敗或其它不行識別的內容,從SLIST中刪除此服務器,然后轉第3步。第1步在緩沖內查找,假如找到了,那就返回給用戶。有些resolver可以設置不使用緩沖內的數(shù)據,但并不推舉把它做為默認狀況。假如resolver能夠直接訪問服務器的區(qū),而且能夠找到數(shù)據的認證形式,則不要使用緩沖內的數(shù)據。第2步向服務器查詢需要的數(shù)據,通常的方法是查找本地供應的服務器RR,供應SNAME,然后給出SNAME的父域名,父域名的父域名,以此類推,直到根。因此,假如SNAME=Mockapetris.ISI.EDU,查詢NS RR的挨次為Mockapetris.ISI.EDU,ISI.EDU,EDU,最終是.(根)。NS RR列出了此區(qū)的或在SNAME之上的主機名,復制名字到SLIST,使用本地信息設置它們的地址,可能地址不行用,此時resolver有幾種不同的選擇,最好是進行并行搜尋,一個搜尋現(xiàn)在可用的,一個去查

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論