在多个 VLAN 之间配置路由时,可能会出现几种常见的交换机配置错误。

用传统的路由器模型执行 VLAN 间路由时,请确保连接路由器接口的交换机端口配置有正确的 VLAN。 如果交换机端口未配置正确的 VLAN,那么在该 VLAN 上配置的设备将无法连接到路由器接口;因此,这些设备无法将数据发送到其他 VLAN。

如图 1 拓扑中所分配的 IP 地址所示,已将 PC1 和路由器 R1 接口 G0/0 配置到相同的逻辑子网。 但连接路由器 R1 接口 G0/0 的交换机端口 F0/4 尚未配置,而是保留了默认的 VLAN。 由于路由器 R1 与 PC1 处于不同的 VLAN,因此无法通信。

要解决该问题,需在交换机 S1 的端口 F0/4 上执行 switchport access vlan 10 接口配置模式命令。 交换机端口使用正确的 VLAN 配置后,PC1 可与路由器 R1 的接口 G0/0 通信,从而能够访问与 R1 相连的其他 VLAN。

图 2 拓扑显示的是单臂路由器的路由模式。 但交换机 S1 上的接口 F0/5 未配置为 TRUNK,而是保留了端口默认的 VLAN。 结果,由于所配置的每个子接口不能发送或接收 VLAN 标记流量,因此路由器不能在 VLAN 间路由。

要解决该问题,可在交换机 S1 的端口 F0/5 上执行 switchport mode trunk 接口配置模式命令。 将接口转换成 TRUNK 端口,使路由器 R1 和交换机 S1 之间可以建立 TRUNK。 TRUNK 建立后,连接到每个 VLAN 上的设备就可与各自 VLAN 所分配的子接口通信,从而实现 VLAN 间路由。

图 3 拓扑显示交换机 S1 和 S2 之间的 TRUNK 链路处于关闭状态。 由于设备间无冗余连接或冗余路径,因此与交换机 S2 相连的所有设备均无法到达路由器 R1。 所以,与交换机 S2 相连的所有设备均无法通过路由器 R1 实现到其他 VLAN 的路由。

为降低因交换机间连接失败而中断 VLAN 间路由的风险,应该在网络设计中考虑冗余链路和备用路径。