计算机网络课程设计姓名:廖孜孜专业班级:计科一班学号:120103011126指导老师:鲁丽、廖剑锋2目录一、课程的性质、目的和任务............................................................................3二、课程内容和基本要求......................................................................................3(一)、协议包的分析,网络协议的组成.............................................31、捕获ARP请求,ARP应答数据包...........................................................32、捕获ICMP数据包,对其进行分析研究................................................43、捕获TCP“三次握手”“2次两次握手”释放连接数据包................64、捕获HTTP,DNS,DHCP数据包,分析其构成....................................105、通过捕捉smtp协议包捕捉邮箱密码.................................................15小结................................................................................................................15(二)、编写一个程序自动生成CRC校验码....................................15程序代码:....................................................................................................15编译运行........................................................................................................16(三)、机架实验..........................................................................................17小结................................................................................................................17(四)、模拟学校校园网.........................................................................17校园网拓扑图................................................................................................17网络测试........................................................................................................18小结................................................................................................................22计算机网络3一、课程的性质、目的和任务该课程为实践类课程。通过本课程,(1)学生需要深入理解网络协议的组成,对网络中传输数据的过程有更深入的认识。(2)学生需要了解计算机网络工程设计的一般任务,明确计算机网络设计与建设的基本原则,熟悉计算机网络需求分析的目标、任务与方法,掌握计算机网络设计的通用方法,并学会撰写规范的计算机网络方案书。二、课程内容和基本要求(一)、协议包的分析,网络协议的组成1、捕获ARP请求,ARP应答数据包,分析其组成特征。总结ARP协议运行的基本过程。本机(192.168.84.69)ping目的主机(192.168.84.39):抓包截图:计算机网络4本机192.168.84.69源MAC地址c8:9c:dc:59:39:30目的主机192.168.84.39目的MAC地址c8:9c:dc:5a:2b:57ARP协议运行过程:ARP进程在本局域网上发送ARP请求,目的主机在ARP请求分组里看到自己的IP,就发送一个响应分组,写入自己的硬件地址。2、捕获ICMP数据包,对其进行分析研究。(icmp请求数据包,icmp应答数据包)Pingmail.sina.com.cn进行ICMP数据包截获ICMP请求数据包:计算机网络5TYPE:8CODE:0CHECKSUM:0X225CICMP应答数据包:计算机网络6TYPE:0CODE:0CHECKSUM:0X2A5CICMP协议数据包对IP分组在传送时出现的异常情况进行报告,对IP报文传输时出现的差错、拥塞、路由改变、以及路由器或主机信息的获取等情况,向源端主机提交报告,由源主机采取相应措施,改进传输质量。3、捕获TCP“三次握手”建立连接的数据包并分析;捕获TCP“2次两次握手”释放连接的数据包并分析。a)tcp连接的建立第一次握手计算机网络7第二次握手第三次握手计算机网络8Seq=0;第一次握手:本地向目的主机发送连接请求,等待服务器确认。Seq=0,ack=1;第二次握手:目的主机确认本机的连接请求,建立正向连接,同时发送反向连接请求。Seq=1,ack=1;第三次握手:本机响应目的主机的连接请求,建立反向连接。完成三次握手,本机与目的主机开始通信。b)tcp连接的释放计算机网络9计算机网络10Seq=3769,ack=855,win=7552,len=0;第一步:目的主机对本机发出释放连接请求,结束数据传送Seq=855,ack=3770,win=64647,len=0;第二步:本机对目的主机释放反向连接Seq=855,ack=3770,win=64647,len=0;第三步:本机对目的主机发出释放请求Seq=3770,ack=856,win=7552,len=0;第四步:目的主机确认本机的请求,释放正向连接4、捕获HTTP,DNS,DHCP数据包,分析其构成。a)http数据包的捕获与分析通过访问:getRequestversion:http/1.1Referer:响应报文Requestversion:http/1.1Responsepharse:okServer:suggestion.baidu.zbb.df\r\n计算机网络12http协议定义了浏览器怎样向万维网服务器请求万维网文档,以及怎样把文档传送给浏览器。b)DNS数据包的捕获与分析以为例抓包:源地址:192.168.84.18源Mac地址:c8:9c:dc:50:02:7b域名到IP地址的解析过程:当某一个进程需要把主机名解析为IP地址时,该应用进程就调用解析程序,并成为DNS的客户,把待解析的域名放在DNS请求报文中,以UDP用户数据报方式发给本地域名服务器。本地域名服务器在查找域名后,把对应的IP地址放在回答报文中返回。应用进程得到目的主机的IP地址后即可进行通信。c)DHCP数据包的捕获与分析计算机网络13Discover数据包Discover数据包含了客户机的信息:客户端硬件地址类型,物理地址,客户机的计算机名;包含了要请求信息的内容:子网掩码、DNS服务器、网关、netbios名字服务器等。网络中的DHCP服务器收到discover数据包后,会回复一个offer数据包,内容如下:由数据包内容可以看出DHCP服务器提供了一个IP地址及相关的地址信息。客户计算机网络14机不能直接使用这个IP地址,还需向服务器发送一个request请求数据包。Request数据包DHCP服务器发送request数据包请求使用IP地址。如果被请求的IP地址没有被占用,此时DHCP服务器允许客户端使用该IP地址,并提供子网掩码、DNS服务器、网关等信息。Ack数据包至此,客户端从DHCP服务器获取了IP地址。计算机网络155、通过捕捉smtp协议包捕捉邮箱密码.小结:协议数据包里面包含了很多信息,一开始做的时候都不知道要怎么找我需要的数据包,数据包里面的各种信息、符号也不知道什么意思,后来问同学,上网查资料才知道怎么找需要的关键信息。我觉得抓包是一件有趣的事情,我们通过向服务器发送请求报文,然后对应的服务器收到请求再发送一个应答报文,通过对数据包的截获,进行分析,让我对各个协议的基本工作过程,原理有了一些认识,对网络中数据传送的过程也有所了解。(二)、编写一个程序,能够根据输入的原始数据,及所选择的多项式,自动生成CRC校验码。程序代码:#includeiostream#includecstring#includeiomanipusingnamespacestd;#defineWORDSIZE255intgetNum(chara[],intn);voidshowNum(intr,intn);intmain(intargc,char*argv[]){cout输入X和P:endl;intx,p,lenA,lenP;chara[WORDSIZE];memset(a,'\0',WORDSIZE);cina;lenA=strlen(a);计算机网络16x=getNum(a,WORDSIZE);memset(a,'\0',WORDSIZE);cina;lenP=strlen(a);p=getNum(a,WORDSIZE);x=lenP-1;intresult=0,i;for(i=lenA-1;i=0;i--){if(x&(1(i+lenP-1))){result=result*2+1;x^=(pi);}else{result=result*2;}}showNum(x,lenP-1);return0;}intgetNum(chara[],intn){intk=0;inti;for(i=0;in&&a[i]!='\0';i++){k=k*2+a[i]-'0';}returnk;}voidshowNum(intr,intn){inti;for(i=n-1;i=0;i--){if(r&(1i)){cout1;}else{cout0;}}coutendl;}编译运行:计算机网络17(三)、机架实验小结:对照着实验手册上的实验要求和配置代码操作,就是做一些路由配置,过程比较简单,就是做的时候不知道是人太多还是网络问题,总是被挤掉,所以也没截图,后来可能密码被别的同学改了,没法做了。(四)、以文华学院为背景,了解文华学院现有校园网络的构成。主要从网速提高,网络安全,无线网络构建等几个方面进行分析,并提出合理的改进意见校园网拓扑图:计算机网络18网络测试:在ftp服务器上ping网关和服务器,均能ping通:计算机网络19在行政楼主机中ping服务器中的通:内网互相可以ping通,在:计算机网络20在dhcp上访问外网服务器:测试FTP服务:计算机网络