實(shí)驗(yàn)九:DNS解析實(shí)驗(yàn)
計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院 計(jì)算機(jī)網(wǎng)路 實(shí)驗(yàn)報(bào)告實(shí)驗(yàn)項(xiàng)目 DNS 解析實(shí)驗(yàn)及HTTP 分析 實(shí)驗(yàn)日期 2016/6/12一 實(shí)驗(yàn)?zāi)康?.1理解DNS 系統(tǒng)的工作原理。1.2熟
計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院 計(jì)算機(jī)網(wǎng)路 實(shí)驗(yàn)報(bào)告
實(shí)驗(yàn)項(xiàng)目 DNS 解析實(shí)驗(yàn)及HTTP 分析 實(shí)驗(yàn)日期 2016/6/12
一 實(shí)驗(yàn)?zāi)康?/p>
1.1理解DNS 系統(tǒng)的工作原理。
1.2熟悉DNS 服務(wù)器的工作過程。
1.3熟悉DNS 報(bào)文格式。
1.4理解DNS 緩存的作用。
二 實(shí)驗(yàn)原理
2.1 DNS 及其解析
Internet 上的每臺(tái)主機(jī)都有一個(gè)唯一的全球IP 地址,IPv4中的IP 地址是由32位的二進(jìn)制數(shù)組成的。這樣的地址對于計(jì)算機(jī)來說容易處理,但對 于用戶來說,即使將IP 地址用十進(jìn)制的方式表示,也不容易記憶。而主機(jī)之間的通信最終還是需要用戶的操作,用戶在訪問一臺(tái)主機(jī)前,必須首先獲得其地址。因此,我們?yōu)榫W(wǎng)絡(luò)上的主機(jī)取一個(gè)有意義又容易記憶的名字,這個(gè)名字稱為域名。
雖然我們?yōu)镮nternet 上的主機(jī)取了一個(gè)便于記憶的域名,但通過域名并不能直接找到要訪問的主機(jī),中間還需要一個(gè)從域名查找到其對應(yīng)的IP 地址的過程,這個(gè)過程就是域名解析。域名解析的工作需要由域名服務(wù)器DNS 來完成。
域名的解析方法主要有兩種:遞歸查詢(Recursive Query)和迭代查詢 (Iterative Query) 。一般而言,主機(jī)向本地域名服務(wù)器的查詢米用遞歸查詢,而本地域名服務(wù)器向根域名服務(wù)器的查詢通常采用迭代查詢。
為了提高解析效率,在本地域名服務(wù)器以及主機(jī)中都廣泛使用了高速緩存,用來存放最近解析過的域名等信息。當(dāng)然,緩存中的信息是有時(shí)效 的,因?yàn)橛蛎虸P 地址之間的映射關(guān)系并不總是一成不變的,因此,必須定期刪除緩存中過期的映射關(guān)系。
2.2DNS 報(bào)文格式
DNS 請求和應(yīng)答都用相同的報(bào)文格式,分成5部分(有些部分允許為空),如圖所示。
第 1 頁
,HEADER 是必需的,它定義了報(bào)文是請求還是應(yīng)答,也定義了報(bào)文的其他部分是否需要存在,以及是標(biāo)準(zhǔn)查詢還是其他。HEADER 段的格式如圖所示。
HEADER 中的FLAG (標(biāo)志)部分結(jié)構(gòu)如圖5-3所示
各部分含義如下:
QR :查詢/響應(yīng)標(biāo)志位。
opcode :定義查詢或響應(yīng)的類型。
AA :授權(quán)回答的標(biāo)志位,該位在響應(yīng)報(bào)文中有效。
TC :截?cái)鄻?biāo)志位。
RD :該位為1表示客戶端希望得到遞歸回答。
RA :只能在響應(yīng)報(bào)文中置為1,表示可以得到遞歸響應(yīng)。
zero :保留字段,用全0填充。
rcode :返回碼,表示響應(yīng)的差錯(cuò)狀態(tài)。
QUESTION 部分包含著問題,可以為多個(gè)。每個(gè)問題的格式如圖所示。
ANSWER (應(yīng)答)、AUTHORITY (授權(quán)應(yīng)答)、ADDITIONAL (附加信息)部分都共用相同
第 2 頁
的格式:資源記錄RR (Resource Record)。資源記錄可包含多個(gè),其個(gè)數(shù)由報(bào)文首部對應(yīng)的數(shù)值確定,每個(gè)資源記錄格式如圖所示。
三 實(shí)驗(yàn)要求
3.1拓?fù)鋱D
3.2DNS 域名服務(wù)器的層次結(jié)構(gòu)
第 3 頁
,3.3 IP地址配置
3.3 其他預(yù)配置
本實(shí)驗(yàn)需要在Web 服務(wù)器設(shè)備www.x.cn 和www.y.com 中開啟HTTP 服務(wù)并設(shè)置其內(nèi)容,關(guān)閉其他服務(wù)。另外,還需要進(jìn)行以下幾項(xiàng)預(yù)配置(已完成)。
(1)預(yù)配置路由器的靜態(tài)路由
Router0、Router1及Router2預(yù)配置的靜態(tài)路由如圖
第 4 頁
(2)預(yù)先開啟并配置域名服務(wù)器的DNS 服務(wù) root_dns設(shè)備添加的資源記錄如圖
cn_dns設(shè)備添加的資源記錄如圖
com_dns設(shè)備添加的資源記錄如圖
y.com_dns設(shè)備添加的資源記錄如圖
第 5 頁
四 實(shí)驗(yàn)步驟、結(jié)果(程序 注釋 截圖)及分析
4.1觀察本地域名解析過程
4.1.1步驟一:在PC 的瀏覽器窗口請求內(nèi)部Web 服務(wù)器的網(wǎng)頁
單擊Simulation (模擬)選項(xiàng)卡進(jìn)入模擬模式。
在Event List Filters (事件列表過濾器)區(qū)域中,單擊Edit Filters按鈕,僅選擇DNS 事件。 單擊邏輯工作空間中的PC, 在Desktop (桌面)選項(xiàng)卡中打幵Web Browser (Web瀏覽器),在URL 框中輸入www.x.cn ,然后單擊Go (轉(zhuǎn)到)按鈕。最小化模擬瀏覽器窗口。
4.1.2步驟2:捕獲DNS 事件并分析本地域名解析過程
在Simulation Panel (模擬面板)中單擊Auto Capture/Play按鈕,此時(shí)會(huì)播放PC 與Server 之間的數(shù)據(jù)包交換動(dòng)畫,并且相關(guān)的事件會(huì)被添加到Event List中。
捕獲結(jié)束時(shí)將會(huì)出現(xiàn)一個(gè)Buff Full (緩沖區(qū)滿)的對話框,該對話框提示已達(dá)到事件數(shù)量的最大值,有兩個(gè)按鈕Clear Event List(清除事件列表)和 View Previous Events (查看歷史事件),單擊 View Previous Events (查看歷史事件)按鈕關(guān)閉對話框。
第 6 頁
,在Event List 區(qū)域中,單擊Info 列中的某個(gè)DNS 事件的單色框,將會(huì)打開相應(yīng)的PDU Information 窗口。本步驟需要查看該窗口OSI Model選項(xiàng)卡中In Layers和 Out Layer的 Layer 7的信息以及 Inbound/Outbound PDU Details (入站/出站PDU 詳細(xì)數(shù)據(jù))選項(xiàng)卡中第7層的PDU 信息。
本地DNS 服務(wù)器的解析過程大致如下。
由于PC 中設(shè)置了 DNS 服務(wù)器的地址為192.168.2.1,因此當(dāng)PC 輸入域名www.x.cn 請求網(wǎng)頁時(shí),它將作為DNS 客戶端向本地域名服務(wù)器 cn_dns發(fā)送一個(gè)DNS 查詢請求,請求域名www.x.cn 的IP 地址。
本地域名服務(wù)器cn_dns收到PC 的DNS 查詢請求后,首先嘗試在本地區(qū)域文件查找,發(fā)現(xiàn)確實(shí)存在相應(yīng)的資源記錄,于是將域名www.x.cn 對應(yīng)的IP 地址192.168.5.1放入DNS 的應(yīng)答報(bào)文發(fā)送給PC 。
PC 收到本地域名服務(wù)器cn_dnS的應(yīng)答報(bào)文后,取出報(bào)文中解析出的IP 地址192.168.5.1,并對其進(jìn)行訪問,此時(shí)在Web Browser (Web瀏覽器)中顯示相應(yīng)的Web 頁面。
完成后單擊Reset Simulation (重置模擬)按鈕,將原有的事件全部清空;同時(shí)關(guān)閉PC 的
第 7 頁
,Web Browser(Web 瀏覽器)窗口。
4.2任務(wù)二:觀察外網(wǎng)域名解析過程
4.2.1步驟1:在PC 的瀏覽器窗口請求外部Web 服務(wù)器的網(wǎng)頁
保持模擬模式中Event List Filters (事件列表過濾器)區(qū)域的選擇(仍為僅選擇DNS 事件)不變。
單擊邏輯工作空間中的PC ,在Desktop (桌面)選項(xiàng)卡中打開Web Browser (Web瀏覽器),在URL 框中輸入www.y.com ,然后單擊Go 按鈕。最小化模擬瀏覽器窗口。
4.2.2步驟2:捕獲DNS 事件并分析外網(wǎng)域名解析過程
在Simulation Panel (模擬面板)中單擊Auto Capture/PIay按鈕進(jìn)行捕獲,當(dāng)捕獲結(jié)束出現(xiàn)BuffFull (緩沖區(qū)滿)的對話框時(shí),單擊View Previous Events按鈕關(guān)閉對話框。
應(yīng)注意重點(diǎn)觀察解析外網(wǎng)域名時(shí)各級域名服務(wù)器的具體解析過程。此處可忽略路由器和交換機(jī)的轉(zhuǎn)發(fā)過程,僅分析DNS 的請求和響應(yīng)報(bào)文在 DNS 服務(wù)器之間的交互情況。
DNS 服務(wù)器之間的解析過程如圖所示。
第 8 頁
,① PC 向本地域名服務(wù)器cn_dns發(fā)送一個(gè)DNS 查詢請求包請求解析域名 www.y.com 。 ② 本地域名服務(wù)器cn_dnS收到PC 的DNS 查詢請求后,在本地區(qū)域文件中未找到相應(yīng)的資源記錄,于是cn_dns作為DNS 客戶端向根域名服務(wù)器root_dns發(fā)送DNS 請求包請求解析域名www.y.com 。
③ 根域名服務(wù)器root_dns收到cn_dns發(fā)來的DNS 查詢請求后,在本地區(qū)域文件中未能直接解析出域名www.y.com ,但找到能解析“.com ”后 綴的頂級域名服務(wù)器com_dns,于是root_dns也作為DNS 客戶端向頂級域 名服務(wù)器com_dns發(fā)送DNS 請求包,請求解析域名www.y.com
④ 頂級域名服務(wù)器com_dns收到root_dns發(fā)來的DNS 查詢請求后, 在本地區(qū)域文件中未能直接解析出域名www.y.com ,但找到能解析“y.com ” 后綴的權(quán)限域名服務(wù)器y.com_dns,于是com_dns也作為DNS 客戶端向權(quán) 限域名服務(wù)器y.com_dns發(fā)送DNS 請求包請求解析域名www.y.com 。
⑤ 權(quán)限域名服務(wù)器y.com_dns收到com_dns發(fā)來的DNS 查詢請求后,在本地區(qū)域文件中找到相應(yīng)的資源記錄直接解析出域名www.y.com, 于是將IP 地址192.168.6.2寫入DNS 應(yīng)答報(bào)文中發(fā)送給頂級域名服務(wù)器com_dns。
⑥ com_dns作為DNS 客戶端收到DNS 應(yīng)答報(bào)文后,取出IP 地址192.168.6.2,同時(shí)作為DNS 服務(wù)器將IP 地址寫入DNS 應(yīng)答報(bào)文中發(fā)送給根域名服務(wù)器root_dns。
⑦ root_dns作為DNS 客戶端收到DNS 應(yīng)答報(bào)文后,取出IP 地址,同時(shí)作為DNS 服務(wù)器將IP 地址寫入DNS 應(yīng)答報(bào)文中發(fā)送給本地域名服務(wù)器cn_dns。
⑧ cn_dns作為DNS 客戶端收到DNS 應(yīng)答報(bào)文后,取出IP 地址 192.168.6.2,同時(shí)作為DNS 服務(wù)器將IP 地址寫入DNS 應(yīng)答報(bào)文中發(fā)送給PC 。
PC 收到本地域名服務(wù)器cn_dns的應(yīng)答報(bào)文后,取出IP 地址192.168.6.2,并對其進(jìn)行訪問,
第 9 頁
此時(shí)在Web Browser (Web瀏覽器)中顯示相應(yīng)的Web 頁面。
完成后單擊Reset Simulation (重置模擬)按鈕,將原有的事件全部清空;同時(shí)關(guān)閉PC 的Web Browser(Web 瀏覽器)窗口。
4.3任務(wù)三:觀察緩存的作用
4.3.1步驟1:查看本地域名服務(wù)器cn_dns的緩存
查看緩存有兩種方法:
單擊邏輯工作空間中的本地域名服務(wù)器cn_dns,在Config (配置) 選項(xiàng)卡中選擇DNS 服務(wù),并單擊頁面下方的DNS Cache (DNS緩存)按鈕,查看此時(shí)本地域名服務(wù)器cn_dns中的緩存。
先選擇工具欄中的Inspect (查看)工具,單擊邏輯工作空間中的本地域名服務(wù)器cn_dns,在彈出的快捷菜單中選擇DNS Cache Table (DNS緩存表)即可查看此時(shí)本地域名服務(wù)器cn_dnS中的緩存。查看完后重新選擇工具欄中的Select (選?。┕ぞ?。
4.3.2步驟2:在PC 的瀏覽器窗口請求外部Web 服務(wù)器的網(wǎng)頁
重復(fù)任務(wù)二,再次觀察此次解析外網(wǎng)域名的過程。
第 10 頁