基于Cisco Packet Tracer的校园网仿真实验
校园网仿真
-
需求分析
-
范围
这里的范围指的就是校园网包含几个区域。
大学校园确实是一个比较复杂的网络,但是毕竟这里只是一个小的仿真的校园网,也没有必要做太复杂,这里我就设置了服务器群、学生宿舍、行政楼、教学楼、图书馆这五个区域,足以理解校园网的构造了。 -
功能
- 学校学生人数很多,IP地址又不足,所以肯定会有DHCP服务器动态分配IP地址。
- 每个学校都有自己的官网,所以必然需要www服务器。
- 搭建教育邮箱,使用Email服务器。
- ftp服务器有时也是需要的。
- DNS服务器提供域名转换服务。
- 局域网的主机需要和外部网络进行通信,使用NAT转换协议。
-
-
总体设计
-
拓扑结构
计算机网络的最主要的拓扑结构有总线型拓扑、环形拓扑、树形拓扑、星形拓扑、混合型拓扑以及网状拓扑。其中环形拓扑、星形拓扑、总线型拓扑是三个最基本的拓扑结构。在局域网中,使用最多的是星形结构。我这里使用的拓扑结构也是星型拓扑结构。更多有关拓扑结构的介绍请点击拓扑结构。
大概就是这个样子:
-
使用三层交换机,在这个版本的cisco模拟中
-
汇聚层
使用普通的交换机就好
-
接入层
-
详细设计
先放一张总图:
我会逐步添加设备,同时附上代码。
-
配置Vlan
vlan的全称是 virtual local area network,即虚拟局域网。它可以使一组设备和用户之间相互通信,好像它们是在同一个网段中一样。
IEEE于1999年颁布了用于标准化VLAN实现方案的802.1Q协议标准草案。VLAN技术的出现,使得管理员根据实际应用需求,把同一物理局域网内的不同用户逻辑地划分成不同的广播域,每一个VLAN都包含一组有着相同需求的计算机工作站,与物理上形成的LAN有着相同的属性。由于它是从逻辑上划分,而不是从物理上划分,所以同一个VLAN内的各个工作站没有限制在同一个物理范围中,即这些工作站可以在不同物理LAN网段。由VLAN的特点可知,一个VLAN内部的广播和单播流量都不会转发到其他VLAN中,从而有助于控制流量、减少设备投资、简化网络管理、提高网络的安全性。
我在这里设置了5个vlan,分别是服务器群、学生宿舍局域网(简称学生宿舍)、教学楼、行政楼、图书馆。它们的vlan网段分布如下表所示:
vlan名称 | 对应区域 | 网段 | 掩码 |
---|---|---|---|
vlan2 | 服务器群 | 192.168.0.1 | 255.255.255.0 |
vlan3 | 学生宿舍 | 192.168.8.1 | 255.255.248.0 |
vlan4 | 行政楼 | 192.168.1.1 | 255.255.255.0 |
vlan5 | 教学楼 | 192.168.2.1 | 255.255.255.0 |
vlan6 | 图书馆 | 192.168.3.1 | 255.255.255.0 |
S3560
Switch>en
Switch#conf t
Switch(config)#hostname S3560
S3560(config)#vtp domain xiaoyuan
S3560(config)#vtp mode server
SW1
Switch>en
Switch#conf t
Switch(config)#hostname SW1
SW1(config)#vtp domain xiaoyuan
SW1(config)#vtp mode client
SW2、SW5、SW6、SW7也要同样配置
说明:VTP(Vlan Trunk Protocol) 即VLAN中继协议。VTP通过网络(ISL 帧 或cisco 私有DTP帧) 保持VLAN配置统一性。VTP在系统级管理增加,删除,调整的VLAN,自动地将信息向网络中其它的交换机广播。此外, VTP减小了那些可能导致安全问题的配置。便于管理, 只要在vtp server 做相应设置,vtp client 会自动学习vtp server 上的vlan 信息。
- 配置中继
S3560>en
S3560#conf t
S3560(config)#interface fastEthernet 0/2
S3560(config-if)#switchport trunk encapsulation dot1q
S3560(config-if)#switchport mode trunk
S3560(config-if)#ex
S3560(config)#interface fastEthernet 0/3
S3560(config-if)#switchport trunk encapsulation dot1q
S3560(config-if)#switchport mode trunk
S3560(config-if)#ex
S3560(config)#interface fastEthernet 0/4
S3560(config-if)#switchport trunk encapsulation dot1q
S3560(config-if)#switchport mode trunk
S3560(config-if)#ex
S3560(config)#interface fastEthernet 0/5
S3560(config-if)#switchport trunk encapsulation dot1q
S3560(config-if)#switchport mode trunk
S3560(config-if)#ex
S3560(config)#interface fastEthernet 0/6
S3560(config-if)#switchport trunk encapsulation dot1q
S3560(config-if)#switchport mode trunk
S3560(config-if)#ex
说明:配置中继,使VTP管理域能够覆盖所有的分支交换机。Trunk是一个在交换机之间、交换机与路由器之间传递VLAN信息和VLAN数据流的协议,将交换机之间的相连的端口配置为dot1q封装,就可跨越交换机进行整个网络的VLAN设置。
- 创建vlan及端口划分
S3560(config)#vlan 2 S3560(config-vlan)#name servers S3560(config-vlan)#ex S3560(config)#vlan 3 S3560(config-vlan)#name students S3560(config-vlan)#ex S3560(config)#vlan 4 S3560(config-vlan)#name admins S3560(config-vlan)#ex S3560(config)#vlan 5 S3560(config-vlan)#name teach S3560(config-vlan)#ex S3560(config)#vlan 6 S3560(config-vlan)#name library S3560(config-vlan)#ex S3560(config)#interface vlan 2 S3560(config-if)#ip address 192.168.0.1 255.255.255.0 S3560(config-if)#no shutdown S3560(config-if)#ex S3560(config)#interface vlan 3 S3560(config-if)#ip address 192.168.8.1 255.255.248.0 S3560(config-if)#no shutdown S3560(config-if)#ex S3560(config)#interface vlan 4 S3560(config-if)#ip address 192.168.1.1 255.255.255.0 S3560(config-if)#no shutdown S3560(config-if)#ex S3560(config)#interface vlan 5 S3560(config-if)#ip address 192.168.2.1 255.255.255.0 S3560(config-if)#no shutdown S3560(config-if)#ex S3560(config)#interface vlan 6 S3560(config-if)#ip address 192.168.3.1 255.255.255.0 S3560(config-if)#no shutdown S3560(config-if)#ex
- 配置服务器群交换机
SW1>en
SW1#conf t
SW1(config)#interface fastEthernet 0/2
SW1(config-if)#switchport mode trunk
SW1(config)#interface fastEthernet 0/1
SW1(config-if)#switchport mode access
SW1(config-if)#switchport access vlan 2
SW1(config-if)#ex
SW1(config)#interface range fastEthernet 0/3-6
SW1(config-if-range)#switchport mode access
SW1(config-if-range)#switchport access vlan 2
- 配置学生宿舍交换机
SW2>en
SW2#conf t
SW2(config)#interface fastEthernet 0/3
SW2(config-if)#switchport mode trunk
SW2(config-if)#ex
SW2(config)#interface range fastEthernet 0/1-2
SW2(config-if-range)#switchport mode access
SW2(config-if-range)#switchport access vlan 3
- 配置行政楼交换机
SW5>en
SW5#conf t
SW5(config)#interface fastEthernet 0/4
SW5(config-if)#switchport mode trunk
SW5(config-if)#ex
SW5(config)#interface range fastEthernet 0/1-2
SW5(config-if-range)#switchport mode access
SW5(config-if-range)#switchport access vlan 4
SW5(config-if-range)#ex
- 配置教学楼交换机
SW6>en
SW6#conf t
SW6(config)#interface fastEthernet 0/5
SW6(config-if)#switchport mode trunk
SW6(config-if)#ex
SW6(config)#interface range fastEthernet 0/1-2
SW6(config-if-range)#switchport mode access
SW6(config-if-range)#switchport access vlan 5
SW6(config-if-range)#ex
- 配置图书馆交换机
SW7>en
SW7#conf t
SW7(config)#interface fastEthernet 0/6
SW7(config-if)#switchport mode trunk
SW7(config-if)#ex
SW7(config)#interface range fastEthernet 0/1-2
SW7(config-if-range)#switchport mode access
SW7(config-if-range)#switchport access vlan 6
SW7(config-if-range)#ex
-
配置主机IP地址
-
配置主机IP地址有两种方式:1.静态IP地址(手动设置)2.动态IP(依靠DHCP服务器来实现),由于需要,这两种方式都会用到。
-
手动设置IP
服务器的IP必须是静态的,而且一般来讲,教学楼和行政楼的PC都使用的是静态IP地址,因此,我就配置PC6和PC8为静态IP,其余都设置为动态IP。
找到 Desktop>IP Congiguration 即可配置,如图:
添加这些IP池:
然后在中心交换机上设置指向DHCP服务器:
S3560>en
S3560#conf t
S3560(config)#interface vlan 3
S3560(config-if)#ip helper-address 192.168.0.2
S3560(config-if)#ex
S3560(config)#interface vlan 4
S3560(config-if)#ip helper-address 192.168.0.2
S3560(config-if)#ex
S3560(config)#interface vlan 5
S3560(config-if)#ip helper-address 192.168.0.2
S3560(config-if)#ex
S3560(config)#interface vlan 6
S3560(config-if)#ip helper-address 192.168.0.2
S3560(config-if)#ex
最后,开启中心交换机的路由功能:
S3560(config)#ip routing
测试:
至此,校园网内各个网段之间都可以相互通信了。下面我们开始搭建外网。
搭建外网
先连接线路:
注意:ISP-R和Border-R之间连接线路之前,需要先添加WIC-2T模块。
设置IP地址
第一行:
S3560>en
S3560#conf t
S3560(config)#interface fastEthernet 0/1
S3560(config-if)#no switchport
S3560(config-if)#ip address 192.168.4.2 255.255.255.0
S3560(config-if)#ex
第二行:
Router>en
Router#conf t
Router(config)#hostname Border-R
Border-R(config)#interface fastEthernet 0/0
Border-R(config-if)#ip address 192.168.4.1 255.255.255.0
Border-R(config-if)#no shutdown
Border-R(config-if)#ex
Border-R(config)#interface serial 0/0/0
Border-R(config-if)#ip address 221.1.1.1 255.255.255.0
Border-R(config-if)#no shutdown
Border-R(config-if)#ex
第三行:
Router>en
Router#conf t
Router(config)#hostname ISP-R
ISP-R(config)#interface serial 0/0/0
ISP-R(config-if)#ip address 221.1.1.2 255.255.255.0
ISP-R(config-if)#no shutdown
ISP-R(config-if)#ex
ISP-R(config)#interface fastEthernet 0/0
ISP-R(config-if)#ip address 223.1.1.1 255.255.255.0
ISP-R(config-if)#no shutdown
ISP-R(config-if)#ex
ISP-R(config)#interface fastEthernet 0/1
ISP-R(config-if)#ip address 223.1.2.1 255.255.255.0
ISP-R(config-if)#no shutdown
ISP-R(config-if)#ex
第四行:
打开DNS服务:
打开HTTP服务:
打开Email服务:
-
配置NAT
NAT的实现方式有三种:静态转换Static Nat、动态转换Dynamic Nat、端口多路复用 Overload。我这里使用了三种方式:
Border-R>en
Border-R#conf t
Border-R(config)#ip nat inside source static 192.168.0.4 221.1.1.3
Border-R(config)#ip nat inside source static 192.168.0.5 221.1.1.4
Border-R(config)#ip nat inside source static 192.168.0.6 221.1.1.5
Border-R(config)#ip nat inside source static 192.168.1.2 221.1.1.6
Border-R(config)#ip nat inside source static 192.168.2.3 221.1.1.7
-
动态转换
其中students处使用的是端口复用技术。nat设置
Border-R#conf t
Border-R(config)#ip nat pool students 221.1.1.10 221.1.1.20 netmask 255.255.255.0
Border-R(config)#ip nat pool admins 221.1.1.21 221.1.1.30 netmask 255.255.255.0
Border-R(config)#ip nat pool teach 221.1.1.31 221.1.1.40 netmask 255.255.255.0
Border-R(config)#ip nat pool library 221.1.1.41 221.1.1.50 netmask 255.255.255.0
Border-R(config)#access-list 1 permit 192.168.8.0 0.0.7.255
Border-R(config)#access-list 2 permit 192.168.1.0 0.0.0.255
Border-R(config)#access-list 3 permit 192.168.2.0 0.0.0.255
Border-R(config)#access-list 4 permit 192.168.3.0 0.0.0.255
Border-R(config)#ip nat inside source list 1 pool students overload
Border-R(config)#ip nat inside source list 2 pool admins
Border-R(config)#ip nat inside source list 3 pool teach
Border-R(config)#ip nat inside source list 4 pool library
接下来指定内部端口和外部端口:
Border-R(config)#interface serial 0/0/0
Border-R(config-if)#ip nat outside
Border-R(config-if)#ex
Border-R(config)#interface fastEthernet 0/0
Border-R(config-if)#ip nat inside
配置路由:
Border-R(config)#ip route 192.168.0.0 255.255.0.0 192.168.4.2
Border-R(config)#ip route 223.1.0.0 255.255.0.0 221.1.1.2
S3560>en
S3560#conf t
S3560(config)#ip route 0.0.0.0 0.0.0.0 192.168.4.1
简单测试一下,用PC9 ping一下PC12:
-
HTTP服务器
开启服务即可。
在PC上的Web Browserh输入网址:
其他配置自己探索配置。
尊重原创,本文借鉴于 https://blog.csdn.net/Blazar1/article/details/84575709
零星的变得优秀,也能拼凑出星河。
欢迎任何形式的转载,但请务必注明出处。
限于本人水平,如果文章和代码有表述不当之处,还请不吝赐教。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?