网络层实验报告

news2024/11/15 10:18:05

在这里插入图片描述

计算机网络综合实训
实训报告二

所在院系 计算机与信息工程学院
学科专业名称 计算机科学与技术
导师及职称 柯宗武 教授
提交时间 2022.3.29

网络层实验报告

(湖北师范大学计算机与信息工程学院 中国 黄石 435002)
1 IP分析
1.1背景知识
1.1.1 什么是IP协议
IP是英文Internet Protocol(网际互连协议)的缩写,是TCP/IP体系中的网络层协议,目前常用的版本是IPv4。设计IP协议的目的是提高网络的可扩展性:一是解决互联网问题,实现大规模、异构网络的互联互通;二是分割顶层网络应用和底层网络技术之间的耦合关系,以利于两者的独立发展。根据端到端的设计原则,IP协议只为主机提供一种无连接、不可靠的、尽力而为的数据报传输服务。为了能适应异构网络,IP强调适应性、简洁和可操作性,并在可靠性做了一定的牺牲。IP不保证分组的交付时限和可靠性,所传送分组有可能出现丢失、重复、延迟或乱序等问题。IP协议主要包含三方面内容:IP编址方案、分组封装格式以及分组转发规则。
1.1.2 IP分组的转发规则
路由器仅根据网络地址进行转发。当IP数据包经由路由器转发时,如果目标网络与本路由器直接相连,则直接将数据包交付给目标主机,这称为直接交付;否则,路由器通过路由表查找路由信息,并将数据包转交给指明的下一跳路由器,这称为间接交付。路由器在间接交付中,若路由表中有到达目标网络的路由,则把数据报传送给路由表指明的下一跳路由器;如果没有路由,但路由表中有一个默认路由,则把数据报传送给指明的默认路由器;如果两者都没有,则丢弃数据包并报告错误。
1.1.3 什么是IP分片
一个IP包从源主机传输到目的主机可能需要经过多个不同的网络。由于各种物理网络的链路层都有一个最大传输单元MTU的限制,例如,以太网的MTU是1500;因此,当路由器在转发IP包时,如果数据报的大小超过了出口链路的最大传输单元时,则会将该IP分组分解成很多足够小的片段,以便能够在目标链路上进行传输。这些IP分片重新封装一个IP包独立传输,并在到达目的主机时才会被重组起来。
1.2 实验配置说明
拓扑图
在这里插入图片描述

1.3 实验目的
1.熟悉IP的报文格式以及关键字段的含义。
2.掌握IP地址的分配方法。
3.理解路由器转发IP数据报的流程。
1.4 实验步骤
1.4.1任务一:观察数据包的封装以及字段变化
初始化所有设备的ARP表信息
在这里插入图片描述

观察IP数据报的转发
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

1.4.2 任务二:观察路由器转发IP数据包的方式
初始化并观察各路由器的路由表
在这里插入图片描述

观察PC0到PC2的往返过程
在这里插入图片描述
在这里插入图片描述

观察PC2到PC1的往返过程
在这里插入图片描述
在这里插入图片描述

1.4.3 任务三:观察IP分片原理
产生需要分片的数据报
在这里插入图片描述

观察IP数据报的分片情况
在这里插入图片描述
在这里插入图片描述

1.5 思考题

  1. 一个IP分组经路由器转发后,有哪些字段会发生变化?
    答:TTL会发生改变,源MAC 地址和目的MAC 地址
    2.为什么任务三中的两个分片的长度分别为1500字节和48字节。
    答:因为发送的包的大小是1500,封装它的 IP 数据报超出了以太网帧的负载上限,因此该 IP报文被分拆为两个 ID一样的分片,一个长度为 1500 字节,另一个为 48 字节。

2IP地址分配实验
2.1背景知识
2.1.1 什么是IP地址
我们把整个因特网看成为一个单一的、虚拟的网络,则IP地址就是给每个连接在Internet上的主机或路由器分配一个唯一的 32位的标识符。为了便于记忆,我们常用点分制表示,如192.168.1.1。IP地址由Internet名字与号码指派公司ICANN统一进行管理和分配。目前,IP地址的编址方法主要有三种:分类的IP地址、可划分子网的IP地址、无分类编址方法CIDR。
一个IP地址一般是由网络号和主机号两级组成。路由器仅根据目的地址中网络号来转发分组,而不考虑主机号,这样就可以大幅度缩小路由表,提高查表速度。因此,在同一个网络上的主机或路由器的IP 地址的网络号必须是一致。此外,ISP在分配IP地址时只分配网络号,而剩下的主机号则由单位内部自行分配,从而方便了IP地址的管理。
2.1.2 网关
网关实质上就是一个网络通往其他网络的关口,也就是连接到本地网络的路由器的接口。当主机需要和外网通信时就必须配置默认网关地址,即默认的出口IP地址。如果主机发送的数据包的目的网络与本主机的网络地址不同,则需要将该数据包转发给默认网关地址指向的路由器,由该路由器负责将数据包转发到其他网络去。网关接口应具有与本地网络相同的网络地址。
2.1.3 CIDR地址块
为了进一步提高IP地址的分配效率,Internet引入一种无分类域间路由选择CIDR (Classless Inter-Domain Routing)。CIDR采用可变长掩码,消除了传统的A类、B类和C类地址以及划分子网的概念。它使用各种长度的“网络前缀”来代替分类地址中的网络号和子网号。我们可以根据每个网络主机的具体数量来确定该网络的前缀和主机位,主机数量越大的网络使用更多的主机位,因此更加有效地分配IPv4的地址空间。CIDR把网络前缀都相同的连续的 IP 地址组成“CIDR 地址块”。如“129.14.32.0/20”地址块共有212个地址,其中,最小地址为129.14.32.0,最大地址为129.14.47.255。

2.2 实验配置说明
拓扑图
在这里插入图片描述

2.3 实验目的

  1. 掌握主机和路由器的IP地址配置
  2. 熟悉CIDR的IP地址编址方式
  3. 理解CIDR的路由聚合功能
    2.4 实验步骤
    2.4.1 任务一:练习主机和路由器的IP地址配置
    选择适当的IP地址、掩码和网关
    IP 掩码
    PC0 192.168.1.1 255.255.0.0
    Rounter0 192.168.4.1 255.255.255.0
    为主机分配所选信息
    在这里插入图片描述

为Router0的Se0/0/0接口分配所选的信息
在这里插入图片描述

测试连通性
在这里插入图片描述

2.4.2 任务二:练习CIDR地址规划
为Rounte1接口选择适当的IP地址和掩码

在这里插入图片描述
在这里插入图片描述

为路由器分配所选的信息,检查配置是否成功
在这里插入图片描述

在路由器上进行路由聚合
在这里插入图片描述

测试连通性

在这里插入图片描述
在这里插入图片描述

2.5 思考题

  1. 与分类的IP编址方法相比,CIDR编址方案具有什么优点?
    答:(1)CIDR的地址分配更高效,因为CIDR采用可变长掩码,能根据网络的实际大小量身定制主机地址空间。
    (2)CIDR具有路由聚合功能,能减少路由器的路由表项。
  2. 路由器的不同接口能否使用相同的网络号?
    答:不可以,路由器的不同接口必须使用不同的网络号。
    3 ARP分析
    3.1 背景知识
    3.1.1 什么是ARP
    ARP,即地址解析协议。TCP/IP网络使用ARP实现IP地址到MAC地址的动态解析。网络层使用逻辑地址(IP地址)作为互联网的编址方案,但实际的物理网络(以太网)采用硬件地址(MAC地址)来唯一识别设 备。因此在实际网络的链路_上传送数据帧时,最终还是必须使用硬件地址(MAC地址)。
    3.1.2 APR工作原理
    每个主机和路由器的内存中都设有一个ARP高速缓存,用于存放其他设备的IP地址到物理地址的映射表。当主机欲向本局域网.上其他主机发送IP包时,先在本地ARP缓存中查看是否有对方的MAC地址信息。如果没有,则ARP会在网络中广^播一个ARP请求,拥有该目标IP地址的设备将自动发回一个ARP回应,对应的MAC地址将记录到主机的ARP缓存中。考虑到一个网络可能经常有设备动态加入或者撤出,并且更换设备的网卡或IP地址也都会引起主机地址映射发生变化,因此,ARP缓存定时器将会删除在指定时间段内未使用的ARP条目,具体时间因设备而异。例如,有些Windows操作系统存储ARP缓存条目的时间为2min,但如果该条目在这段时间内被再次使用,其ARP定时器将延长至10min。ARP缓存可以提:高工作效率。如果没有缓存,每当有数据帧进入网络时,ARP都必须不断请求地址转换,这样会延长通信时间,甚至造成网络拥塞。反之,保存时间过长也可能导致离开网络或者更改第3层地址的设备出错。
    ARP可解决同一个局域网。上的主机或路由器的IP地址和硬件地址的映射问题。如果所要找的主机和源主机不在同一-个局域网上,那么就要通过ARP找到一个位于本局域网.上的某个路由器的硬件地址,然后把分组发送给这个路由器,让这个路由器把分组转发给下一个网络。剩下的工作就由下一个网络来做。
    3.2 实验配置说明
    拓扑图
    在这里插入图片描述

3.3 实验目的
①掌握基本的ARP命令。
②熟悉ARP报文格式和数据封装方式。
③理解ARP的工作原理。
3.4 实验步骤
3.4.1 任务一:在Packet Tracer中熟悉arp命令
访问主机的命令提示符窗口
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

观察ARP缓存中条目的动态增减

3.4.2 任务二:使用Packet Tracer观察ARP的工作原理
捕获并观察ARP数据包的转发
在这里插入图片描述
在这里插入图片描述

研究ARP报文格式和封装方式
在这里插入图片描述
在这里插入图片描述

研究不同广播域内主机将互访时的ARP执行过程

在这里插入图片描述
在这里插入图片描述

3.5 思考题
(1)任务一完成后,哪些PC的ARP缓存拥有PCO的MAC地址记录?哪些PC新添加了PC1的MAC地址记录?
答:PC1的ARP缓存拥有了PC0的地址记录;PC0新添加了PC1的MAC地址记录。
(2)ARP缓存的作用是什么?缓存中记录的保存时间是否越长越好?请解释理由。
答:考虑到一个网络可能经常有设备动态加入或者撤出,并且设备也可能更改IP地址,因此,ARP协议将会删除过期未更新的ARP条目,具体时间因设备而异。如有些 Windows 系统的ARP有效时间为2min。ARP缓存可以提高工作效率。如果没有缓存,每当有数据帧进入网络时,ARP都必须不断请求地址转换,这样会延长通信延时,甚至造成网络拥塞。反之,保存时间过长也可能导致离开网络或者更改第3层地址的设备出错。
(3)主机使用ARP能查询到其他网段的MAC地址吗?为什么?
答:不能,ARP协议只能访问同一个广播域下的主机,如果要查询其他网段,则需要交给网关解决。
(4)在任务二的步骤3中,ARP被执行了几次?
答:2次,一次是查询包,一次是路由返回的应答包。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/674216.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

SpringMVC系列-2 HTTP请求调用链

背景 本文作为 SpringMVC系列 第二篇,介绍HTTP请求的调用链:从请求进入Tomcat到数据流返回客户端的完整过程。为了尽可能把流程表达清楚,进行了很多减支处理,只关注主线逻辑。 本文也作为SpringMVC系列后续文章的基础&#xff0…

软考A计划-系统集成项目管理工程师--一般常识-上

点击跳转专栏>Unity3D特效百例点击跳转专栏>案例项目实战源码点击跳转专栏>游戏脚本-辅助自动化点击跳转专栏>Android控件全解手册点击跳转专栏>Scratch编程案例点击跳转>软考全系列 👉关于作者 专注于Android/Unity和各种游戏开发技巧&#xff…

SpringBoot 异常处理的主要组件有哪些

SpringBoot 异常处理的主要组件有哪些 在 SpringBoot 应用程序中,异常处理是一个非常重要的话题。当应用程序出现异常时,我们需要对异常进行处理,以保证应用程序的稳定性和可靠性。SpringBoot 提供了一系列的组件,用于处理各种类…

简析IAST—Agent篇 | 信息安全

一、IAST简单介绍 IAST(Interactive Application Security Testing)交互式应用程序安全测试,通过服务端部署Agent探针,流量代理/VPN或主机系统软件等方式,监控Web应用程序运行时函数执行并与扫描器实时交互,高效、精准的安全漏洞&…

LeetCode 面试题 16.19. 水域大小

LeetCode 面试题 16.19. 水域大小 来源:力扣(LeetCode) 链接:https://leetcode.cn/problems/group-anagrams/description/ 博主Github:https://github.com/GDUT-Rp/LeetCode 题目: 你有一个用于表示一片…

C++初阶之初识C++

初识C 1.什么是C2.C的发展史2.1 历史渊源2.2 名称由来2.3 C标准 3.C的重要性3.1 语言的使用广泛度3.2 工作领域 4.如何学习C5.结语 1.什么是C C语言是结构化和模块化的语言,适合处理较小规模的程序。对于复杂的问题,规模较大的 程序,需要高度…

【k8s系列】一分钟搭建MicroK8s Dashboard

本文基于上一篇文章的内容进行Dashboard搭建,如果没有看过上一篇的同学请先查阅上一篇文章 k8s系列】使用MicroK8s 5分钟搭建k8s集群含踩坑经验 使用MicroK8s搭建Dashboard很简单,只需要在Master节点按照以下几步操作 1.启用Dashboard插件 microk8s en…

“Vue3+Vite打包后,白屏沉默,重启重试无果,我该如何解决?”

每次最后打包总是会或多或少出现一些问题,昨天打包项目完之后 直接点击dist中的index.html去看看有没有什么发题,一打开奇怪的事发生了,居然是空白;但是在vscode中右键Open with Live Server一看项目没啥问题,但是部署…

下载安装Python解释器和环境变量配置

一、 python解释器下载 1.百度python官网并打开 官网网址:https://www.python.org/ 在这里插入图片描述 2.选择DownLoads,Windows并打开 3.在下图页面选择你需要的版本下载即可(本文以python 3.10.4版本演示) 在这里插入图片描述 …

C++笔记之extern关键字

C笔记之extern关键字 code review! 文章目录 C笔记之extern关键字0.前言1.extern是C语言的关键字还是C中的关键字?2.extern关键字和全局变量3.ChatGpt讲述extern的用法4.extern一般用法4.1.在本模块中使用4.2.跨模块中使用 5.标准定义使用extern关键字的步骤7.ext…

Nginx 访问日志中有 Get 别的网站的请求是什么原因?

💂 个人网站:【海拥】【游戏大全】【神级源码资源网】🤟 前端学习课程:👉【28个案例趣学前端】【400个JS面试题】💅 寻找学习交流、摸鱼划水的小伙伴,请点击【摸鱼学习交流群】 目录 前言理解 Nginx 访问日…

父亲的打,最让人想念。

11年前的端午节,父亲就走了。 父亲十五岁就外出打工,从小出去打工,吃了没有文化的苦,父亲从小教育我要好好读书,可我从来听不进。 所以我经常挨打。 老家在湖南的一个农村,我父亲十几岁就南下打工&#xff…

[进阶]网络通信:TCP通信,一发一收,多发多收

TCP通信 特点:面向连接、可靠通信。通信双方事先会采用 “三次握手〞 方式建立可靠连接,实现端到端的通信;底层能保证数据成功传给服务端。Java提供了一个java.net.socket类来实现TCP通信。 TCP通信——客户端开发 客户端程序就是通过java.…

基于OpenCV-车辆检测项目(简易版)

车辆检测 1.项目介绍2. 读取一段视频3.通过形态学处理识别车辆4.描画轮廓5. 车辆计数并显示 本项目使用的视频地址链接 1.项目介绍 对一个视频进行车辆数量的检测,用到的知识有视频的读取,滤波器,形态学,添加直线、文本&#xff…

黑马头条2

文章目录 前言一、接口工具1.1 postman1.2 swagger1.3 knife4j 二、 网关一、基本搭建二、全局过滤器jwt 三、 前端集成导入前端工程项目安装nginx测试 🌕博客x主页:己不由心王道长🌕! 🌎文章说明:黑马头条开发&#x…

一站式数据可观测性平台 Datavines 正式开源啦

Datavines是一站式开源数据可观测性平台,提供元数据管理、数据概览报告、数据质量管理,数据分布查询、数据趋势洞察等核心能力,致力于帮助用户全面地了解和掌管数据,让您做到心中有数,目前作为 Datavane 开源组织的重点…

Java ForkJoin 简介和应用

Java 并行框架 Fork Join 一.Fork Join 简介1.框架说明2.任务说明 二.应用示例1.RecursiveTask分组示例分组求和 2.RecursiveAction3.CountedCompleter 三.ForkJoin 实践代码测试1.测试用 Excel 文件2.读取结果 一.Fork Join 简介 1.框架说明 ForkJoinPool 继承自 AbstractEx…

【Java-SpringBoot+Vue+MySql】Day4-VUE框架使用

一、VUE入门 1、环境准备 2、预备知识 3、实战演练 vue官网 Vue.js - 渐进式 JavaScript 框架 | Vue.js 基础语法,vue2和vue3区别不大,但是后面路由会有很大区别。 前期基础语法,我们通过链接的方式使用vue,后面会用npm进行安装…

Transformer-XL模型简单介绍

目录 一、前言 二、整体概要 三、细节描述 3.1 状态复用的块级别循环 3.2 相对位置编码 四、论文链接 一、前言 以自注意力机制为核心的 Transformer 模型是各种预训练语言模型中的主要组成部分。自注意力机制能够构建序列中各个元素之间的上下文关联程度,挖掘…

java 2023秒杀项目 day(1) 面经

java 2023杀项目 day(1) 面经 一、秒杀项目1.1 如何设计秒杀系统1.2 数据库 二、业务2.1 登录2.2.1 密码加密 2.2.2 密码参数校验2.2.3 分布式session2.2.3.1 解决方案 2.2.4 参数解析器 2.3 异常处理2.3.1 ControllerAdvicerExceptionHandler 2.4 秒杀2.4.1 逻辑2.4.1 秒杀前判…