实现Vlan间路由
1.单臂路由
路由接口的一个子接口代表一个vlan的网关。
过程:(1) PC1 ping PC2 源目IP : 10.1.10.5 10.1.20.5 PC1和PC2的ip
源目MAC : PC1的MAC,和网关的MAC(通过ARP获取的网关的MAC地址,因为从ip来看,能得知PC2在其他网段,所以要求助网关来找PC2) ####网关,默认路由最先要确认是否存在,PC有没有配置
(2)交换机查MAC表,形成MAC表。(有流量之后,才能学到MAC表)同Vlan的转发。因为目标MAC是网关,网关在路由器上,所以源目MAC不变。(二层设备只能看到Vlan和MAC,识别不了具体是什么东西)
(3)路由器接收数据包,首先也看二层的东西,看到了目标MAC是自己,这个时候才解封装,看三层的目的IP(如果MAC不是自己,那也就是一个二层的设备,按照MAC表转发)。这个时候就能查到一条路由,在路由表中(如果查不到,就丢弃)。但是,路由器也不能看到这是一个ping包。
(4)源目标MAC改变。源改为网关的MAC,目标的改为PC2的。源目标IP不变。打上其他的Vlan标签。
(5)返回交换机,交换机查vlan表,发现有可以转发,就剥离标签,发给PC2.
(6)PC2看数据包,先看源MAC是自己,然后拆包,发现目标IP也是自己,继续拆包。发现是一个询问命令,然后就回复一条。
缺点:因为单臂路由存在于一个端口上,当端口故障,或者当正常的情况下,也会拥挤,就只有一条链路 ####综上,当数据包里,目标MAC是自己的时候,查IP表,不是自己的时候查MAC表。
2.不划分子接口,直接用物理口划分不同vlan
3.三层交换机,SVI口,就是Vlan的三层口(如:可以在Vlan10上配网关,所以下面所有Vlan10的网关都是这个)
no switchport 三层交换机上面,让接口转换为三层接口。那么三层接口和路由器的接口有什么区别?
其实三层接口本质上也还是一个SVI,上面其实没法实现路由器的很多高级功能和特性。(毕竟路由器贵......)