计算机网络课程设计报告41984_第1页
计算机网络课程设计报告41984_第2页
计算机网络课程设计报告41984_第3页
计算机网络课程设计报告41984_第4页
计算机网络课程设计报告41984_第5页
已阅读5页,还剩33页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、目 录一课程的目的和任务3二课程的基本内容和要求32.1实验理论32.2实验内容31.常用网络命令32.交换机与路由器173.网络编程30三课程设计总结体会36一 课程的目的和任务本课程要求学生在“计算机网络原理”理论学习基础上,验证和加深对计算机网络概念的理解。通过本课程的实践,培养学生独立思考、综合分析和动手实践的能力。通过本课程的学习,达到如下目标:(1). 理解计算机网络体系结构和工作原理,掌握常用的网络命令,能够对命令的功能进行解释,分析命令执行结果,得到合理有效结论。(2). 掌握Packet Tracer软件的操作方法,能够使用该软件模拟组网、配置交换机、路由器,能够按照实验方案

2、实施仿真实验,采集和整理数据。(3). 具备网络编程能力,能够设计抓包程序获取数据包,结合相关协议对数据包各个字段的含义进行分析、处理和解释,获取有效结论。二 课程的基本内容和要求2.1 实验理论1.常用网络命令的工作原理及协议2. ARP的原理3.ICMP协议及原理4.telnet远程登录的原理5.IP报文格式及路由转发6.以太网CSMA/CD协议原理7.透明网桥、以太网交换机8.虚拟局域网VLAN9.路由器的作用、静态路由、动态路由10.IP报文格式及IP协议11.Socket网络编程2.2 实验内容1. 常用网络命令要求在Windows环境下掌握ipconfig,ping,netstat

3、,tracert,arp,telnet进行网络状态监测、跟踪的方法。(a).ipconfig ipconfig的功能:可用于显示本机所有当前的TCP/IP配置的设置值,刷新动态主机配置协议(DHCP),以及域名系统设置(DNS)。1.不带参数的ipconfig 该命令用于查看适配器的IP地址子网掩码等属性2.带参数的ipconfig(1).ipconfig/all该命令用于查看适配器的IP地址,子网掩码等属性,较不带参数的ipconfig多了显示MAC地址,下图可以看到各个组件的物理地址,与ipconfig相比较更为详细 (2).ipconfig/renew即重新获取IP地址(3).ipcon

4、fig/release该命令用于释放即归还所有适配器的IP地址,与不带参数的ipconfig相比较,以太网适配器,即网卡的的IP地址没有显示,说明已被释放(b)ping ping命令的作用用于检查网络是否连通,到某个目的地址是否可达,可以帮助分析网络故障ping命令的原理基于ICMP协议,PING使用了回送请求与回送回答报文。根据是否收到报文来判断目的端口是否可达,根据发送的报文的个数与接收到的回答报文的个数来判断链路的质量,根据RTT来判断源端与目的端之间的距离。1.不带参数的ping图1是ping环回地址,图2则是一个本网内不存在的IP,可以看到图1ping通,而图二请求超时 2.带参数的

5、ping(1).ping t该命令即一直ping某个地址,直到结束为止,在ctrl+c输入前一直不会停止(2).ping a该命令是将地址解析为用户名,图中的Advertisement就是解析出的用户名(3).ping n该命令用于设置发送的个数,设置1即发送1个,8即8个(c).netstat netstat命令的作用显示网络连接、路由表和网络接口信息,显示目前有哪些网络连接正在工作。可用于检验本机各端口的网络连接情况。1.不带参数的netstat 该命令用于监控TCP/IP网络,显示活动的TCP连接,图中显示了活动中的TCP连接,不包括LISTENING状态的连接2.带参数的netstat

6、(1).netstat a显示所有连接和侦听端口,所有有效连接信息的列表(由于数据过多,只截取了一些)。 (2).netstat s 显示每个协议的各项的统计(数据很多,只截取了一部分) (3).netstat e 该命令即显示总量的统计,数值上为-s 各个协议的总和 (4).netstat r 该命令显示核心路由表(d) .Tracert Tracert命令的作用用于查看IP数据包在访问目标时采取的路径 Tracert命令的原理 从源主机向的主机发送一连串的IP数据报,其中分装的是的是无法交付的UDP用户数据报,通过设置数据包的生存时间TTL,到路由器时的TTL恰好为1,接着路由器将TTL变

7、为0,丢弃数据报并向源主机发送ICMP时间超过差错报告报文。当达到目的主机时,由于无法交付UDP用户数据报,目的主机向源主机发送ICMP终点不可达差错报告报文。源主机可以从这些差错报文中知道路径上的路由信息。 1.不带参数的Tracert 该命令用于查看数据包在访问目标时采取的路径,不带参数则默认30个跃点跟踪 2.带参数的Tracert (1).Tracert h 控制跃点跟踪的个数,设置5个就只显示5个 (2).Tracert d 设置不把地址解析为计算机名,与不带参数的Tracert对比可见计算机名没有显示 (e).arp arp命令的作用arp命令用于显示和修改ARP使用的“IP到物理

8、”地址转换表。arp命令的原理每台装有网卡的主机中都有一个ARP表,保存着同一网络中IP到MAC之间的映射记录。ARP表并不是一成不变的,大约每2分钟更新一次,这种纪录称为动态式(Dynamic)记录。还有一种称为静态记录,也就是表中的记录不变,直到TCP/IP协议重启后才会消失。 1.arp命令 (1).arp s与arp -d arp s 用于增加ARP项,arp-d用于删除ARP项目,先增加了4和其对应MAC地址3C-FD-A1-85-34-12,再查询可以查到,再通过-d删除,之后便查不到了 (2).arp a与arp-a-v arp a 用于显示所有的ARP项

9、目,arp-a-v则是详细的显示(-v会显示无效的项目),arp-a后加IP地址则显示IP地址对应的ARP项目(如上图) (f).telnet telnet的作用用户可以登录到远地的另一台主机上,可以使用目标主机上的软、硬件资源,是一个简单的远程终端协议。 telnet的原理 使用客户服务器方式。在本地系统运行Telnet客户进程,远地运行服务器进程。 1.telnet IP 即连接这个IP地址,图中连接了即环回地址,连接成功 2.建立连接后有这些操作 3. sen 4. display 显示操作参数, 5.set与unset图1和图2为帮助中的一些设置操作,图3图4测试了进

10、行身份验证的设置,图三设置了进行身份验证,图四解除了这个设置 6.close关闭连接,关闭了与的连接,再次企图发送数据则显示未连接2. 交换机与路由器安装packet tracer,在packet tracer仿真环境下,熟悉交换机命令、交换机初始化配置;在交换机上实现VLAN配置,要求:创建三个VLAN,给出拓扑,查看VLAN信息 基于Console控制台登录配置路由器,学习路由器配置相关命令;基于packet tracer构建网络环境,分别进行静态路由配置和基于RIP的动态路由配置。要求:静态路由配置拓扑中至少4个路由器;RIP动态路由配置中源站和目的站之间设置两条跳数不

11、同的路径,通过RIP配置后查看选择的是哪条路径。 节点包括主机、路由器、交换机等都要根据个人名字首字母加学号的后两位进行命名。要求给出网络设计的思路、拓扑结构、配置方法与过程及验证思路与过程。提供截图实验内容:1.在交换机上实现VLAN配置 (1). 建立VLAN思路需要构建三个VLAN,首先需要用6台主机。用两台交换机,则主机和交换机之间需要直通线缆6根,两个交换机之间需要交叉线缆一根。在HKB11 switch0上,创建三个VLAN,即VLAN 10,VLAN 20,VLAN30,把三个端口分别划给这三个VLAN。HKB11 switch1上也是如此,之后把两个交换机相连(2).拓扑结构

12、(3).配置过程主机IP地址连接交换机/端口所属VLANHKB11 PC0HKB11 Switch0 Fa0/1VLAN1HKB11 PC1HKB11 Switch0 Fa0/2VLAN2HKB11 PC2HKB11 Switch0 Fa0/3VLAN3HKB11 PC3HKB11 Switch1 Fa0/1VLAN1HKB11 PC4HKB11 Switch1 Fa0/2VLAN2HKB11 PC5HKB11 Switch1 Fa0/3VLAN3 (a).配置主机IP地址,子网掩码以及修改名称(以PC0为例) 将PC0的IP地址设为,子网掩码为

13、,名称为HKB11 PC0(b).修改交换机的名称(以Switch0为例)将Switch0的名称设为HKB11 Switch0 (c).设置VLAN 在交换机Switch0中增加了VLAN 10,VLAN 20,VLAN 30,Switch1中同理 (d).把端口划分给这三个VLAN 端口1划分给VLAN1,端口2划分给VLAN2,端口3划分给VLAN3,Switch1中相同操作 (e).设置交换机互连接口 我的交换机的互连接口均为10号,图中为Switch0的设置,1同理, (4).验证结构正确 (a).查看VLAN表 图中为Switch0的VLAN表,可以看到三个VLAN中个有一个端口(b

14、).ping命令PC0分别pingPC2,PC3,PC4PC0和PC2在同一个交换机下,ping不通PC0和PC3属于同一个VLAN,ping通PC0和PC4既不属于同一个VLAN,也不在同一个交换机下,ping不通说明VLAN建立正确 pc2pc3 pc4 2.静态路由设置 (1).建立静态路由思路 首先根据题目要求需要4个路由器,则需要至少8台主机,4台交换机,8台主机两两一组,分为4组,4组分别处在不同的网段下,各自连接一个交换机,之后交换机再连接一个路由器,路由器之间相互连接 (2).拓扑结构 (3).配置过程路由器网段主机1主机2Router0PPRouter1PPRouter2PP

15、Router3PP (a).配置主机 以PC0为例,IP地址设为,子网掩码,默认网关设为,即其路由器的IP地址 (b)配置路由器 首先关闭路由器电源,然后把WIC-2T拖到图中花圈除再打开电源 然后设置FastEthernet0/0端口,填入IP地址和子网掩码,之后再Port Status处点击On打开连接 然后,设置Serial0/3/0(0/3/1)同理,同样设置IP地址和子网掩码,然后Clock Rate处进行设置,最后Post Status处设置 ps.Router0与Router1之间为网段,

16、Router1与Router2之间为网段,Router2与Router3之间为网段 最后设置下一跳 Router0 Router1 Router2 Router3 (4).验证结构正确(a).ping命令此处由PC0依次pingPC1() PC2(),PC4(),PC6() pc1 pc2 pc4 pc6可见被ping的四个主机位于4个不同的子网中,均能ping通,可见静态路由建立成功(b).tracert命令来验证正确此处由PC0查看其到PC4,PC6的路径 p

17、c4 pc6由路径也可以看到与设置的下一跳完全吻合3. RIP动态路由配置(1).动态路由思路一个端口到另一个端口有两条跳数不同的路径,则最简单的结构为三角结构,即需要三个路由器两两互连,再各自连上一台主机(2).拓扑结构(3).配置过程 路由器网段主机Router0Router1Router2 (a).配置主机(以主机PC0为例) (b).配置路由器 首先同样关闭电源将WIC-2T拖入黑圈处,再打开电源 然后配置FastEthernet0/0端口,IP为,子网掩码,然后点击On打开 然后配置Serial0/3/0端口,3/1同样 此处Route

18、r0和Router之间为网段,Router1与Router2之间为网段,Router2与Router0之间为网段 最后配置路由表 Router0 Router1Router2 (4).验证结构正确 (a).ping命令 由PC0分别pingPC1和PC2 pc1 pc2 均能ping通 (b).Tracert命令 查看PC0到PC1的路径 显示路径符合RIP动态路由3. 网络编程编程需求:捕获本机网卡的IP包,对捕获的IP包进行解析。要求必须输出以下字段:版本号、总长度、标志位、片偏移、协议、源地址和目的地址。实验总结与心得体会

19、(5分) (1).操作系统和实验软件操作系统为Windows10,软件为Visual Studio 2017 (2).IP数据报首部各个字段版本号: 占4位,IP协议版本号, IPv4此字段值为4, IPv6此字段值为6首部长度:占4位,包括固定部分和可选部分, 因此首部最长为60字节, 最短为20字节(不包括选项和填充部分);服务类型:占8位,(由于该字段一直弃而不用, 因此不用考虑)总长度:占16位,以字节为单位, 总长度包含IP的头部和数据部分, IP数据报最大长度为65535字节, 但是注意最大不要超过MTU的长度标识:占16位,唯一标识一个数据报,可以将之当成一个计数器, 每发送一个

20、数据包, 则该值加1, 如果数据报分片,则每个分片的标识都一样, 各个分片共享一个标识号标志位:占3位,最高位为0;最低位MF=1(0),后面还有分片(最后一个报片);DF=1(0),不能分片(可以分片)片偏移:占13位,用以指出该分段的第一个数据字节在原始数据报中的偏移位置(以8字节为单位),IP分片后每一个分组都具有自己的首部, 而且标志位相同, 但是片偏移值不同, 通过片偏移值接收端可以重新组装IP包生存时间:占8位,表示数据报最多可经过的路由器的数量. 取值0255,每经过一个路由器, TTL值减1,为0时被丢弃, 并发送ICMP报文通知源主机, TTL可以避免数据报在路由器之间不断循

21、环协议类型:占8位,指明IP层上承载的是哪个高级协议, 在分用的过程中, 协议栈知道该交给上层的哪个协议处理, 如1为ICMP, 2为IGMP, 6为TCP, 17为UDP等.。首部检验和:占16位,保证数据报头部的数据完整性,但校验不包括数据部分。源地址:32位,发送方IP地址目的地址:32位,接受方IP地址 (3).设计思路socket编程,在了解IP数据报首部的前提下去进行,先定义IP数据包头类,然后初始化套接字,将网卡设置为混杂模式,监听数据包,最后接收经过的IP包并输出 (4). 实验结果与分析 第一个数据包UDP包,源地址为20即本机,目的地址为192.168.

22、113.1,第二个包为UDP包,源地址为,目的地址为20即本机 (5). 程序流程图 (6).实验总结 这算是一个全新的领域吧,起码对我而言是这样,之前没有接触过任何关于这方面的东西,完全不知道如何下手,没办法只能去搜查资料,通过这次实验也对这方面有了点了解了,不会像开始那样不知道怎么写了源代码:IP_HEAD.h#include class IP_HEAD /IP首部public:BYTE ver_hlen; /IP协议版本和IP首部长度。高4位为版本,低4位为首部的长度(单位为4bytes)BYTE byTOS; /服务类型WORD wPack

23、etLen; /IP包总长度。包括首部,单位为byte。WORD wSequence; /标识,一般每个IP包的序号递增。unionWORD Flags; /标志WORD FragOf; /分段偏移;BYTE byTTL; /生存时间 BYTE byProtocolType; /协议类型,见PROTOCOL_TYPE定义WORD wHeadCheckSum; /IP首部校验DWORD dwIPSrc; /源地址DWORD dwIPDes; /目的地址BYTE Options; /选项;main.cpp#define _CRT_SECURE_NO_WARNINGS#include #includ

24、e #include #include #include #include IP_HEAD.h#pragma comment(lib,Ws2_32.lib)using namespace std;int number;int DecodeIP(char *buf, int len)int n = len;if (n = sizeof(IP_HEAD)IP_HEAD iphead;iphead = *(IP_HEAD*)buf;cout 第 number+ 个IP数据包信息: endl;cout 协议版本: 4) endl;cout 首部长度: (iphead.ver_hlen & 0x0F)

25、2) endl;/单位为4字节cout 服务类型:Priority: 5) ,Service: 1) & 0x0f) endl;cout IP包总长度: ntohs(iphead.wPacketLen) endl; /网络字节序转为主机字节序cout 标识: ntohs(iphead.wSequence) endl;cout 标志位: DF= 14) & 0x01) ,MF= 13) & 0x01) endl;cout 片偏移: (iphead.FragOf & 0x1fff) endl;cout 生存周期: (int)iphead.byTTL endl;cout 协议类型: int(iphe

26、ad.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;return 0;void AutoWSACleanup():WSACleanup(); / 终止Winsock的使用int main()int n;WSADATA wd; /一种数据结构,这个结构被用来存储被WSAStartup函数调用后返回的Windows Sockets数据,它包含Winsock.dll执行的数据。n = WSAStartup(MAKEWORD(2, 2),

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论