1. 项目概述
这个网络实验项目综合运用了单臂路由、RSTP快速生成树、链路聚合、OSPF动态路由和VRRP虚拟路由冗余协议等多种网络技术,构建了一个具备高可用性和负载均衡特性的企业级网络架构。作为一名网络工程师,我在实际工作中经常需要部署类似的解决方案,特别是在金融、医疗等对网络可靠性要求极高的行业场景中。
整个实验环境包含4台交换机(LSW1-LSW4)、3台路由器(R1-R3)和4台终端设备(PC1-PC4)。核心目标是通过合理的协议配置和设备互联,实现以下功能:
- VLAN间通信(单臂路由)
- 二层环路避免(RSTP)
- 链路带宽扩展(链路聚合)
- 动态路由学习(OSPF)
- 网关冗余(VRRP)
- 路径优化(OSPF Cost调整)
2. 基础网络配置
2.1 终端设备IP配置
首先需要为所有PC设备配置IP地址和网关,这是整个网络通信的基础:
bash复制# PC1配置示例(华为模拟器命令)
system-view
interface Ethernet 0/0/1
ip address 192.168.10.2 255.255.255.0
gateway 192.168.10.1
各PC的具体配置参数如下表:
| 设备 | IP地址 | 子网掩码 | 默认网关 |
|---|---|---|---|
| PC1 | 192.168.10.2 | 255.255.255.0 | 192.168.10.1 |
| PC2 | 192.168.20.2 | 255.255.255.0 | 192.168.20.1 |
| PC3 | 192.168.30.2 | 255.255.255.0 | 192.168.30.1 |
| PC4 | 192.168.40.2 | 255.255.255.0 | 192.168.40.1 |
注意:在实际企业网络中,终端设备的IP地址通常通过DHCP自动获取。本实验采用静态配置是为了简化实验流程,便于故障排查。
2.2 VLAN与端口配置
在LSW3上需要创建VLAN并配置各端口类型:
bash复制# LSW3配置示例
vlan batch 10 20 # 创建VLAN10和VLAN20
interface Ethernet0/0/1 # 连接PC1的端口
port link-type access
port default vlan 10
stp edged-port enable # 启用边缘端口特性
interface Ethernet0/0/2 # 连接PC2的端口
port link-type access
port default vlan 20
stp edged-port enable
interface GigabitEthernet0/0/3 # 上联LSW1的端口
port link-type trunk
port trunk allow-pass vlan all
stp bpdu-protection # 启用BPDU保护
关键配置说明:
- 边缘端口(edged-port):直接连接终端设备的端口应配置为边缘端口,可以跳过STP的Listening和Learning状态,直接进入Forwarding状态,加快收敛。
- BPDU保护:在边缘端口启用BPDU保护后,如果收到BPDU报文会立即关闭端口,防止非法交换机接入导致网络拓扑变化。
3. 生成树协议配置
3.1 RSTP基础配置
快速生成树协议(RSTP)是STP的改进版本,收敛速度更快(1-2秒)。在本实验中,我们将LSW1配置为根桥,LSW2为备份根桥:
bash复制# LSW1配置
stp mode rstp # 启用RSTP模式
stp root primary # 设置为根桥
stp bpdu-protection enable
# LSW2配置
stp mode rstp
stp root secondary # 设置为备份根桥
stp bpdu-protection enable
根桥选举的优先级可以通过修改桥ID中的优先级值来实现(默认32768)。数值越小优先级越高,因此将LSW1的优先级设为0可以确保其成为根桥:
bash复制stp priority 0 # 设置优先级为0(最高优先级)
3.2 生成树优化技巧
在实际网络部署中,我总结了以下RSTP优化经验:
-
根桥位置:应该选择位于网络核心、性能最好的交换机作为根桥。本实验中LSW1和LSW2作为核心交换机适合担任根桥角色。
-
路径开销调整:可以通过修改端口开销值来影响生成树拓扑。例如希望某条链路成为备份路径,可以增加其开销值:
bash复制interface GigabitEthernet0/0/1
stp cost 20000 # 默认千兆链路开销是20000,可调整为更大值
- 端口角色:RSTP定义了四种端口角色:
- 根端口(Root Port):到达根桥的最优路径
- 指定端口(Designated Port):每个网段到达根桥的最优端口
- 替代端口(Alternate Port):根端口的备份
- 备份端口(Backup Port):指定端口的备份
4. 链路聚合配置
4.1 手工链路聚合
在LSW1和LSW3之间配置手工链路聚合,提高带宽并提供冗余:
bash复制# LSW1配置
interface Eth-Trunk 0 # 创建聚合组0
port link-type trunk
port trunk allow-pass vlan all
mode manual load-balance # 手工模式
interface GigabitEthernet0/0/1
eth-trunk 0
interface GigabitEthernet0/0/2
eth-trunk 0
# LSW3对应端口也需要加入聚合组
链路聚合的负载均衡算法可以通过以下命令查看和修改:
bash复制display eth-trunk 0 # 查看聚合组信息
load-balance ? # 查看支持的负载均衡模式
4.2 链路聚合最佳实践
根据我的项目经验,链路聚合配置需要注意:
-
成员端口一致性:所有成员端口的速率、双工模式、VLAN配置等必须一致,否则可能导致聚合失败。
-
LACP模式选择:虽然本实验使用手工模式,但在生产环境中建议使用LACP动态模式(mode lacp-static),可以提供更好的故障检测能力。
-
负载均衡算法:默认基于源目MAC地址哈希,在特定场景下可能需要调整为基于IP或端口:
bash复制eth-trunk load-balance src-dst-ip # 基于源目IP哈希
5. 单臂路由配置
5.1 路由器子接口配置
在R1上配置单臂路由实现VLAN间通信:
bash复制# R1配置
interface GigabitEthernet0/0/0.10 # VLAN10子接口
dot1q termination vid 10
ip address 192.168.10.1 255.255.255.0
arp broadcast enable
interface GigabitEthernet0/0/0.20 # VLAN20子接口
dot1q termination vid 20
ip address 192.168.20.1 255.255.255.0
arp broadcast enable
关键参数说明:
dot1q termination vid:指定子接口处理的VLAN IDarp broadcast enable:启用ARP广播,使子接口能响应ARP请求
5.2 单臂路由常见问题
在实施单臂路由时,我遇到过以下典型问题及解决方法:
-
ARP不通:检查是否在子接口上启用了
arp broadcast enable,以及交换机端口是否正确配置为trunk。 -
VLAN不匹配:确保路由器子接口的VLAN ID与交换机端口的PVID或允许通过的VLAN列表一致。
-
性能瓶颈:单臂路由所有VLAN流量都经过同一个物理接口,在大流量场景下可能成为瓶颈。解决方案是:
- 升级路由器接口带宽
- 考虑使用三层交换机替代
- 实施分布式网关(如本实验后续的VRRP方案)
6. OSPF动态路由配置
6.1 OSPF基础配置
在R1、R2、R3和LSW1、LSW2上配置OSPF实现全网互通:
bash复制# R1配置示例
ospf 1 router-id 1.1.1.1
area 0
network 192.168.1.0 0.0.0.255 # 宣告直连网段
network 192.168.10.0 0.0.0.255
network 192.168.20.0 0.0.0.255
# LSW1配置示例(作为三层交换机)
ospf 1 router-id 10.1.1.1
area 0
network 192.168.1.0 0.0.0.255
network 192.168.30.0 0.0.0.255
6.2 OSPF优化技巧
- 路由汇总:在大规模网络中,可以在ABR或ASBR上配置路由汇总减少路由表规模:
bash复制area 1 range 192.168.0.0 255.255.0.0 # 汇总192.168.0.0/16
- Cost调整:通过修改接口cost值可以影响最优路径选择。本实验中通过调整R1-R3路径的cost值实现路径控制:
bash复制interface GigabitEthernet0/0/1
ospf cost 100 # 默认cost基于带宽计算,可手动调大
- 认证配置:生产环境建议启用OSPF认证提高安全性:
bash复制area 0
authentication-mode md5 1 cipher Huawei@123
7. VRRP网关冗余配置
7.1 VRRP基础配置
在LSW1和LSW2上配置VRRP实现网关冗余:
bash复制# LSW1配置(VLAN10)
interface Vlanif10
ip address 192.168.10.3 255.255.255.0
vrrp vrid 10 virtual-ip 192.168.10.1
vrrp vrid 10 priority 120 # 设置较高优先级成为Master
vrrp vrid 10 preempt-mode timer delay 20 # 抢占延迟20秒
# LSW2配置(VLAN10)
interface Vlanif10
ip address 192.168.10.4 255.255.255.0
vrrp vrid 10 virtual-ip 192.168.10.1
vrrp vrid 10 priority 100 # 默认优先级
7.2 VRRP高级特性
- 负载均衡:通过配置多个VRRP组可以实现流量的负载分担。例如:
bash复制# LSW1配置
vrrp vrid 10 virtual-ip 192.168.10.1 # 负责PC1流量
vrrp vrid 20 virtual-ip 192.168.20.1 # 备份组
# LSW2配置
vrrp vrid 10 virtual-ip 192.168.10.1 # 备份组
vrrp vrid 20 virtual-ip 192.168.20.1 # 负责PC2流量
- 监控上行链路:可以配置VRRP跟踪上行接口状态,当上行链路故障时自动降低优先级:
bash复制vrrp vrid 10 track interface GigabitEthernet0/0/1 reduced 30
- 认证配置:建议配置VRRP认证防止非法设备加入:
bash复制vrrp vrid 10 authentication-mode md5 Huawei@123
8. 网络验证与排错
8.1 连通性测试
完成所有配置后,需要进行全面的连通性测试:
bash复制# 在PC1上测试
ping 192.168.20.2 # 测试VLAN间通信
ping 192.168.30.2 # 测试三层互通
tracert 192.168.40.2 # 查看路径
# 查看VRRP状态
display vrrp brief
8.2 常见故障排查
根据我的排错经验,以下是常见问题及解决方法:
-
STP端口阻塞:
- 使用
display stp brief查看端口状态 - 检查根桥位置是否合理
- 确认没有意外的环路
- 使用
-
VRRP主备切换异常:
- 检查优先级配置
- 确认心跳报文可达(检查二层连通性)
- 查看
display vrrp输出中的状态机信息
-
OSPF邻居建立失败:
- 检查
display ospf peer输出 - 确认网络类型匹配(广播/点对点)
- 检查区域ID和认证配置是否一致
- 检查
9. 网络路径优化
通过调整OSPF cost值可以控制数据流的传输路径。本实验中,我们希望PC1访问PC3的流量走R1-R2-R3路径:
bash复制# 在R1上调整G0/0/2接口cost(连接R3)
interface GigabitEthernet0/0/2
ospf cost 100 # 默认基于带宽计算约为1,调大后变为次优路径
# 验证路径
tracert 192.168.30.2
路径控制策略总结:
- 基于带宽:OSPF默认根据接口带宽自动计算cost
- 手动调整:特定场景下可以手动设置cost值
- 策略路由:更复杂的场景可以使用PBR实现基于源/目的IP的路径控制
在实际企业网络中,通常会结合多种技术实现最优路径选择。例如核心层使用OSPF,接入层使用静态路由,配合策略路由实现灵活的流量工程。