版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
網(wǎng)絡(luò)操作系統(tǒng)》課程設(shè)計(jì)報(bào)告書題目: DNS協(xié)議模擬實(shí)現(xiàn)學(xué)號(hào): 學(xué)生姓名: 指導(dǎo)教師:目錄TOC\o"1-5"\h\z\o"CurrentDocument"實(shí)驗(yàn)內(nèi)容 3\o"CurrentDocument"實(shí)驗(yàn)?zāi)康?4數(shù)據(jù)結(jié)構(gòu)說明 4算法流程圖 5\o"CurrentDocument"程序清單 5\o"CurrentDocument"使用說明 7總結(jié) 9一、實(shí)驗(yàn)內(nèi)容設(shè)計(jì)一個(gè)簡(jiǎn)單的Winsock網(wǎng)絡(luò)程序,模擬UDP數(shù)據(jù)報(bào),加深對(duì)DNS作用的理解。按照以下步驟完成該練習(xí):1、 啟動(dòng)VisualC++,進(jìn)入集成開發(fā)環(huán)境;2、 建立一個(gè)"Win32ConsoleApplication"類型的工程,工程名自擬;3、 在該工程下,新建一個(gè)源程序文件,即選擇“C++SourceFile",文件名自擬;4、 輸入以下源程序/////////////////////////////////////////////本程序的功能為://〃⑴獲取本機(jī)名(gethostname()函數(shù))//〃(2)獲得給定主機(jī)名的IP地址(gethostbyname()函數(shù))////(3)獲得給定IP地址的主機(jī)名(gethostbyaddr()函數(shù))//////////////////////////////////////////頭文件//#include<winsock.h>#include<stdio.h>#include<string.h>#pragmacomment(lib,”ws2_32」ib”)//主文件//intmain(){WORDwVersionRequested=MAKEWORD(1,1);WSADATAwsaData;//初始化windowssocketsAPI//if(WSAStartup(wVersionRequested,&wsaData)){printf("WSAStartupfailed%s\n",WSAGetLastError());return-1;}charhostname[256];〃獲得本主機(jī)名//intres=gethostname(hostname,sizeof(hostname));if(res!=O){〃錯(cuò)誤處理//printf("Error:%u\n",WSAGetLastError());return-1;}printf("本主機(jī)名為:%s\n”,hostname);〃打印本主機(jī)名字〃printf("請(qǐng)輸入一個(gè)主機(jī)域名:”);〃輸入一個(gè)主機(jī)的域名//scanf(”%s”,hostname);//利用主機(jī)名獲得主機(jī)的地址//hostent*pHostent=gethostbyname(hostname);if(pHostent==NULL){〃錯(cuò)誤處理〃printf("Error:%u\n",WSAGetLastError());return-1;//解析返回的主機(jī)地址信息:別名、地址類型、地址長度,并打印//hostent&he=*pHostent;printf("name=%s\naliase=%s\naddrtype=%d\nlength=%d\n",he.h_name,he.h_aliases,he.h_addrtype,he.h_length);sockaddr_insa;〃打印主機(jī)每一個(gè)網(wǎng)卡的IP地址〃for(intnAdapter=0;he.h_addr_list[nAdapter];nAdapter++){memcpy(&sa.sin_addr.s_addr,he.h_addr_list[nAdapter],he.h_length);printf("Address:%s\n",inet_ntoa(sa.sin_addr));}//顯示lP地址//printf("\n");unsignedlongaddr;charhostaddr[50];printf("請(qǐng)輸人服務(wù)器IP地址:");〃輸入一個(gè)服務(wù)器的IP地址〃scanf("%s",hostaddr);addr=inet_addr(hostaddr);//將lP地址轉(zhuǎn)化為網(wǎng)絡(luò)字節(jié)序//pHostent=gethostbyaddr((char*)&addr,4,AF_INET);〃利用IP地址獲得主機(jī)名人〃if(pHostent=NULL){〃錯(cuò)誤處理〃printf("Error:%u\n",WSAGetLastError());return-1;}hostent&hel=*pHostent;printf("主機(jī)名為;%s\naliases=%s\naddrtype=%d\nlength=%d\n”,he.h_name,he.h_aliases,he.h_addrtype,he.h_length);//打印返回的主機(jī)信息//WSACleanup();〃結(jié)束windowssocketsAPI//return0;}5、編譯,連接并運(yùn)行程序6、觀察程序運(yùn)行的結(jié)果,體會(huì)程序中幾個(gè)重要函數(shù)的作用二、實(shí)驗(yàn)?zāi)康脑O(shè)計(jì)一個(gè)簡(jiǎn)單的Winsock網(wǎng)絡(luò)程序,模擬UDP數(shù)據(jù)報(bào),加深對(duì)DNS作用的理解DNS協(xié)議為應(yīng)用層協(xié)議,可實(shí)現(xiàn)IP地址和主機(jī)名之間的轉(zhuǎn)換。三、數(shù)據(jù)結(jié)構(gòu)的說明WSADATAwsaData;//初始化windowssocketsAPI//
charhostname[256]; //獲得本主機(jī)名//intres; //錯(cuò)誤處理sockaddr_insa;//打印主機(jī)每一個(gè)網(wǎng)卡的IP地址//charhostaddr[50];//服務(wù)器IP地址五、程序清單#include<winsock.h>#include<stdio.h>#include<string.h>#pragmacomment(lib,"ws2_32.lib")intmain(){WORDwVersionRequested=MAKEWORD(1,1);WSADATAwsaData;//初始化windowssocketsAPI//if(WSAStartup(wVersionRequested,&wsaData)){printf("WSAStartupfailed%s\n",WSAGetLastError());return-1;}charhostname[256];〃獲得本主機(jī)名//intres=gethostname(hostname,sizeof(hostname));if(res!=0){〃錯(cuò)誤處理//printf("Error:%u\n",WSAGetLastError());return-1;}printf("本主機(jī)名為:%s\n”,hostname);〃打印本主機(jī)名字〃printf("請(qǐng)輸入一個(gè)主機(jī)域名:”);〃輸入一個(gè)主機(jī)的域名〃scanf(”%s”,hostname);//利用主機(jī)名獲得主機(jī)的地址//hostent*pHostent=gethostbyname(hostname);if(pHostent==NULL){〃錯(cuò)誤處理〃printf("Error:%u\n",WSAGetLastError());return-1;}//解析返回的主機(jī)地址信息:別名、地址類型、地址長度,并打印//hostent&he=*pHostent;printf("name=%s\naliase=%s\naddrtype=%d\nlength=%d\n",he.h_name,he.h_aliases,he.h_addrtype,he.h_length);sockaddr_insa;//打印主機(jī)每一個(gè)網(wǎng)卡的IP地址〃for(intnAdapter=0;he.h_addr_list[nAdapter];nAdapter++){memcpy(&sa.sin_addr.s_addr,he.h_addr_list[nAdapter],he.h_length);printf("Address:%s\n",inet_ntoa(sa.sin_addr));}//顯示lP地址//printf("\n");unsignedlongaddr;charhostaddr[50];printf("請(qǐng)輸人服務(wù)器IP地址:");〃輸入一個(gè)服務(wù)器的IP地址〃scanf("%s",hostaddr);addr=inet_addr(hostaddr);//將lP地址轉(zhuǎn)化為網(wǎng)絡(luò)字節(jié)序//pHostent=gethostbyaddr((char*)&addr,4,AF_INET);//利用IP地址獲得主機(jī)名人//if(pHostent=NULL){〃錯(cuò)誤處理〃printf("Error:%u\n",WSAGetLastError());return-1;}hostent&hel=*pHostent;
printf("主機(jī)名為;%s\naliases=%s\naddrtype=%d\nlength=%d\n”,he.h_name,he.h_aliases,he.h_addrtype,he.h_length);//打印返回的主機(jī)信息//WSACleanup();〃結(jié)束windowssocketsAPI//return0;}六、使用說明1、運(yùn)行程序,輸入主機(jī)域名結(jié)果如下'E:譚程設(shè)計(jì)-網(wǎng)絡(luò)接作案執(zhí)尚衛(wèi)靈\DNS怖儀模瑕實(shí)現(xiàn)詣hang\Debug\Sha11g.exe”誹主機(jī)名為:£hang-PG”青輸人一個(gè)主和金名:Shang-PCname=Shang-PCaliase=addrtype=2length=4Address:192-168.1.101;青輸入服務(wù)器IP地址:2、輸入服務(wù)器IP地址、E:僚程設(shè)計(jì)-網(wǎng)結(jié)握作至瓠尚P^\DN渤'收詩-壊現(xiàn)\Shang\Debug\&hang.exeF本主機(jī)名為「Sh吧曠PC請(qǐng)輸:A-個(gè)王機(jī)域名;Shang-PCname=Shang-PCaliase=addrtype=2length=4Address:192.iLES.l.101請(qǐng)輸:A服務(wù)器ip地址:3、輸入IP地址實(shí)現(xiàn)IP地址與主機(jī)名的轉(zhuǎn)換,結(jié)果如下:
本主機(jī)名為:Sh吧曠PC清輸以一個(gè)主機(jī)域名:Shang-PCname=Shang-PCaliase=本主機(jī)名為:Sh吧曠PC清輸以一個(gè)主機(jī)域名:Shang-PCname=Shang-PCaliase=addrtype=2length=4Address:192.168.1.101回艮勺=s入名se坍ia請(qǐng)王al務(wù)器I
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年武漢科技職業(yè)學(xué)院高職單招職業(yè)適應(yīng)性測(cè)試近5年常考版參考題庫含答案解析
- 2025年榆林職業(yè)技術(shù)學(xué)院高職單招語文2018-2024歷年參考題庫頻考點(diǎn)含答案解析
- 課題申報(bào)參考:涉外民商事合同中經(jīng)濟(jì)制裁法適用問題研究
- 《動(dòng)物科學(xué)養(yǎng)殖技術(shù)》課件
- 液體化工產(chǎn)品購銷合同
- 公司員工聘用合同范年
- 跨境投資與并購項(xiàng)目合同
- 訂購水處理設(shè)備合同
- 全新茶葉銷售購銷合同下載
- 洗車店租賃合同
- 二零二五版電力設(shè)施維修保養(yǎng)合同協(xié)議3篇
- 最經(jīng)典凈水廠施工組織設(shè)計(jì)
- VDA6.3過程審核報(bào)告
- 2024年湖南商務(wù)職業(yè)技術(shù)學(xué)院?jiǎn)握新殬I(yè)適應(yīng)性測(cè)試題庫帶答案
- 骨科手術(shù)中常被忽略的操作課件
- 《湖南師范大學(xué)》課件
- 國家中長期科技發(fā)展規(guī)劃綱要2021-2035
- 導(dǎo)尿術(shù)操作技術(shù)
- 中日勞務(wù)合同范本
- 白宮-人工智能行業(yè):美國人工智能權(quán)利法案藍(lán)圖(英譯中)
- 典范英語8-15Here comes trouble原文翻譯
評(píng)論
0/150
提交評(píng)論