DNS實驗報告
北京郵電大學 計算機網(wǎng)絡(luò)課程設(shè)計 實驗報告
北京郵電大學 計算機網(wǎng)絡(luò)課程設(shè)計 實驗報告 課程設(shè)計題目:dns 中繼服務器實驗報告 班級:2009211315班 小組人員:李根 09211541 曾若峰 09211544 宮志明 09211545
一、 系統(tǒng)概述
1) 運行環(huán)境:windows xp
2) 編譯: microsoft visual c 6.0 3) 使用方法: a) 使用ipconfig/all,記下當前dns 服務器,例如為10.3.9.3 b) 使用下頁的配置界
面,將dns 設(shè)置為127.0.0.1(本地主機) c) 運行你的dnsrelay 程序(在你的程序中把外部dns 服務器設(shè)為前面記下的 10.3.9.3)
d) 正常使用ping ,ftp ,ie 等,名字解析工作正常
二、 系統(tǒng)的功能設(shè)計 設(shè)計一個dns 服務器程序,讀入“域名-ip 地址”對照表,當客戶端查詢域名對應的ip
地址時,用域名檢索該對照表,三種檢索結(jié)果:
1) 檢索結(jié)果為ip 地址0.0.0.0,則向客戶端返回“域名不存在”的報錯消息(不良網(wǎng) 站攔截功能)
2) 檢索結(jié)果為普通ip 地址,則向客戶返回這個地址(服務器功能)
3) 表中未檢到該域名,則向因特網(wǎng)dns 服務器發(fā)出查詢,并將結(jié)果返給客戶端(中 繼功能)
? 考慮多個計算機上的客戶端會同時查詢,需要進行消息id 的轉(zhuǎn)換
三、 模塊劃分
dns服務器主模塊包含三個子模塊,分別如下:
1) 命令行參數(shù)處理模塊:該模塊用來處理通過命令行提示符來啟動這個dns 服務器 時所輸入的命令行參數(shù),管理員通過設(shè)置不同的參數(shù)可以使dns 服務器顯示不同程度的
提示和調(diào)試信息。所以這模塊主要是依照輸入的參數(shù)設(shè)置標志數(shù)據(jù),以控制最后的各種信息
的輸出。
2) 本地解析模塊:本模塊是在本dns 服務器本地保存的曾經(jīng)解析過的或者需要屏蔽 額域名和其對應ip 信息文件中查找從應用程序來的請求解析的域名,在這個文件中查到
需要的域名后取出對應的ip 地址,并構(gòu)造dns 應答數(shù)據(jù)包返回給發(fā)送此dns 域名解析請求的
應用程序。
3) 外部dns 服務器解析模塊:當本地解析失敗時,本dns 服務器會調(diào)用外部dns 服 務器解析模塊。此模塊將應用程序發(fā)送的dns 請求報文轉(zhuǎn)發(fā)給外部dns 服務器,然后接
收外部服務器返回的應答信息,并根據(jù)這個信息給予應用程序相應的dns 應答。 三個模塊與主模塊的關(guān)系圖如下,主模塊調(diào)用這三個并列的模塊,而本地解析模塊調(diào)用 文件查找子模塊:
四、 軟件流程圖
五、 主要數(shù)據(jù)結(jié)構(gòu)
int gettable(char *tablepath) //函數(shù):獲取域名解析表 void geturl(char *recvbuf, int recvnum) //函數(shù):獲取dns 請求中的域名 int isfind(char* url, int num) //函數(shù):判斷是否在表中找到dns 請求中的域名 unsigned short registernewid (unsigned short oid, sockaddr_in temp, bool ifdone)
//函數(shù):將請求id 轉(zhuǎn)換為新的id ,并將信息寫入id 轉(zhuǎn)換表中
,void displayinfo(unsigned short newid, int find) //函數(shù):打印 時間 newid 功
能 域名 ip
六、 測試用例以及運行結(jié)果 a) 測試本地解析功能
在本地dns 對照表中找到記錄,將相應的ip 地址返回給用戶: 程序上: 篇二:dns 實驗報告 實驗報告
姓名:王澤康 班級:網(wǎng)工1401 實驗名稱: dns 域名解析實驗
實驗目的:
學會創(chuàng)建主dns 和輔助dns 。 學會新建資源記錄。
學會利用輔助dns 恢復主dns 。 實驗環(huán)境:
win sever 2003 (虛擬機)兩臺 實驗步驟:
準備:打開兩臺虛擬機設(shè)置主機名稱分別為:xinhua-777、xinhua-888 設(shè)置兩臺
虛擬機的ip 地址分別為: 192.168.9.1、192.168.9.3 第一步:創(chuàng)建dns 控制臺。 把win sever2003的系統(tǒng)光盤這里是鏡像文件放入光驅(qū)。 開始——設(shè)置——控制
面板——選擇添加或刪除程序。 第二步:新建正向解析域。 經(jīng)第一步添加完成后添加的dns 在開始——程序——管理工具——dns 在此之
前要先設(shè)置主機的tcp/ip協(xié)議里的dns 地址設(shè)置為127.0.0.1 (為 回環(huán)地址)向計算機說明自己就是dns 服務器。 還要更改計算機的后綴名,更改后完整的計算機名為計算機名 完成后就是這樣,默認出現(xiàn)了三個文件以及自己主機的記錄 第三步:創(chuàng)建三個主機a 記錄以及一個別名記錄 選擇創(chuàng)建的正向查找區(qū)域,在右邊空白區(qū)域右擊選擇新建主機記錄(a ) 篇三:dns 實驗報告 dns實驗報告
實驗目的
學會客戶端使用nslookup 命令進行域名解析。 通過協(xié)議分析軟件掌握dns 協(xié)議的報文格式。 實驗原理
連上英特網(wǎng)的pc 機,并且安裝有協(xié)議分析軟件wireshark. 實驗步驟
1. 打開wireshark ,設(shè)置好過濾器
(1)打開后選capture ,后選interfaces
(2)接著選有數(shù)據(jù)變動的網(wǎng)絡(luò)連接,后選option
(3)接著在filter 里輸入 udp port 53
(1)在開始里找到運行,輸入cmd 后回車
,3.設(shè)置好過濾器后按enter 鍵,開始抓包.
4.分析wireshark 捕獲的數(shù)據(jù)包 . 分析前四幀:
首先通過反向查詢獲得本地dns 服務器的域名域名,其次通過正向查詢獲得查詢域名的
ip 地址:
5..具體分析捕獲的數(shù)據(jù)包的dns 報文格式. 第一幀是182.101.50.124發(fā)送給本地dns 服務器219.229.240.19的反向查詢?nèi)〉脠笪模?/p>
用于獲得本地dns 服務器的名字。具體協(xié)議說明如下 第二幀是本地dns 服務器返回的響應幀, 包含查詢結(jié)果,即本地dns 服務器的名字: 本
地 陜西師范大學 計算機網(wǎng)絡(luò) 實驗報告 實驗四 dns
一、實驗目的
1.熟悉并掌握 wireshark的操作。 2.分析dns 協(xié)議。
二、實驗器材
1.pc機電腦一臺。
2.下載wireshark 軟件并安裝
三、實驗內(nèi)容及問題回答
1.練習使用nslookup 程序發(fā)送dns 查詢
1. run nslookup to obtain the ip address of a web server in asia. europe.
3. run nslookup so that one of the dns servers obtained in question 2 is queried
for the mail servers for yahoo! mail
2.練習使用ipconfig (1)ipconfig/all
(2).ipconfig/displaydns
(3) .ipconfig/flushdns
3. tracing dns with wireshark 實驗1過程:
1.使用ipconfig 清空dns 緩沖存儲; 2.清空瀏覽器的緩存;
3.啟動wireshark ,在filter 中輸入“ip.addr==10.2.136.26”; 4.開始抓包;
5.訪問; 6. 頁面打開后,停止抓包。
4. locate the dns query and response messages. are they sent over udp or tcp? 答:用的是udp
5. what is the destination port for the dns query message? what is the source
port of dns response message? 答:src port :domain(53), dst port: domain(53)
6. to what ip address is the dns query message sent? use ipconfig to determine
the ip address of your local dns server. are these two ip addresses the same? 答:destination:202.117.144..2(202.117.144.2) 與用本地dns 服務器的ip 地址相同。
7. examine the dns query message. what “type ” of dns query is it? does the query
message contai
答:type 為a, 沒有應答,
,8. examine the dns response message. how many “answers ” are provided? what 答:有一個應答。應答的內(nèi)容包括:name 、type 、class 、time to live、data 、addr.
9. consider the subsequent tcp syn packet sent by your host. does the destination
ip address of the syn packet correspond to any of the ip addresses provided in the
dns response message? 答:不一致
10. this web page contains images. before retrieving each image, does your host
issue new dns queries? 答:沒有。 實驗2過程: 1. 開始抓包;
2. 使用nslookup 獲取的地址。 3. 停止抓包。 實驗結(jié)果: 篇五:dns 實驗報告 dns實驗報告
一、 實驗內(nèi)容
1、 利用nslookup 工具允許主機向指定的dns 服務器查詢某個dns 記錄;
2、 熟悉ipconfig 命令,用它來查看tcp/ip信地址、dns 服務器的地址、適配器的類
型等信息
3、 熟悉并掌握ethereal 的基本操作利用ethereal 分析dns
二、 實驗條件
聯(lián)網(wǎng)的pc ;裝有操作系統(tǒng)win7;ethereal 等軟件。
三、 實驗步驟及分析
? nslookup進行dns 查詢
1) run nslookup to obtain the ip address of a web server in asia.
2) run nslookup to determine the authoritative dns servers for a university in
europe. 分析:nslookup –type 命令用于查詢的資源記錄類型, ns聲明命名區(qū)域的每臺 dns 名稱服務器。在這里我是運行nslookup 確定英國劍橋大學
的權(quán)威dns 服務器,由nslookup 的應答可以知道劍橋大學有七臺域名服務器,它們都是劍橋
大學里主機的權(quán)威dns 服務器。最后應答還返回了其中一臺權(quán)威服務器的ip 地址。
3) run nslookup so that one of the dns servers obtained in question 2 is queried
for
the mail servers for yahoo! mail. 分析:在這里,我們是想通過dns 服務器bitsy.mit.edu 查詢, 而不是我們開始默認的本
地dns 服務器。dns 服務器bitsy.mit.edu 返回了雅虎郵箱的ip 地址信息,由信息我們可以
知道我們所查詢的目標域名是別名。 ? ipconfig指令查看本機tcp/ip信息 ? 用ethereal 分析dns (1) 利用ipconfig/flushdns命令清空你的主機上的dns 緩
存。啟動瀏覽器,并將瀏覽器的緩存清空。
(2) 啟動ethereal ,在顯示過濾篩選說明處輸入“ip.addr==your_ip_address”(如:
ip.addr==10.17.7.23),過濾器將會刪除所有目的地址和源地址都與指定ip 地址不同的分組。
(3) 開始ethereal 分組俘獲。