计算机网络ENSP课设--三层架构企业网络
本课程设计搭建一个小型互联网,并模拟Internet的典型Web服务过程。通过此次课程设计,可以进一步理解Internet的工作原理和协议过程,并提高综合知识的运用能力和分析能力。具体目标包括:
(1)掌握网络拓扑的分析能力以及简单的故障排除方法;
(2)进一步理解TCP/IP协议栈的工作过程及其数据封装方法;
(3)进一步理解数据分组在互联网中的传输过程;
(4)进一步理解路由协议的工作原理。
(5)综合了解各种协议如何协同工作,完成Internet信息服务。
一、设计目标
1.初始化拓扑图
2.观察同一交换机上同一VLAN内PC间的通信
3.观察不同交换机上但属于同一VLAN内PC间的通信
4.观察同一交换机上但不属于同一VLAN内PC间的通信
5.观察不同交换机上不属于同一VLAN内PC间的通信
6.观察VLAN2内PC4与外部通信
7.观察VLAN3内PC5与外部通信
8.观察活跃路由故障时,PC与外部通信情况
二、 背景知识与基本原理
背景知识
1.分层网络设计概述
企业网络一般采用分层思想进行设计,即一个大规模的网络系统往往被分为几个较小的部分,它们之间既相对独立又相互关联。这种化整为零的设计方法称为分层设计。三层分层模型包括核心层(CoreLayer)、汇聚层(DistributionLayer)和接入层(AccessLayer)。
其中,每层都有其特定的功能,详细说明如下。
(1)核心层(CoreLayer):主干网络,其主要功能是实现快速而可靠的数据传输。核心层的性能与可靠性对整个网络的性能和可靠性是至关重要的,因此在设计核心层时只将高可靠性、高速的传输作为其设计目标,而不将影响传输速度的数据处理放在核心层实现。核心层交换机需要具有较高的可靠性和性能。
(2)汇聚层(DistributionLayer):负责连接接入层和核心层,将众多的接入层接入点汇集起来,屏蔽接入层对核心层的影响。汇聚层需要实现一些网络策略,包括提供路由、实现包过滤、网络安全、创建VLAN并实现VLAN间路由、分割广播域、WAN接入等。汇聚层交换机仍需要较高性能和比较丰富的功能。
(3)接入层(AccessLayer):又称为桌面层,提供用户或工作站的网络接入,用户可以通过接入层访问网络设备。接入层的交换机数量较多,在设备选择上需要选择易于使用和维护、具有较高性价比和高端口密度的交换机。
分层设计的主要优点如下。
(1)对复杂的网络问题进行层次分割,每层执行特定的功能,使复杂的网络问题更易于解决。(2)各层间相对独立,某层的拓扑结构变化不会影响到其他层。
(3)使用分层模型设计的网络更易于实现和维护,具有更好的可扩展性。
2.冗余网络
网络的稳定性对于大多数企业网络都是很重要的,一旦网络出现故障(即使时间很短)就会造成很大的损失。因此,为了增强企业网络的稳定性,往往会在网络中使用冗余链路,当其中一条链路出现故障时,另外一条链路仍然可以保证网络的正常通信。
基本原理
利用单臂路由实现VLAN 间路由,以太网中, 通常会使用VLAN 技术隔离二层广播域来减少广播的影响,并增强网络的安全性和可管理性。其缺点是同时也严格地隔离了不同VLAN 之间的任何二层流量,使分属于不同VLAN 的用户不能直接互相通信。在现实中, 经常会出现某些用户需要跨越VLAN 实现通信的情况,单臂路由技术就是解决VLAN 间通信的一种方法。
单臂路由的原理是通过一台路由器,使VLAN 间互通数据通过路由器进行三层转发。如果在路由器上为每个VLAN 分配一个单独的路由器物理接口,随着VLAN数量的增加, 必然需要更多的接口,而路由器能提供的接口数昼比较有限,所以在路由器的一个物理接口上通过配置子接口(即逻辑接口)的方式来实现以一当多的功能,将是一种非常好的方式。路由器同一物理接口的不同子接口作为不同VLAN 的默认网关,当不同VLAN 间的用户主机需要通信时,只需将数据包发送给网关,网关处理后再发送至目的主机所在VLAN, 从而实现VLAN 间通信。由于从拓扑结构图上看,在交换机与路由器之间,数据仅通过一条物理链路传输,故被形象地称之为“ 单臂路由”。
三、 拓扑结构与详细配置
画出拓扑结构图

写出详细的配置信息
设备名
接口名
IP地址
子网掩码
Internet_R
G0/0/0
23.1.1.2
255.255.255.0
G0/0/1
23.1.2.254
255.255.255.0
GW_R
G0/0/0
23.1.1.1
255.255.255.0
G0/0/1
172.16.1.1
255.255.255.0
G0/0/2
172.16.2.1
255.255.255.0
L3SW_1
G0/0/1
172.16.1.2
255.255.255.0
G0/0/3(VLAN2)
172.16.20.252
255.255.255.0
G0/0/4(VLAN3)
172.16.30.252
255.255.255.0
L3SW_2
G0/0/1
172.16.2.2
255.255.255.0
G0/0/3(VLAN2)
172.16.20.253
255.255.255.0
G0/0/4(VLAN3)
172.16.30.253
255.255.255.0
设备名
所属网段
IP地址
默认网关
Server
VLAN2
172.16.20.1
172.16.20.254
PC1
VLAN2
172.16.20.2
172.16.20.254
PC2
VLAN2
172.16.20.3
172.16.20.254
PC3
VLAN3
172.16.30.1
172.16.30.254
PC4
VLAN2
172.16.20.4
172.16.20.254
PC5
VLAN3
172.16.30.2
172.16.30.254
Server
外部网络
23.1.2.1
23.1.2.254
代码如下
交换机L3sw_1
[huawei]vlan batch 2 3
[huawei]int vlan2
[huaweiVlanif2]ip add 172.16.20.252 24
[huaweiVlanif2]int vlan3
[huaweiVlanif3]ip add 172.16.30.252 24
[huaweiVlanif3]int g0/0/1
[Huawei-GigabitEthernet0/0/1]port link-type trunk
[Huawei-GigabitEthernet0/0/1]port trunk allow-pass vlan all
[Huawei-GigabitEthernet0/0/1]int g0/0/3
[Huawei-GigabitEthernet0/0/3]port link-type trunk
[Huawei-GigabitEthernet0/0/3]port trunk allow-pass vlan all
[Huawei-GigabitEthernet0/0/3]int g0/0/4
[Huawei-GigabitEthernet0/0/4]port link-type trunk
[Huawei-GigabitEthernet0/0/4]port trunk allow-pass vlan all
[Huawei-GigabitEthernet0/0/4]q
[huawei]q
<huawei>save交换机L3sw_2
[huawei]vlan batch 2 3
[huawei]int vlan2
[huaweiVlanif2]ip add 172.16.20.253 24
[huaweiVlanif2]int vlan3
[huaweiVlanif3]ip add 172.16.30.253 24
[huaweiVlanif3]int g0/0/1
[Huawei-GigabitEthernet0/0/1]port link-type trunk
[Huawei-GigabitEthernet0/0/1]port trunk allow-pass vlan all
[Huawei-GigabitEthernet0/0/1]int g0/0/3
[Huawei-GigabitEthernet0/0/3]port link-type trunk
[Huawei-GigabitEthernet0/0/3]port trunk allow-pass vlan all
[Huawei-GigabitEthernet0/0/3]int g0/0/4
[Huawei-GigabitEthernet0/0/4]port link-type trunk
[Huawei-GigabitEthernet0/0/4]port trunk allow-pass vlan all
[Huawei-GigabitEthernet0/0/4]q
[huawei]q
<huawei>save交换机LSW5
[huawei]vlan batch 2 3
[huawei]int vlan2
[huaweiVlanif2]ip add 172.16.20.252 24
[huaweiVlanif2]int vlan3
[huaweiVlanif3]ip add 172.16.30.253 24
[huaweiVlanif3]int g0/0/1
[Huawei-GigabitEthernet0/0/1]port link-type trunk
[Huawei-GigabitEthernet0/0/1]port trunk allow-pass vlan all
[Huawei-GigabitEthernet0/0/1]int g0/0/2
[Huawei-GigabitEthernet0/0/2]port link-type trunk
[Huawei-GigabitEthernet0/0/2]port trunk allow-pass vlan all
[Huawei-GigabitEthernet0/0/2]int g0/0/3
[Huawei-GigabitEthernet0/0/3]port link-type access
[Huawei-GigabitEthernet0/0/3]port default vlan 2
[Huawei-GigabitEthernet0/0/3]int g0/0/4
[Huawei-GigabitEthernet0/0/4]port link-type access
[Huawei-GigabitEthernet0/0/4]port default vlan 2
[Huawei-GigabitEthernet0/0/4]int g0/0/5
[Huawei-GigabitEthernet0/0/5]port link-type access
[Huawei-GigabitEthernet0/0/5]port default vlan 2
[Huawei-GigabitEthernet0/0/5]int g0/0/6
[Huawei-GigabitEthernet0/0/6]port link-type access
[Huawei-GigabitEthernet0/0/6]port default vlan 3
[Huawei-GigabitEthernet0/0/6]q
[huawei]q
<huawei>save交换机LSW6
[huawei]vlan batch 2 3
[huawei]int vlan2
[huaweiVlanif2]ip add 172.16.20.253 24
[huaweiVlanif2]int vlan3
[huaweiVlanif3]ip add 172.16.30.252 24
[huaweiVlanif3]int g0/0/1
[Huawei-GigabitEthernet0/0/1]port link-type trunk
[Huawei-GigabitEthernet0/0/1]port trunk allow-pass vlan all
[Huawei-GigabitEthernet0/0/1]int g0/0/2
[Huawei-GigabitEthernet0/0/2]port link-type trunk
[Huawei-GigabitEthernet0/0/2]port trunk allow-pass vlan all
[Huawei-GigabitEthernet0/0/2]int g0/0/3
[Huawei-GigabitEthernet0/0/3]port link-type access
[Huawei-GigabitEthernet0/0/3]port default vlan 2
[Huawei-GigabitEthernet0/0/3]int g0/0/4
[Huawei-GigabitEthernet0/0/4]port link-type access
[Huawei-GigabitEthernet0/0/4]port default vlan 3
[Huawei-GigabitEthernet0/0/4]q
[huawei]q
<huawei>save路由器GW_R
<huawei>sys
[huawei]Int g0/0/1
[Huawei-GigabitEthernet0/0/1]ip add 172.16.1.1 24
[Huawei-GigabitEthernet0/0/1]int g0/0/2
[Huawei-GigabitEthernet0/0/2]ip add 172.16.2.1 24
[Huawei-GigabitEthernet0/0/2]int g0/0/0
[Huawei-GigabitEthernet0/0/0]ip add 23.1.1.1 24
[Huawei-GigabitEthernet0/0/0]int g0/0/1.1
[Huawei-GigabitEthernet0/0/1.1]ip add 172.16.20.254 24
[Huawei-GigabitEthernet0/0/1.1]dot1q termination vid 2
[Huawei-GigabitEthernet0/0/1.1]arp broadcast enable
[Huawei-GigabitEthernet0/0/1.1]int g0/0/1.2
[Huawei-GigabitEthernet0/0/1.2]ip add 172.16.30.254 24
[Huawei-GigabitEthernet0/0/1.2]dot1q termination vid 3
[Huawei-GigabitEthernet0/0/1.2]arp broadcast enable
[Huawei-GigabitEthernet0/0/1.2]q
[huawei]ip route -static 23.1.2.0 24 23.1.1.2
[huawei]q
<huawei>save路由器Internet
<huawei>sys
[huawei]int g0/0/1
[Huawei-GigabitEthernet0/0/1]ip add 23.1.2.1 24
[Huawei-GigabitEthernet0/0/1]int g0/0/0
[Huawei-GigabitEthernet0/0/0]ip add 23.1.1.2 24
[Huawei-GigabitEthernet0/0/0]q
[huawei]ip route-static 172.16.20.0 24 23.1.1.1
[huawei]ip route-static 172.16.30.0 24 23.1.1.1
[huawei]q
<huawei>save
四、 主要步骤
任务1 观察同一企业网络同一VLAN间通信
步骤1:初始化拓扑图
步骤2:观察同一交换机上同一VLAN内PC间的通信

步骤3:观察不同交换机上但属于同一VLAN内PC间的通信

任务2 观察企业网络不同VLAN间通信
步骤1:观察同一交换机上但不属于同一VLAN内PC间的通信

步骤2:观察不同交换机上不属于同一VLAN内PC间的通信

任务3双核心路由热备份实验
步骤1:观察VLAN2内PC4与外部通信

步骤2**:观察VLAN3内PC5与外部通信**

步骤3:观察活跃路由故障时,PC与外部通信情况


相关文章:
计算机网络ENSP课设--三层架构企业网络
本课程设计搭建一个小型互联网,并模拟Internet的典型Web服务过程。通过此次课程设计,可以进一步理解Internet的工作原理和协议过程,并提高综合知识的运用能力和分析能力。具体目标包括: (1)掌握网络拓扑的…...
【openwrt】openwrt-21.02 基于IP地址使用ipset实现策略路由操作说明
openwrt版本信息 DISTRIB_ID=OpenWrt DISTRIB_RELEASE=21.02-SNAPSHOT DISTRIB_REVISION=r0-6bf6af1d5 DISTRIB_TARGET=mediatek/mt7981 DISTRIB_ARCH=aarch64_cortex-a53 DISTRIB_DESCRIPTION=OpenWrt 21.02-SNAPSHOT r0-6bf6af1d5 DISTRIB_TAINTS=no-all busybox override …...
Git:常用命令
一、查看当前分支 git branch 二、查看所有分支 git branch -a 三、切换到远程分支 git checkout origin/分支名 示例:git checkout origin/dev 四、拉取远程分支代码 git pull origin 分支名 示例:git pull origin dev 五、常用指令 查看暂存区…...
【2025最新版】搭建个人博客教程
【2025最新版】搭建个人博客教程 –小记: 在搭建我的这个博客之前我在CSDN也发布过一些文章,目前应该也是几千粉丝了,但是看到别人都是用自己博客写的就感觉自己很LOW,所以就想自己来搭建一个属于自己的个人博客。当然搭建博客的…...
微信小程序实现联动删除输入验证码框
以下是json代码 {"component": true,"usingComponents": {} }以下是wxml代码 <van-popup show"{{ show }}" bind:close"onClose" custom-class"extract"><image src"../../images/extract/icon1.png"…...
数据库中decimal、float 和 double区别
在计算机科学中,decimal、float 和 double 是用于表示和处理数值的不同数据类型。 - decimal 是一种精确的十进制浮点数表示,通常用于需要高精度计算的场景,比如财务应用。它能够精确表示小数,并且不会出现浮点数运算误差。 - flo…...
网络编程01
1. 概念 通过网络,让两个主机之间能够进行通信,基于这样的通信完成一定的功能 只要满足进程不同即可,即使是同一个主机,只要是不同的进程,基于网络完成编程 进行网络编程时,需要操作系统提供一组API&…...
el-dialog修改其样式不生效加deep也没用
场景 el-dialog标签直接写在了template下。 解决方法 在template中先写一层div,包裹住el-dialog。...
三天精通一算法之快速排序
力扣链接912. 排序数组 - 力扣(LeetCode)注意这题快排不能用递归,否则堆会爆 快速排序(Quicksort)是一种高效的排序算法,通常使用分治法来将一个列表分成较小的子列表,然后递归地排序这些子列表…...
互联网、物联网的相关标准
互联网的相关标准 网络通信协议: HTTP(Hypertext Transfer Protocol):用于在网络中传输文本、图像、音频和视频等数据的协议。它基于请求-响应模型,客户端发送请求给服务器,服务器返回响应。HTTPS&a…...
Linux题库及答案
填空题 1. 建立用户账号的命令是__useradd________。 2. 修改账号密码的命令是__passwd________。 3. 更改用户密码过期信息的命令是__chage________。 4. 创建一个新组的命令是___groupadd_______。 5. 用于在不注销的情况下切换到系统中的另一个用户的命令是___su_…...
Android 镜像模式和扩展模式区别探讨-Android14
Android 镜像模式和扩展模式区别探讨 1、区分镜像模式和扩展模式1.1 扩展屏是否有显示内容1.2 镜像模式显示条件 2、镜像模式界面 同屏显示和异屏显示探讨DisplayManagerService启动及主屏添加-Android13 Android主副屏显示-Android14 1、区分镜像模式和扩展模式 LogicalDispla…...
深度学习笔记之BERT(五)TinyBERT
深度学习笔记之TinyBERT 引言回顾:DistilBERT模型TinyBERT模型结构TinyBERT模型策略Transformer层蒸馏嵌入层蒸馏预测层蒸馏 TinyBERT模型的训练效果展示 引言 上一节介绍了 DistilBERT \text{DistilBERT} DistilBERT模型,本节将继续介绍优化性更强的知…...
【时间序列预测】基于PyTorch实现CNN_BiLSTM算法
文章目录 1. CNN与BiLSTM2. 完整代码实现3. 代码结构解读3.1 CNN Layer3.2 BiLSTM Layer3.3 Output Layer3.4 forward Layer 4. 应用场景5. 总结 本文将详细介绍如何使用Pytorch实现一个结合卷积神经网络(CNN)和双向长短期记忆网络(BiLSTM&am…...
联想Y7000 2024版本笔记本 RTX4060安装ubuntu22.04双系统及深度学习环境配置
目录 1..制作启动盘 2.Windows 磁盘分区,删除原来ubuntu的启动项 3.四个设置 4.安装ubuntu 5.ubuntu系统配置 1..制作启动盘 先下载镜像文件,注意版本对应。Rufus - 轻松创建 USB 启动盘 用rufus制作时,需要注意选择正确的分区类型和系统类型。不然安装的系统会有问题…...
VuePress学习
1.介绍 VuePress 由两部分组成:第一部分是一个极简静态网站生成器 (opens new window),它包含由 Vue 驱动的主题系统和插件 API,另一个部分是为书写技术文档而优化的默认主题,它的诞生初衷是为了支持 Vue 及其子项目的文档需求。…...
一次“okhttp访问间隔60秒,提示unexpected end of stream“的问题排查过程
一、现象 okhttp调用某个服务,如果第二次访问间隔上一次访问时间超过60s,返回错误:"unexpected end of stream"。 二、最终定位原因: 空闲连接如果超过60秒,服务端会主动关闭连接。此时客户端恰巧访问了这…...
SQL最佳实践:避免使用COUNT=0
如果你遇到类似下面的 SQL 查询: SELECT * FROM customer c WHERE 0 (SELECT COUNT(*)FROM orders oWHERE o.customer_id c.customer_id);意味着有人没有遵循 SQL 最佳实践。该语句的作用是查找没有下过订单的客户,其中子查询使用了 COUNT 函数统计客…...
PG与ORACLE的差距
首先必须是XID 64,一个在极端环境下会FREEZE的数据库无论如何都无法承担关键业务系统的重任的,我们可以通过各种配置,提升硬件的性能,通过各种IT管控措施来尽可能避免在核心系统上面临FREEZE的风险,不过并不是每个企业…...
树莓派3B+驱动开发(2)- LED驱动(传统模式)
github主页:https://github.com/snqx-lqh 本项目github地址:https://github.com/snqx-lqh/RaspberryPiDriver 本项目硬件地址:https://oshwhub.com/from_zero/shu-mei-pai-kuo-zhan-ban 欢迎交流 笔记说明 如我在驱动开发总览中说的那样&…...
深度学习在微纳光子学中的应用
深度学习在微纳光子学中的主要应用方向 深度学习与微纳光子学的结合主要集中在以下几个方向: 逆向设计 通过神经网络快速预测微纳结构的光学响应,替代传统耗时的数值模拟方法。例如设计超表面、光子晶体等结构。 特征提取与优化 从复杂的光学数据中自…...
地震勘探——干扰波识别、井中地震时距曲线特点
目录 干扰波识别反射波地震勘探的干扰波 井中地震时距曲线特点 干扰波识别 有效波:可以用来解决所提出的地质任务的波;干扰波:所有妨碍辨认、追踪有效波的其他波。 地震勘探中,有效波和干扰波是相对的。例如,在反射波…...
SkyWalking 10.2.0 SWCK 配置过程
SkyWalking 10.2.0 & SWCK 配置过程 skywalking oap-server & ui 使用Docker安装在K8S集群以外,K8S集群中的微服务使用initContainer按命名空间将skywalking-java-agent注入到业务容器中。 SWCK有整套的解决方案,全安装在K8S群集中。 具体可参…...
Vue2 第一节_Vue2上手_插值表达式{{}}_访问数据和修改数据_Vue开发者工具
文章目录 1.Vue2上手-如何创建一个Vue实例,进行初始化渲染2. 插值表达式{{}}3. 访问数据和修改数据4. vue响应式5. Vue开发者工具--方便调试 1.Vue2上手-如何创建一个Vue实例,进行初始化渲染 准备容器引包创建Vue实例 new Vue()指定配置项 ->渲染数据 准备一个容器,例如: …...
Qt Http Server模块功能及架构
Qt Http Server 是 Qt 6.0 中引入的一个新模块,它提供了一个轻量级的 HTTP 服务器实现,主要用于构建基于 HTTP 的应用程序和服务。 功能介绍: 主要功能 HTTP服务器功能: 支持 HTTP/1.1 协议 简单的请求/响应处理模型 支持 GET…...
Psychopy音频的使用
Psychopy音频的使用 本文主要解决以下问题: 指定音频引擎与设备;播放音频文件 本文所使用的环境: Python3.10 numpy2.2.6 psychopy2025.1.1 psychtoolbox3.0.19.14 一、音频配置 Psychopy文档链接为Sound - for audio playback — Psy…...
算法岗面试经验分享-大模型篇
文章目录 A 基础语言模型A.1 TransformerA.2 Bert B 大语言模型结构B.1 GPTB.2 LLamaB.3 ChatGLMB.4 Qwen C 大语言模型微调C.1 Fine-tuningC.2 Adapter-tuningC.3 Prefix-tuningC.4 P-tuningC.5 LoRA A 基础语言模型 A.1 Transformer (1)资源 论文&a…...
(一)单例模式
一、前言 单例模式属于六大创建型模式,即在软件设计过程中,主要关注创建对象的结果,并不关心创建对象的过程及细节。创建型设计模式将类对象的实例化过程进行抽象化接口设计,从而隐藏了类对象的实例是如何被创建的,封装了软件系统使用的具体对象类型。 六大创建型模式包括…...
上位机开发过程中的设计模式体会(1):工厂方法模式、单例模式和生成器模式
简介 在我的 QT/C 开发工作中,合理运用设计模式极大地提高了代码的可维护性和可扩展性。本文将分享我在实际项目中应用的三种创造型模式:工厂方法模式、单例模式和生成器模式。 1. 工厂模式 (Factory Pattern) 应用场景 在我的 QT 项目中曾经有一个需…...
电脑桌面太单调,用Python写一个桌面小宠物应用。
下面是一个使用Python创建的简单桌面小宠物应用。这个小宠物会在桌面上游荡,可以响应鼠标点击,并且有简单的动画效果。 import tkinter as tk import random import time from PIL import Image, ImageTk import os import sysclass DesktopPet:def __i…...
