前言
从前面讲的VLAN可以知道,VLAN的作用是出于各种原因对一个第 2 层交换网络进行分隔。不管什么原因,一个VLAN的主机都无法与另一个VLAN的主机通信,除非有路由器和三层交换机来提供路由。
VLAN间路由是把流量从一个VLAN转发到另一个VLAN的过程
VLAN间路由有三种:
- 传统的VLAN间路由
- 单臂路由
- 使用交换虚拟接口(SVI)的第三层交换机
传统VLAN间路由
传统VLAN间路由的方法就是使用路由器的多个物理接口,每个接口都连接不同VLAN的交换机端口,这台路由器的接口充当这个VLAN子网中的默认网关。
- Fa0/1 端口分配给了 VLAN 10,并且连接到 R1 的 G0/0/0 接口。
- Fa0/3 端口分配给了 VLAN 10,并且连接到 PC0。
- Fa0/2 端口分配给了 VLAN 20,并且连接到 R1 的 G0/0/1 接口。
- Fa0/4 端口分配给了 VLAN 20,并且连接到 PC1。
验证
PC0 ping PC1 可以ping通
注:传统VLAN间路由的缺点十分明显,由于路由器的物理接口数量有限,因此无法进行足够的扩展。
单臂路由
单臂路由器 VLAN 间路由方案克服了传统 VLAN 间路由方案的限制,它在一个物理接口上划分出多个子接口,用来识别可路由的VLAN。
配置
拓扑
R1
R1(config)#interface gigabitEthernet 0/0/0 进入g0/0/0接口
R1(config-if)#no shutdown 打开接口
R1(config-if)#exit 退出接口
R1(config)#interface gigabitEthernet 0/0/0.10 进入g0/0/0.10子接口
R1(config-subif)#encapsulation dot1Q 10 封装VLAN10的802.1q干道(Trunk)
R1(config-subif)#ip address 192.168.10.1 255.255.255.0 配置IP地址
R1(config-subif)#exit
R1(config)#interface gigabitEthernet 0/0/0.20 进入g0/0/0.20子接口
R1(config-subif)#
R1(config-subif)#encapsulation dot1Q 20 封装VLAN10的802.1q干道(Trunk)
R1(config-subif)#ip address 192.168.20.1 255.255.255.0 配置IP地址
S1
创建VLAN
S1(config)#vlan 10
S1(config-vlan)#exit
S1(config)#vlan 20
S1(config-vlan)#exit
S1(config)#vlan 99
S1(config-vlan)#exit
连接交换机的接口配置为Trunk模式
S1(config)#interface range f0/1-3 进入接口f0/1,f0/2,f0/3
S1(config-if-range)#switchport mode trunk 配置trunk模式
S1(config-if-range)#switchport trunk native vlan 99 配置本征VLAN99
S2
创建VLAN
S2(config)#vlan 10
S2(config-vlan)#exit
S2(config)#vlan 20
S2(config-vlan)#exit
S2(config)#vlan 99
S2(config-vlan)#exit
连接交换机的接口配置为Trunk模式
S2(config)#interface range f0/1,f0/4
S2(config-if-range)#switchport mode trunk
S2(config-if-range)#switchport trunk native vlan 99
S2(config-if-range)#exit
连接PC的接口划分VLAN,并且设置access模式
S3(config)#interface range f0/2-3 进入f0/2,f0/3
S3(config-if-range)#switchport mode access 配置access模式
S3(config-if-range)#switchport access vlan 10 划分到VLAN10
S3
创建VLAN
S3(config)#vlan 10
S3(config-vlan)#exit
S3(config)#vlan 20
S3(config-vlan)#exit
S3(config)#vlan 99
S3(config-vlan)#exit
连接交换机的接口配置为Trunk模式
S3(config)#interface range f0/1,f0/4
S3(config-if-range)#switchport mode trunk
S3(config-if-range)#switchport trunk native vlan 99
S2(config-if-range)#exit
连接PC的接口划分VLAN,并且设置access模式
S3(config)#interface range f0/2-3
S3(config-if-range)#switchport mode access
S3(config-if-range)#switchport access vlan 20 划分到VLAN20
验证
PC1去ping PC2,PC3,PC4,都可以ping通
注意: 用单臂路由器实现 VLAN 间路由的方法,不能扩展到超过 50 个以上的 VLAN。
第三 层交换机上的VLAN 间路由
当今,执行VLAN间路由的方法是使用第三层交换机和交换虚拟接口(SVI)。
特点
- 比单臂路由数据转发速度快,因为所有操作都是通过硬件进行交换和路由的
- 延迟更低,数据不需要离开交换机就被转发
- 在园区局域网比路由器使用更加普遍,在现代企业网络中大多数使用三层交换机来实现VLAN间路由,很少使用单臂路由。
唯一的缺点就是第三层交换机贵
拓扑
配置
1. 创建VLAN
MSW1(config)#vlan 10
MSW1(config-vlan)#exit
MSW1(config)#vlan 20
MSW1(config-vlan)#exit
2. 创建SVI VLAN接口
MSW1(config)#interface vlan 10 进入VLAN10的虚拟接口
MSW1(config-if)#ip address 192.168.10.1 255.255.255.0 配置IP地址
MSW1(config-if)#no shutdown 打开接口
MSW1(config-if)#exit
MSW1(config)#interface vlan 20 进入VLAN20的虚拟接口
MSW1(config-if)#ip address 192.168.20.1 255.255.255.0 配置IP地址
MSW1(config-if)#no shutdown 打开接口
3. 配置接入端口(连接PC)
MSW1(config)#interface f0/1 进入f0/1
MSW1(config-if)#switchport mode access 配置access模式
MSW1(config-if)#switchport access vlan 10 把接口分配到VLAN10
MSW1(config-if)#exit
MSW1(config)#interface f0/2 进入f0/2
MSW1(config-if)#switchport mode access 配置access模式
MSW1(config-if)#switchport access vlan 20 把接口分配到VLAN20
4. 启用IP路由
这条命令必须配置,这样才能在第 3 层交换机上针对 IPv4 协议启用 VLAN 间路由。
MSW1(config)# ip routing
验证
PC5 ping PC6