計算機網(wǎng)絡專業(yè)課程設計方案報告_第1頁
計算機網(wǎng)絡專業(yè)課程設計方案報告_第2頁
計算機網(wǎng)絡專業(yè)課程設計方案報告_第3頁
計算機網(wǎng)絡專業(yè)課程設計方案報告_第4頁
計算機網(wǎng)絡專業(yè)課程設計方案報告_第5頁
已閱讀5頁,還剩36頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

目錄TOC\o"1-4"\h\z\u一. 課程目和任務 3二. 課程基本內(nèi)容和規(guī)定 32.1 實驗理論 32.2 實驗內(nèi)容 31. 慣用網(wǎng)絡命令 32. 互換機與路由器 173. 網(wǎng)絡編程 30三. 課程設計總結(jié)體會 36課程目和任務本課程規(guī)定學生在“計算機網(wǎng)絡原理”理論學習基本上,驗證和加深對計算機網(wǎng)絡概念理解。通過本課程實踐,培養(yǎng)學生獨立思考、綜合分析和動手實踐能力。通過本課程學習,達到如下目的:(1).理解計算機網(wǎng)絡體系構(gòu)造和工作原理,掌握慣用網(wǎng)絡命令,可以對命令功能進行解釋,分析命令執(zhí)行成果,得到合理有效結(jié)論。(2).掌握PacketTracer軟件操作辦法,可以使用該軟件模仿組網(wǎng)、配備互換機、路由器,可以按照實驗方案實行仿真實驗,采集和整頓數(shù)據(jù)。(3).具備網(wǎng)絡編程能力,可以設計抓包程序獲取數(shù)據(jù)包,結(jié)合有關合同對數(shù)據(jù)包各個字段含義進行分析、解決和解釋,獲取有效結(jié)論。課程基本內(nèi)容和規(guī)定實驗理論1.慣用網(wǎng)絡命令工作原理及合同2.ARP原理3.ICMP合同及原理4.telnet遠程登錄原理5.IP報文格式及路由轉(zhuǎn)發(fā)6.以太網(wǎng)CSMA/CD合同原理7.透明網(wǎng)橋、以太網(wǎng)互換機8.虛擬局域網(wǎng)VLAN9.路由器作用、靜態(tài)路由、動態(tài)路由10.IP報文格式及IP合同11. Socket網(wǎng)絡編程實驗內(nèi)容慣用網(wǎng)絡命令規(guī)定在Windows環(huán)境下掌握ipconfig,ping,netstat,tracert,arp,telnet進行網(wǎng)絡狀態(tài)監(jiān)測、跟蹤辦法。(a).ipconfigipconfig功能:可用于顯示本機所有當前TCP/IP配備設立值,刷新動態(tài)主機配備合同(DHCP),以及域名系統(tǒng)設立(DNS)。1.不帶參數(shù)ipconfig該命令用于查看適配器IP地址子網(wǎng)掩碼等屬性圖中可以看到以太網(wǎng)適配器IP地址20,其子網(wǎng)掩碼2.帶參數(shù)ipconfig(1).ipconfig/all該命令用于查看適配器IP地址,子網(wǎng)掩碼等屬性,較不帶參數(shù)ipconfig多了顯示MAC地址,下圖可以看到各個組件物理地址,與ipconfig相比較更為詳細(2).ipconfig/renew即重新獲取IP地址(3).ipconfig/release該命令用于釋放即歸還所有適配器IP地址,與不帶參數(shù)ipconfig相比較,以太網(wǎng)適配器,即網(wǎng)卡IP地址沒有顯示,闡明已被釋放(b)pingping命令作用用于檢查網(wǎng)絡與否連通,到某個目地址與否可達,可以協(xié)助分析網(wǎng)絡故障ping命令原理基于ICMP合同,PING使用了回送祈求與回送回答報文。依照與否收到報文來判斷目端口與否可達,依照發(fā)送報文個數(shù)與接受到回答報文個數(shù)來判斷鏈路質(zhì)量,依照RTT來判斷源端與目端之間距離。1.不帶參數(shù)ping圖1是ping環(huán)回地址,圖2則是一種本網(wǎng)內(nèi)不存在IP,可以看到圖1ping通,而圖二祈求超時2.帶參數(shù)ping(1).ping–t該命令即始終ping某個地址,直到結(jié)束為止,在ctrl+c輸入前始終不會停止(2).ping–a該命令是將地址解析為顧客名,圖中Advertisement就是解析出顧客名(3).ping–n該命令用于設立發(fā)送個數(shù),設立1即發(fā)送1個,8即8個(c).netstatnetstat命令作用顯示網(wǎng)絡連接、路由表和網(wǎng)絡接口信息,顯示當前有哪些網(wǎng)絡連接正在工作??捎糜跈z查本機各端口網(wǎng)絡連接狀況。1.不帶參數(shù)netstat該命令用于監(jiān)控TCP/IP網(wǎng)絡,顯示活動TCP連接,圖中顯示了活動中TCP連接,不涉及LISTENING狀態(tài)連接2.帶參數(shù)netstat(1).netstat–a顯示所有連接和偵聽端口,所有有效連接信息列表(由于數(shù)據(jù)過多,只截取了某些)。(2).netstat–s顯示每個合同各項記錄(數(shù)據(jù)諸多,只截取了一某些)(3).netstat–e該命令即顯示總量記錄,數(shù)值上為-s各個合同總和(4).netstat–r該命令顯示核心路由表(d).TracertTracert命令作用用于查看IP數(shù)據(jù)包在訪問目的時采用途徑Tracert命令原理從源主機向主機發(fā)送一連串IP數(shù)據(jù)報,其中分裝是是無法交付UDP顧客數(shù)據(jù)報,通過設立數(shù)據(jù)包生存時間TTL,到路由器時TTL正好為1,接著路由器將TTL變?yōu)?,丟棄數(shù)據(jù)報并向源主機發(fā)送ICMP時間超過差錯報告報文。當達到目主機時,由于無法交付UDP顧客數(shù)據(jù)報,目主機向源主機發(fā)送ICMP終點不可達差錯報告報文。源主機可以從這些差錯報文中懂得途徑上路由信息。1.不帶參數(shù)Tracert該命令用于查看數(shù)據(jù)包在訪問目的時采用途徑,不帶參數(shù)則默認30個躍點跟蹤2.帶參數(shù)Tracert(1).Tracert–h控制躍點跟蹤個數(shù),設立5個就只顯示5個(2).Tracert–d設立不把地址解析為計算機名,與不帶參數(shù)Tracert對比可見計算機名沒有顯示(e).arparp命令作用arp命令用于顯示和修改ARP使用“IP到物理”地址轉(zhuǎn)換表。arp命令原理每臺裝有網(wǎng)卡主機中均有一種ARP表,保存著同一網(wǎng)絡中IP到MAC之間映射記錄。ARP表并不是一成不變,大概每2分鐘更新一次,這種紀錄稱為動態(tài)式(Dynamic)記錄。尚有一種稱為靜態(tài)記錄,也就是表中記錄不變,直到TCP/IP合同重啟后才會消失。1.arp命令(1).arp–s與arp-darp–s用于增長ARP項,arp-d用于刪除ARP項目,先增長了4和其相應MAC地址3C-FD-A1-85-34-12,再查詢可以查到,再通過-d刪除,之后便查不到了(2).arp–a與arp-a-varp–a用于顯示所有ARP項目,arp-a-v則是詳細顯示(-v會顯示無效項目),arp-a后加IP地址則顯示IP地址相應ARP項目(如上圖)(f).telnettelnet作用顧客可以登錄到遠地另一臺主機上,可以使用目的主機上軟、硬件資源,是一種簡樸遠程終端合同。telnet原理使用客戶服務器方式。在本地系統(tǒng)運營Telnet客戶進程,遠地運營服務器進程。1.telnetIP即連接這個IP地址,圖中連接了即環(huán)回地址,連接成功2.建立連接后有這些操作3.sen即發(fā)送字符串,圖中發(fā)送了4567984.display顯示操作參數(shù),5.set與unset圖1和圖2為協(xié)助中某些設立操作,圖3圖4測試了進行身份驗證設立,圖三設立了進行身份驗證,圖四解除了這個設立6.close關閉連接,關閉了與連接,再次企圖發(fā)送數(shù)據(jù)則顯示未連接互換機與路由器安裝packettracer,在packettracer仿真環(huán)境下,熟悉互換機命令、互換機初始化配備;在互換機上實現(xiàn)VLAN配備,規(guī)定:創(chuàng)立三個VLAN,給出拓撲,查看VLAN信息基于Console控制臺登錄配備路由器,學習路由器配備有關命令;基于packettracer構(gòu)建網(wǎng)絡環(huán)境,分別進行靜態(tài)路由配備和基于RIP動態(tài)路由配備。規(guī)定:靜態(tài)路由配備拓撲中至少4個路由器;RIP動態(tài)路由配備中源站和目站之間設立兩條跳數(shù)不同途徑,通過RIP配備后查看選取是哪條途徑。節(jié)點涉及主機、路由器、互換機等都要依照個人名字首字母加學號后兩位進行命名。規(guī)定給出網(wǎng)絡設計思路、拓撲構(gòu)造、配備辦法與過程及驗證思路與過程。提供截圖實驗內(nèi)容:1.在互換機上實現(xiàn)VLAN配備(1).建立VLAN思路需要構(gòu)建三個VLAN,一方面需要用6臺主機。用兩臺互換機,則主機和互換機之間需要直通線纜6根,兩個互換機之間需要交叉線纜一根。在HKB11switch0上,創(chuàng)立三個VLAN,即VLAN10,VLAN20,VLAN30,把三個端口分別劃給這三個VLAN。HKB11switch1上也是如此,之后把兩個互換機相連(2).拓撲構(gòu)造(3).配備過程主機IP地址連接互換機/端口所屬VLANHKB11PC0HKB11Switch0Fa0/1VLAN1HKB11PC1HKB11Switch0Fa0/2VLAN2HKB11PC2HKB11Switch0Fa0/3VLAN3HKB11PC3HKB11Switch1Fa0/1VLAN1HKB11PC4HKB11Switch1Fa0/2VLAN2HKB11PC5HKB11Switch1Fa0/3VLAN3(a).配備主機IP地址,子網(wǎng)掩碼以及修改名稱(以PC0為例)將PC0IP地址設為,子網(wǎng)掩碼為,名稱為HKB11PC0(b).修改互換機名稱(以Switch0為例)將Switch0名稱設為HKB11Switch0(c).設立VLAN在互換機Switch0中增長了VLAN10,VLAN20,VLAN30,Switch1中同理(d).把端口劃分給這三個VLAN端口1劃分給VLAN1,端口2劃分給VLAN2,端口3劃分給VLAN3,Switch1中相似操作(e).設立互換機互連接口我互換機互連接口均為10號,圖中為Switch0設立,1同理,(4).驗證構(gòu)造對的(a).查看VLAN表圖中為Switch0VLAN表,可以看到三個VLAN中個有一種端口(b).ping命令PC0分別pingPC2,PC3,PC4PC0和PC2在同一種互換機下,ping不通PC0和PC3屬于同一種VLAN,ping通PC0和PC4既不屬于同一種VLAN,也不在同一種互換機下,ping不通闡明VLAN建立對的pc2pc3pc42.靜態(tài)路由設立(1).建立靜態(tài)路由思路一方面依照題目規(guī)定需要4個路由器,則需要至少8臺主機,4臺互換機,8臺主機兩兩一組,分為4組,4組分別處在不同網(wǎng)段下,各自連接一種互換機,之后互換機再連接一種路由器,路由器之間互相連接(2).拓撲構(gòu)造(3).配備過程路由器網(wǎng)段主機1主機2Router0Pc0Pc1Router1Pc2Pc3Router2Pc4Pc5Router3Pc6Pc7(a).配備主機以PC0為例,IP地址設為,子網(wǎng)掩碼,默認網(wǎng)關設為,即其路由器IP地址(b)配備路由器一方面關閉路由器電源,然后把WIC-2T拖到圖中花圈除再打開電源然后設立FastEthernet0/0端口,填入IP地址和子網(wǎng)掩碼,之后再PortStatus處點擊On打開連接然后,設立Serial0/3/0(0/3/1)同理,同樣設立IP地址和子網(wǎng)掩碼,然后ClockRate處進行設立,最后PostStatus處設立ps.Router0與Router1之間為網(wǎng)段,Router1與Router2之間為網(wǎng)段,Router2與Router3之間為網(wǎng)段最后設立下一跳Router0Router1Router2Router3(4).驗證構(gòu)造對的(a).ping命令此處由PC0依次pingPC1()PC2(),PC4(),PC6()pc1pc2pc4pc6可見被ping四個主機位于4個不同子網(wǎng)中,均能ping通,可見靜態(tài)路由建立成功(b).tracert命令來驗證對的此處由PC0查看其到PC4,PC6途徑pc4pc6由途徑也可以看到與設立下一跳完全吻合3.RIP動態(tài)路由配備(1).動態(tài)路由思路一種端口到另一種端口有兩條跳數(shù)不同途徑,則最簡樸構(gòu)造為三角構(gòu)造,即需要三個路由器兩兩互連,再各自連上一臺主機(2).拓撲構(gòu)造(3).配備過程路由器網(wǎng)段主機Router0PC0Router1PC1Router2PC2(a).配備主機(以主機PC0為例)設立IP地址為,子網(wǎng)掩碼,默認網(wǎng)關(b).配備路由器一方面同樣關閉電源將WIC-2T拖入黑圈處,再打開電源然后配備FastEthernet0/0端口,IP為,子網(wǎng)掩碼,然后點擊On打開然后配備Serial0/3/0端口,3/1同樣此處Router0和Router之間為網(wǎng)段,Router1與Router2之間為網(wǎng)段,Router2與Router0之間為網(wǎng)段最后配備路由表Router0Router1Router2(4).驗證構(gòu)造對的(a).ping命令由PC0分別pingPC1和PC2pc1pc2均能ping通(b).Tracert命令查看PC0到PC1途徑顯示途徑符合RIP動態(tài)路由網(wǎng)絡編程編程需求:捕獲本機網(wǎng)卡IP包,對捕獲IP包進行解析。規(guī)定必要輸出如下字段:版本號、總長度、標志位、片偏移、合同、源地址和目地址。實驗總結(jié)與心得體會(5分)(1).操作系統(tǒng)和實驗軟件操作系統(tǒng)為Windows10,軟件為VisualStudio(2).IP數(shù)據(jù)報首部各個字段版本號:占4位,IP合同版本號,IPv4此字段值為4,IPv6此字段值為6首部長度:占4位,涉及固定某些和可選某些,因而首部最長為60字節(jié),最短為20字節(jié)(不涉及選項和填充某些);服務類型:占8位,(由于該字段始終棄而不用,因而不用考慮)總長度:占16位,以字節(jié)為單位,總長度包括IP頭部和數(shù)據(jù)某些,IP數(shù)據(jù)報最大長度為65535字節(jié),但是注意最大不要超過MTU長度標記:占16位,唯一標記一種數(shù)據(jù)報,可以將之當成一種計數(shù)器,每發(fā)送一種數(shù)據(jù)包,則該值加1,如果數(shù)據(jù)報分片,則每個分片標記都同樣,各個分片共享一種標記號標志位:占3位,最高位為0;最低位MF=1(0),背面尚有分片(最后一種報片);DF=1(0),不能分片(可以分片)片偏移:占13位,用以指出該分段第一種數(shù)據(jù)字節(jié)在原始數(shù)據(jù)報中偏移位置(以8字節(jié)為單位),IP分片后每一種分組都具備自己首部,并且標志位相似,但是片偏移值不同,通過片偏移值接受端可以重新組裝IP包生存時間:占8位,表達數(shù)據(jù)報最多可通過路由器數(shù)量.取值0~255,每通過一種路由器,TTL值減1,為0時被丟棄,并發(fā)送ICMP報文告知源主機,TTL可以避免數(shù)據(jù)報在路由器之間不斷循環(huán)合同類型:占8位,指明IP層上承載是哪個高檔合同,在分用過程中,合同棧懂得該交給上層哪個合同解決,如1為ICMP,2為IGMP,6為TCP,17為UDP等.。首部檢查和:占16位,保證數(shù)據(jù)報頭部數(shù)據(jù)完整性,但校驗不涉及數(shù)據(jù)某些。源地址:32位,發(fā)送方IP地址目地址:32位,接受方IP地址(3).設計思路socket編程,在理解IP數(shù)據(jù)報首部前提下去進行,先定義IP數(shù)據(jù)包頭類,然后初始化套接字,將網(wǎng)卡設立為混雜模式,監(jiān)聽數(shù)據(jù)包,最后接受通過IP包并輸出(4).實驗成果與分析第一種數(shù)據(jù)包UDP包,源地址為20即本機,目地址為,第二個包為UDP包,源地址為,目地址為20即本機(5).程序流程圖(6).實驗總結(jié)這算是一種全新領域吧,起碼對我而言是這樣,之前沒有接觸過任何關于這方面東西,完全不懂得如何下手,沒辦法只能去搜查資料,通過這次實驗也對這方面有了點理解了,不會像開始那樣不懂得怎么寫了源代碼:IP_HEAD.h#include<winsock2.h>classIP_HEAD//IP首部{public: BYTEver_hlen;//IP合同版本和IP首部長度。高4位為版本,低4位為首部長度(單位為4bytes) BYTEbyTOS;//服務類型 WORDwPacketLen;//IP包總長度。涉及首部,單位為byte。 WORDwSequence;//標記,普通每個IP包序號遞增。 union { WORDFlags;//標志 WORDFragOf;//分段偏移 }; BYTEbyTTL;//生存時間 BYTEbyProtocolType;//合同類型,見PROTOCOL_TYPE定義 WORDwHeadCheckSum;//IP首部校驗 DWORDdwIPSrc;//源地址 DWORDdwIPDes;//目地址 BYTEOptions;//選項};main.cpp#define_CRT_SECURE_NO_WARNINGS#include<iostream>#include<winsock2.h>#include<windows.h>#include<string.h>#include<mstcpip.h>#include"IP_HEAD.h"#pragmacomment(lib,"Ws2_32.lib")usingnamespacestd;intnumber;intDecodeIP(char*buf,intlen){ intn=len; if(n>=sizeof(IP_HEAD)) { IP_HEADiphead; iphead=*(IP_HEAD*)buf; cout<<"第"<<number++<<"個IP數(shù)據(jù)包信息:"<<endl; cout<<"合同版本:"<<(iphead.ver_hlen>>4)<<endl; cout<<"首部長度:"<<((iphead.ver_hlen&0x0F)<<2)<<endl;//單位為4字節(jié) cout<<"服務類型:Priority:"<<(iphead.byTOS>>5)<<",Service:"<<((iphead.byTOS>>1)&0x0f)<<endl; cout<<"IP包總長度:"<<ntohs(iphead.wPacketLen)<<endl;//網(wǎng)絡字節(jié)序轉(zhuǎn)為主機字節(jié)序 cout<<"標記:"<<ntohs(iphead.wSequence)<<endl; cout<<"標志位:"<<"DF="<<((iphead.Flags>>14)&0x01)<<",MF="<<((iphead.Flags>>13)&0x01)<<endl; cout<<"片偏移:"<<(iphead.FragOf&0x1fff)<<endl; cout<<"生存周期:"<<(int)iphead.byTTL<<endl; cout<<"合同類型:"<<int(iphead.byProtocolType)<<endl; cout<<"首部校驗和:"<<ntohs(iphead.wHeadCheckSum)<<endl; cout<<"源地址:"<<inet_ntoa(*(in_addr*)&iphead.dwIPSrc)<<endl; cout<<"目地址:"<<inet_ntoa(*(in_addr*)&iphead.dwIPDes)<<endl; cout<<"---------------------------------------------------"<<endl<<endl; } return0;}voidAutoWSACleanup(){ ::WSACleanup();//終結(jié)Winsock使用}intmain(){ intn; WSADATAwd;//一種數(shù)據(jù)構(gòu)造,這個構(gòu)造被用來存儲被WSAStartup函數(shù)調(diào)用后返回WindowsSockets數(shù)據(jù),它包括Winsock.dll執(zhí)行數(shù)據(jù)。 n=WSAStartup(MAKEWORD(2,2),&wd);//返回winsock服務初始化與否成功,若返回1則輸出錯誤 if(n) { cerr<<"WSAStartup函數(shù)錯誤!"<<endl; return-1; } atexit(AutoWSACleanup); SOCKETsock=socket(AF_INET,SOCK_RAW,IPPROTO_IP);//創(chuàng)立SOCKET if(sock==INVALID_SOCKET) { cerr<<WSAGetLastError(); return0; } //獲取本機地址 charname[128]; if(-1==gethostname(name,sizeof(name

溫馨提示

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

評論

0/150

提交評論