计算机网络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 欢迎交流 笔记说明 如我在驱动开发总览中说的那样&…...

基于距离变化能量开销动态调整的WSN低功耗拓扑控制开销算法matlab仿真
目录 1.程序功能描述 2.测试软件版本以及运行结果展示 3.核心程序 4.算法仿真参数 5.算法理论概述 6.参考文献 7.完整程序 1.程序功能描述 通过动态调整节点通信的能量开销,平衡网络负载,延长WSN生命周期。具体通过建立基于距离的能量消耗模型&am…...
ffmpeg(四):滤镜命令
FFmpeg 的滤镜命令是用于音视频处理中的强大工具,可以完成剪裁、缩放、加水印、调色、合成、旋转、模糊、叠加字幕等复杂的操作。其核心语法格式一般如下: ffmpeg -i input.mp4 -vf "滤镜参数" output.mp4或者带音频滤镜: ffmpeg…...

Keil 中设置 STM32 Flash 和 RAM 地址详解
文章目录 Keil 中设置 STM32 Flash 和 RAM 地址详解一、Flash 和 RAM 配置界面(Target 选项卡)1. IROM1(用于配置 Flash)2. IRAM1(用于配置 RAM)二、链接器设置界面(Linker 选项卡)1. 勾选“Use Memory Layout from Target Dialog”2. 查看链接器参数(如果没有勾选上面…...

高危文件识别的常用算法:原理、应用与企业场景
高危文件识别的常用算法:原理、应用与企业场景 高危文件识别旨在检测可能导致安全威胁的文件,如包含恶意代码、敏感数据或欺诈内容的文档,在企业协同办公环境中(如Teams、Google Workspace)尤为重要。结合大模型技术&…...

从零实现STL哈希容器:unordered_map/unordered_set封装详解
本篇文章是对C学习的STL哈希容器自主实现部分的学习分享 希望也能为你带来些帮助~ 那咱们废话不多说,直接开始吧! 一、源码结构分析 1. SGISTL30实现剖析 // hash_set核心结构 template <class Value, class HashFcn, ...> class hash_set {ty…...

成都鼎讯硬核科技!雷达目标与干扰模拟器,以卓越性能制胜电磁频谱战
在现代战争中,电磁频谱已成为继陆、海、空、天之后的 “第五维战场”,雷达作为电磁频谱领域的关键装备,其干扰与抗干扰能力的较量,直接影响着战争的胜负走向。由成都鼎讯科技匠心打造的雷达目标与干扰模拟器,凭借数字射…...

【从零学习JVM|第三篇】类的生命周期(高频面试题)
前言: 在Java编程中,类的生命周期是指类从被加载到内存中开始,到被卸载出内存为止的整个过程。了解类的生命周期对于理解Java程序的运行机制以及性能优化非常重要。本文会深入探寻类的生命周期,让读者对此有深刻印象。 目录 …...
Python+ZeroMQ实战:智能车辆状态监控与模拟模式自动切换
目录 关键点 技术实现1 技术实现2 摘要: 本文将介绍如何利用Python和ZeroMQ消息队列构建一个智能车辆状态监控系统。系统能够根据时间策略自动切换驾驶模式(自动驾驶、人工驾驶、远程驾驶、主动安全),并通过实时消息推送更新车…...

Golang——9、反射和文件操作
反射和文件操作 1、反射1.1、reflect.TypeOf()获取任意值的类型对象1.2、reflect.ValueOf()1.3、结构体反射 2、文件操作2.1、os.Open()打开文件2.2、方式一:使用Read()读取文件2.3、方式二:bufio读取文件2.4、方式三:os.ReadFile读取2.5、写…...

【从零开始学习JVM | 第四篇】类加载器和双亲委派机制(高频面试题)
前言: 双亲委派机制对于面试这块来说非常重要,在实际开发中也是经常遇见需要打破双亲委派的需求,今天我们一起来探索一下什么是双亲委派机制,在此之前我们先介绍一下类的加载器。 目录 编辑 前言: 类加载器 1. …...