一、为什么不同VLAN间不通过路由就无法通信:

  在LAN内的通信,必须在数据帧头中指定通信目标的MAC地址。而为了获取MAC地址,TCP/IP协议下使用的是ARP。ARP解析MAC地址的方法,则是通过广播。也就是说,如果广播报文无法到达,那么就无从解析MAC地址,亦即无法直接通信。
  因此在交换机上划分VLAN后,VLAN间计算机就不能通信了,VLAN间的通信需要借助第三层设备。

二、多臂路由:

  原理:通过access口联通多个子网,使得VLAN1和VLAN2互不干扰,VLAN内直连,VLAN间通过路由器通信。
  缺点:如果需要实现N个VLAN间的通信,则路由器需要N个接口,同时也需要占用交换机上的N个以太网接口,这在实际中并不可行。

vlan间路由故障排除原创实验报告_封装

三、单臂路由:

  原理:通过Trunk端口连接多个子网V,在路由器上创建多个子接口和不同的VLAN连接;
  缺点:路由器同一接口被多个子网共用,可能存在单点故障和拥塞等问题,只适合小型网络。

vlan间路由故障排除原创实验报告_IP_02


  实验:单臂路由实现VLAN间路由
1、路由器子接口配置

配置
branch(config)#Default interface e0/0  //使e0/0接口恢复成默认配置
branch(config)#Int e0/0
branch(config-if)#No shutdown   //开启(切记),但不配IP地址
branch(config)#Int e0/0.10   //划分子接口
branch(config-subif)#Encapsulation dot1Q 10    //封装子接口为VLAN10,用于识别帧所属的VLAN
branch(config-subif)#Ip address 10.1.10.254 255.255.255.0  //配置子接口的IP
branch(config)#Int e0/0.20   //划分子接口
branch(config-subif)#Encapsulation dot1Q 20    //封装子接口为VLAN20,用于识别帧所属的VLAN
branch(config-subif)#Ip address 10.1.20.254 255.255.255.0  //配置子接口的IP    
恢复
branch(config)#default int e0/0    
branch(config)#no int e0/0.10
branch(config)#no int e0/0.20
验证
branch(config)#do show ip int b

2、交换机连接路由器接口

SW1(config)#Default interface e0/0  //使e0/0接口恢复成默认配置
SW1(config-if)#Switchport trunk allowed vlan 10,20  //暂先属于VLAN10与VLAN20,起到保护作用

四、交换机虚拟接口:

vlan间路由故障排除原创实验报告_vlan间路由故障排除原创实验报告_03

1、创建管理Vlan,如果要工作的话,需要满足如下条件:
  0. 交换机开启路由功能 ip routing
  0. 必须有接口access到相应VLAN
  0. 或者是有trunk允许VLAN通过

2、关键配置

SW1(config)#int vlan 10  
SW1(config-if)#no shu 
SW1(config-if)#ip add 10.1.10.254 255.255.255.0 
SW1(config-if)#exit
SW1(config)# do show ip rout
SW1(config)#int vlan 20
SW1(config-if)#no shu 
SW1(config-if)#ip add 10.1.20.100 255.255.255.0 
SW1(config-if)#exit
SW1(config)# do show ip route
SW1(config)#int vlan 30
SW1(config-if)#no shu 
SW1(config-if)#ip add 192.168.1.2 255.255.255.0 
SW1(config-if)#exit
SW1(config)# do show ip rout