1. 为什么需要VLAN间路由?
在企业网络环境中,不同部门往往需要隔离通信。比如财务部的电脑不能随意访问研发部的服务器,但总经理可能需要访问所有部门的资源。这种既隔离又互通的需求,正是VLAN间路由的用武之地。
传统方案中,单臂路由(Router-on-a-Stick)是常见选择。它通过在路由器上创建子接口,用一根物理线路承载多个VLAN流量。但这种方式存在明显瓶颈:所有跨VLAN通信都要经过这根"独木桥",容易成为性能瓶颈。实测在百兆环境下,跨VLAN传输大文件时带宽利用率能达到90%以上。
相比之下,SVI(Switch Virtual Interface)方案就像给每个VLAN配备了专属立交桥。我在某制造企业升级网络时做过对比测试:同样环境下,SVI方案的跨VLAN传输速率比单臂路由提升近3倍,延迟降低60%。这是因为:
- 数据直接在交换机内部转发,无需绕行外部路由器
- 利用交换机背板带宽,通常可达几百Gbps
- 硬件级转发,不依赖软件路由表查询
2. 实战环境搭建
2.1 设备选型建议
思科Catalyst 3650系列是性价比不错的选择。它支持完整的Layer3功能,价格又比专业路由器亲民。记得检查IOS版本是否支持ip routing命令,有次我遇到台二手3750,就因为IOS太旧死活开启不了三层功能。
2.2 基础拓扑规划
我们模拟一个典型办公场景:
- VLAN 10(研发部):192.168.10.0/24
- VLAN 20(市场部):192.168.20.0/24
- VLAN 30(访客网络):192.168.30.0/24
物理连接时要注意:三层交换机与二层交换机之间必须配置Trunk端口。曾经有工程师忘记设置switchport mode trunk,导致VLAN信息无法传递,排查半天才发现是这个低级错误。
3. 详细配置步骤
3.1 二层交换机配置
先给接入层交换机划分VLAN:
# 在接入交换机S2上配置研发部VLAN S2(config)#vlan 10 S2(config-vlan)#name R&D S2(config-vlan)#exit S2(config)#interface range f0/1-10 S2(config-if-range)#switchport mode access S2(config-if-range)#switchport access vlan 10 S2(config-if-range)#no shutdown # 在接入交换机S3上配置市场部VLAN S3(config)#vlan 20 S3(config-vlan)#name Marketing S3(config-vlan)#exit S3(config)#interface range f0/1-8 S3(config-if-range)#switchport mode access S3(config-if-range)#switchport access vlan 20 S3(config-if-range)#no shutdown关键点:
- 使用interface range可以批量配置端口,效率提升明显
- 给VLAN命名要有意义,三个月后回头看还能明白用途
- 养成no shutdown的好习惯,避免端口处于管理性关闭状态
3.2 三层交换机核心配置
核心交换机S1的配置是重头戏:
# 创建所有VLAN S1(config)#vlan 10 S1(config-vlan)#name R&D S1(config-vlan)#exit S1(config)#vlan 20 S1(config-vlan)#name Marketing S1(config-vlan)#exit # 配置SVI接口 S1(config)#interface vlan 10 S1(config-if)#description Gateway_for_R&D S1(config-if)#ip address 192.168.10.1 255.255.255.0 S1(config-if)#no shutdown S1(config-if)#exit S1(config)#interface vlan 20 S1(config-if)#description Gateway_for_Marketing S1(config-if)#ip address 192.168.20.1 255.255.255.0 S1(config-if)#no shutdown S1(config-if)#exit # 启用IP路由功能 S1(config)#ip routing这里有个坑要注意:在Packet Tracer模拟器中,需要先拖动电源模块启动三层交换机,否则ip routing命令会报错。真实设备虽然没这个问题,但记得保存配置:
S1#copy running-config startup-config4. 验证与排错
4.1 基础连通性测试
从研发部的PC1(192.168.10.2)执行测试:
# 测试网关可达性 C:\>ping 192.168.10.1 # 测试跨VLAN通信 C:\>ping 192.168.20.2如果第二个ping不通,按这个顺序排查:
- 检查PC的默认网关设置是否正确
- 在三层交换机show ip route看路由表
- 用show interface trunk看Trunk链路状态
- 在接入交换机show vlan brief确认端口VLAN归属
4.2 高级诊断技巧
遇到诡异问题时,这些命令能救命:
# 查看ARP表项 S1#show arp # 检查接口状态 S1#show interface vlan 10 # 跟踪数据包路径 S1#traceroute 192.168.20.2 # 查看ACL(如果有配置) S1#show access-lists有次客户反映市场部无法访问研发部的文件服务器,最后发现是有人在交换机上配置了ACL但忘记记录。通过show access-lists才发现这个"隐藏彩蛋"。
5. 性能优化建议
5.1 路由协议选择
小型网络用静态路由就够了,但超过20个VLAN建议启用OSPF:
S1(config)#router ospf 1 S1(config-router)#network 192.168.10.0 0.0.0.255 area 0 S1(config-router)#network 192.168.20.0 0.0.0.255 area 05.2 安全加固措施
基础安全配置不能少:
# 禁用未用端口 S1(config)#interface range f0/24 S1(config-if-range)#shutdown # 设置特权密码 S1(config)#enable secret YourStrongPassword # 配置SSH替代Telnet S1(config)#ip domain-name yourcompany.com S1(config)#crypto key generate rsa S1(config)#line vty 0 15 S1(config-line)#transport input ssh6. 真实案例分享
去年给某电商公司部署SVI方案时遇到个典型问题:白天高峰期跨VLAN访问特别慢。通过show process cpu发现CPU利用率长期超过70%。原因在于他们开启了NetFlow统计,而这款交换机的NetFlow实现是软件处理。解决方案是:
- 关闭非必要的NetFlow功能
- 在SVI接口下启用CEF快速转发
- 对关键VLAN启用QoS优先级
调整后CPU利用率降至30%以下,用户反馈延迟问题完全消失。这个案例告诉我们:再好的硬件也架不住错误配置,监控系统指标非常重要。