14 KiB
14 KiB
企业网络架构设计综合实验方案
一、 实验目标
本项目旨在模拟一个中型企业的总部网络架构。通过本次实验,你将能够:
- 规划与设计网络: 学习从需求分析到设计拓扑、规划IP和VLAN的完整流程。
- 掌握高可用性技术:
- 使用 iStack(堆叠) 技术将两台核心交换机虚拟化为一台,实现设备级冗余。
- 使用 Eth-Trunk(链路聚合) 提高关键链路的带宽和可靠性。
- 使用 VRRP(虚拟路由冗余协议) 实现出口网关的冗余备份。
- 配置防火墙 双机热备(HRP),确保安全策略的持续性。
- 掌握网络安全技术:
- 利用 VLAN 划分不同安全域(如员工区、服务器区)。
- 采用 防火墙旁挂 方案,通过安全区域和策略控制不同区域间的流量。
- 配置 端口安全,防止非法设备接入。
- 掌握网络服务配置:
- 配置 DHCP 服务器为内部员工自动分配IP地址。
- 配置 NAT 地址转换,使内网用户能访问互联网。
- 掌握高级路由技术:
- 在核心交换机上配置 VPN实例(VPN-Instance),实现逻辑隔离。
- 配置 OSPF 动态路由协议和 静态路由,实现全网互通。
二、 网络拓扑与规划
1. 逻辑拓扑图
我们将采用经典的三层架构:接入层 -> 核心层 -> 出口层,并旁挂安全设备(防火墙)。
- 核心层: 两台华为交换机 (S1, S2) 组成堆叠系统,作为网络核心 CORE。
- 接入层:
- 一台交换机 (S3) 连接员工区 (VLAN 10)。
- 一台交换机 (S4) 连接服务器区/DMZ (VLAN 20)。
- 出口层: 两台华为路由器 (R1, R2) 作为主备出口网关,通过 VRRP 提供单一虚拟网关。
- 安全层: 两台华为防火墙 (FW1, FW2) 以双机热备模式旁挂在核心交换机上。
- 模拟互联网: 使用第三台路由器 (R3) 模拟外部互联网。
- 主机:
- PC1, PC2: 员工区主机。
- PC3: 服务器区,部署Web服务。
- PC4: 外网主机,用于测试访问。
- PC5: 管理主机,用于连接设备Console口进行配置。
2. 设备连接表
| 设备名称 | 本地接口 | 连接设备 | 对方接口 | 备注 |
|---|---|---|---|---|
| S1 (CORE) | GigabitEthernet0/0/1 | S2 | GigabitEthernet0/0/1 | 堆叠链路1 |
| GigabitEthernet0/0/2 | S2 | GigabitEthernet0/0/2 | 堆叠链路2 | |
| GigabitEthernet0/0/3 | R1 | GigabitEthernet0/0/1 | Eth-Trunk 1 | |
| GigabitEthernet0/0/4 | R2 | GigabitEthernet0/0/1 | Eth-Trunk 2 | |
| GigabitEthernet0/0/5 | FW1 | GigabitEthernet0/0/1 | Eth-Trunk 3 (Untrust) | |
| GigabitEthernet0/0/6 | FW1 | GigabitEthernet0/0/2 | Eth-Trunk 4 (Trust) | |
| GigabitEthernet0/0/7 | S3 | GigabitEthernet0/0/24 | 连接员工区交换机 | |
| GigabitEthernet0/0/8 | S4 | GigabitEthernet0/0/24 | 连接服务器区交换机 | |
| S2 (CORE) | GigabitEthernet1/0/3 | R1 | GigabitEthernet0/0/2 | Eth-Trunk 1 |
| GigabitEthernet1/0/4 | R2 | GigabitEthernet0/0/2 | Eth-Trunk 2 | |
| GigabitEthernet1/0/5 | FW2 | GigabitEthernet0/0/1 | Eth-Trunk 5 (Untrust) | |
| GigabitEthernet1/0/6 | FW2 | GigabitEthernet0/0/2 | Eth-Trunk 6 (Trust) | |
| FW1 | GigabitEthernet0/0/3 | FW2 | GigabitEthernet0/0/3 | 心跳线 (HRP) |
| R1 | GigabitEthernet0/0/0 | R3 | GigabitEthernet0/0/0 | 连接模拟Internet |
| R2 | GigabitEthernet0/0/0 | R3 | GigabitEthernet0/0/1 | 连接模拟Internet |
| S3 | GigabitEthernet0/0/1 | PC1 | - | 员工主机 |
| GigabitEthernet0/0/2 | PC2 | - | 员工主机 | |
| S4 | GigabitEthernet0/0/1 | PC3 | - | Web服务器 |
3. IP地址与VLAN规划
| 用途 | VLAN ID | 网段 | 网关 | 备注 |
|---|---|---|---|---|
| 员工区 | 10 | 192.168.10.0/24 |
192.168.10.254 (Vlanif10) |
DHCP分配 |
| 服务器区 | 20 | 192.168.20.0/24 |
192.168.20.254 (Vlanif20) |
|
| CORE -> Routers | 100 | 10.1.100.0/24 |
10.1.100.254 (Vlanif100) |
CORE-R1: .1, CORE-R2: .2, VRRP: .253 |
| CORE -> FWs (外) | 200 | 10.1.200.0/24 |
10.1.200.254 (Vlanif200) |
CORE-FW1: .1, CORE-FW2: .2, VRRP: .253 |
| CORE -> FWs (内) | 300 | 10.1.300.0/24 |
10.1.300.254 (Vlanif300) |
CORE-FW1: .1, CORE-FW2: .2, VRRP: .253 |
| FWs 心跳 | - | 1.1.1.0/30 |
- | FW1: .1, FW2: .2 |
| Internet 模拟 | - | 202.100.10.0/24 |
- | R1-R3: 10.0, R2-R3: 20.0 |
三、 详细实验步骤与指令
准备工作: 使用 reset saved-configuration 和 reboot 命令清空所有设备配置,并通过Console线连接PC5进行初始配置。
步骤一:配置核心层 (S1, S2 -> CORE)
1. 组建堆叠系统
- 在 S1 上配置:
<HUAWEI> system-view [HUAWEI] sysname S1 [S1] interface stack-port 0/1 [S1-stack-port0/1] port interface GigabitEthernet 0/0/1 enable [S1-stack-port0/1] port interface GigabitEthernet 0/0/2 enable [S1-stack-port0/1] quit [S1] stack slot 0 priority 200 [S1] save - 在 S2 上配置:
<HUAWEI> system-view [HUAWEI] sysname S2 [S2] interface stack-port 0/1 [S2-stack-port0/1] port interface GigabitEthernet 0/0/1 enable [S2-stack-port0/1] port interface GigabitEthernet 0/0/2 enable [S2-stack-port0/1] quit [S2] stack slot 0 renumber 1 Warning: The device will reboot. Continue? [Y/N]: y - 操作: S2 重启后,将 S1 和 S2 断电。先启动 S1,等待约1-2分钟,再启动 S2。启动完成后,通过 S1 的 Console 口登录,设备名称应变为
HUAWEI。<HUAWEI> system-view [HUAWEI] sysname CORE [CORE] display stack # 确认 S1(slot 0) 为 Master,S2(slot 1) 为 Standby
2. 配置链路聚合 (Eth-Trunk)
[CORE] interface Eth-Trunk 1
[CORE-Eth-Trunk1] mode lacp-static
[CORE-Eth-Trunk1] trunkport GigabitEthernet 0/0/3
[CORE-Eth-Trunk1] trunkport GigabitEthernet 1/0/3
[CORE-Eth-Trunk1] quit
# 重复为 Eth-Trunk 2, 3, 4, 5, 6 创建,并加入对应端口
3. 创建 VLAN 和 VLANIF 接口
[CORE] vlan batch 10 20 100 200 300
[CORE] interface Vlanif10
[CORE-Vlanif10] ip address 192.168.10.254 24
[CORE-Vlanif10] quit
# 为 Vlanif20, 100, 200, 300 配置对应的IP地址
4. 配置接口模式 (Trunk)
# 配置连接路由器的链路
[CORE] interface Eth-Trunk 1
[CORE-Eth-Trunk1] port link-type trunk
[CORE-Eth-Trunk1] port trunk allow-pass vlan 100
[CORE-Eth-Trunk1] quit
# 对 Eth-Trunk 2, 3, 4, 5, 6 及连接接入层交换机的 G0/0/7, G0/0/8 配置相应的Trunk和VLAN
# 例如,连接 S3 的 G0/0/7
[CORE] interface GigabitEthernet 0/0/7
[CORE-GigabitEthernet0/0/7] port link-type trunk
[CORE-GigabitEthernet0/0/7] port trunk allow-pass vlan 10
[CORE-GigabitEthernet0/0/7] quit
步骤二:配置接入层 (S3, S4)
- 在 S3 (员工区) 上配置:
[S3] vlan 10 [S3] interface GigabitEthernet 0/0/1 [S3-GigabitEthernet0/0/1] port link-type access [S3-GigabitEthernet0/0/1] port default vlan 10 [S3-GigabitEthernet0/0/1] quit # 对 G0/0/2 重复配置 [S3] interface GigabitEthernet 0/0/24 [S3-GigabitEthernet0/0/24] port link-type trunk [S3-GigabitEthernet0/0/24] port trunk allow-pass vlan 10 [S3-GigabitEthernet0/0/24] quit - 在 S4 (服务器区) 上做类似配置,使用 VLAN 20。
步骤三:配置出口网关 (R1, R2)
- 在 R1 上配置:
[R1] interface Eth-Trunk 1 [R1-Eth-Trunk1] mode lacp-static [R1-Eth-Trunk1] trunkport GigabitEthernet 0/0/1 [R1-Eth-Trunk1] trunkport GigabitEthernet 0/0/2 [R1-Eth-Trunk1] quit [R1] interface Eth-Trunk 1.100 // 创建子接口 [R1-Eth-Trunk1.100] dot1q termination vid 100 [R1-Eth-Trunk1.100] ip address 10.1.100.1 24 [R1-Eth-Trunk1.100] vrrp vrid 1 virtual-ip 10.1.100.253 [R1-Eth-Trunk1.100] vrrp vrid 1 priority 120 // R1 作为 Master [R1-Eth-Trunk1.100] quit # 配置连接外网的接口 [R1] interface GigabitEthernet 0/0/0 [R1-GigabitEthernet0/0/0] ip address 202.100.10.1 24 [R1-GigabitEthernet0/0/0] quit - 在 R2 上做类似配置,IP为
10.1.100.2,VRRP 优先级为默认(100)。
步骤四:配置防火墙 (FW1, FW2)
- 在 FW1 上配置:
# 1. 配置接口和IP [FW1] interface Eth-Trunk 3 [FW1-Eth-Trunk3] mode lacp-static [FW1-Eth-Trunk3] ip address 10.1.200.1 24 ... // 添加成员接口 [FW1] interface Eth-Trunk 4 [FW1-Eth-Trunk4] mode lacp-static [FW1-Eth-Trunk4] ip address 10.1.300.1 24 ... // 添加成员接口 [FW1] interface GigabitEthernet 0/0/3 [FW1-GigabitEthernet0/0/3] ip address 1.1.1.1 30 # 2. 划分安全区域 [FW1] firewall zone untrust [FW1-zone-untrust] add interface Eth-Trunk 3 [FW1] firewall zone trust [FW1-zone-trust] add interface Eth-Trunk 4 [FW1] firewall zone dmz [FW1-zone-dmz] add interface GigabitEthernet 0/0/3 # 3. 配置双机热备 (HRP) [FW1] hrp interface GigabitEthernet 0/0/3 remote 1.1.1.2 [FW1] hrp enable - 在 FW2 上做类似配置,IP地址和 HRP remote 地址相应更改。配置完成后,按 先主后备 顺序重启防火墙。
步骤五:配置路由实现全网互通
这是最关键的一步,参考了学长报告中的 "旁挂防火墙" 路由设计。
- 在 CORE 上配置 VPN 实例和路由:
# 1. 创建VPN实例 [CORE] ip vpn-instance Public [CORE-vpn-instance-Public] route-distinguisher 100:1 [CORE] ip vpn-instance Private [CORE-vpn-instance-Private] route-distinguisher 200:1 # 2. 将接口绑定到VPN实例 [CORE] interface Vlanif100 [CORE-Vlanif100] ip binding vpn-instance Public [CORE-Vlanif100] ip address 10.1.100.254 24 // 重新配置IP [CORE] interface Vlanif200 [CORE-Vlanif200] ip binding vpn-instance Public [CORE-Vlanif200] ip address 10.1.200.254 24 # 将 Vlanif10, 20, 300 绑定到 Private 实例并重配IP # 3. 配置路由 # Private实例的流量默认全部扔给防火墙内口 [CORE] ip route-static vpn-instance Private 0.0.0.0 0.0.0.0 10.1.300.253 # Public实例去往内网的流量,下一跳是防火墙外口 [CORE] ip route-static vpn-instance Public 192.168.10.0 24 10.1.200.253 [CORE] ip route-static vpn-instance Public 192.168.20.0 24 10.1.200.253 - 在 CORE, R1, R2 上配置 OSPF:
# CORE上 [CORE] ospf 100 vpn-instance Public [CORE-ospf-100] area 0 [CORE-ospf-100-area-0.0.0.0] network 10.1.100.0 0.0.0.255 # R1上 [R1] ospf 1 [R1-ospf-1] area 0 [R1-ospf-1-area-0.0.0.0] network 10.1.100.0 0.0.0.255 [R1-ospf-1-area-0.0.0.0] network 202.100.10.0 0.0.0.255 - 在 FW1 上配置静态路由 (FW2会自动同步):
# 上行流量(去往外网) [FW1] ip route-static 0.0.0.0 0 10.1.200.254 # 下行流量(回到内网) [FW1] ip route-static 192.168.10.0 24 10.1.300.254 [FW1] ip route-static 192.168.20.0 24 10.1.300.254
步骤六:配置网络服务
- 在 CORE 上配置 DHCP:
[CORE] dhcp enable [CORE] interface Vlanif10 [CORE-Vlanif10] dhcp select interface [CORE-Vlanif10] dhcp server dns-list 192.168.20.10 // 假设DNS服务器是PC3 - 在 R1 和 R2 上配置 NAT:
在 R2 上做类似配置。
# R1上 [R1] acl 2000 [R1-acl-basic-2000] rule permit source 192.168.10.0 0.0.0.255 [R1] interface GigabitEthernet 0/0/0 [R1-GigabitEthernet0/0/0] nat outbound 2000 # 为Web服务器做静态NAT [R1-GigabitEthernet0/0/0] nat static protocol tcp global 202.100.10.100 80 inside 192.168.20.10 80
步骤七:配置安全策略
-
在 FW1 的Web管理界面或命令行配置 (FW2会自动同步):
- Trust -> Untrust: 允许员工区访问外网。
[FW1] security-policy [FW1-security-policy] rule name staff_to_internet [FW1-security-policy-rule-staff_to_internet] source-zone trust [FW1-security-policy-rule-staff_to_internet] destination-zone untrust [FW1-security-policy-rule-staff_to_internet] source-address 192.168.10.0 24 [FW1-security-policy-rule-staff_to_internet] action permit - Untrust -> Trust: 允许外网访问Web服务器。
[FW1-security-policy] rule name internet_to_web [FW1-security-policy-rule-internet_to_web] source-zone untrust [FW1-security-policy-rule-internet_to_web] destination-zone trust [FW1-security-policy-rule-internet_to_web] destination-address 192.168.20.10 32 [FW1-security-policy-rule-internet_to_web] service protocol tcp destination-port 80 [FW1-security-policy-rule-internet_to_web] action permit - 默认策略:
anytoany的流量是deny的。
- Trust -> Untrust: 允许员工区访问外网。
-
在 S3 上配置端口安全:
[S3] interface GigabitEthernet 0/0/2 [S3-GigabitEthernet0/0/2] port-security enable [S3-GigabitEthernet0/0/2] port-security max-mac-num 1 [S3-GigabitEthernet0/0/2] port-security mac-address sticky
四、 实验验证
完成所有配置后,进行以下验证:
- DHCP 验证: 将 PC1 设置为自动获取 IP,检查是否能获取到
192.168.10.0/24网段的地址。 - 内网连通性: PC1
pingPC2, PC1pingPC3 (Web服务器)。 - NAT 验证: PC1
ping外网主机 PC4 的地址,应该能通。 - Web 服务访问:
- 内网 PC1 打开浏览器访问
http://192.168.20.10。 - 外网 PC4 打开浏览器访问
http://202.100.10.100(R1的NAT地址)。
- 内网 PC1 打开浏览器访问
- VRRP 故障切换: 在 PC1 上长
ping外网地址,然后shutdownR1 的Eth-Trunk1.100接口,观察ping是否中断(应该只会丢1-2个包)。 - 防火墙 HA 切换:
display hrp state查看主备状态。关闭 FW1 电源,再次查看,FW2 应切换为 Active。 - 端口安全验证: 将 PC2 的网线拔下,接到 G0/0/2 端口,PC2 应该无法通信。