三层交换技术可以实现VLAN间通信
三层交换 = 二层交换 + 三层转发
当三层设备接收到一个数据帧,会拆除原数据帧,重新封装新的源MAC地址和目标MAC地址,并且因为帧头部的信息发生变化,最后的帧校验CRC也应当随之改变。
在这个流中的多个数据包,其中只有第一个数据包是由三层交换机的三层引擎来处理的,处理的方式是软件方式,与路由器相同,三层引擎获取了新的2层封装信息后,路由这个数据包。
在第一个数据包转发完成后,在硬件中创建一个MLS条目,用于后续的数据包由硬件执行的重新封装和快速转发。2层数据帧会被重新封装为需要转发的下一个网段的帧格式。
这就是MLS“一次路由,多次交换"的原理。
(第一次不知道目标的MAC地址,通过Arp缓存表来获取信息,VLAN和VLAN间重新封装,重新获取信息)
基于CEF (一种基于拓扑转发的模型)的MLS,其关键是两张转发信息表,转发信息库(FIB)与路由表一一对应,是路由表的一一个镜像。路由表更新时,FIB随之变化,其中FIB包含邻接主机的IP地址与VLANID的对应关系。而邻接关系表包含邻接主机和交换机MAC地址的对应关系用来提供二层重写信息。
基于CEF的MLS转发过程,即发送单播数据包,通过查找FIB和邻接关系表,重新封装数据帧,从相应端口进行转发。
三层交换机具备路由功能,所以两个VLAN之间可以互相访问,每一个VLAN虚接口就是该网段的网关。
#####在三层交换机上配置的VLAN接口为虚接口
[Huawei] interface Vlanif 10
[Huawei-Vlanif10]ip address 192.168.10.1 24
[Huawei-Vlanif10]display ip interface brief ###端口自动激活
工作原理
1、主机A给主机B发送单播数据包
2、交换机查找FIB表 ,找到下一跳地址
3、查找希望一条地址对应的邻接关系的二层封装信息
4、转发
总结
单臂路由三层交换都可以实现VLAN之间的通信
单臂路由工作原理: 路由器重新封装MAC地址,转换为VLANID
三层交换:一次路由,多次交换
一次路由: 数据流的第一数据包由三层引擎来处理,重新封装MAC,再路由转发数据包
多次交换:第一个数据包转发后,会在硬件创建一个MLS条目,MLS包含FIB(转发信息库:包含有VLANID和主机IP)、邻接关系表(邻接主机和MAC地址),通过查询FIB和邻接关系表重新封装数据帧,从相应端口转发数据
三层交换机具有路由功能可以转发数据,IP地址是配置在虚拟接口上而不是物理接口上,物理接口对接交换机的配置trunk,对接 PC机的配置access
SW1
<Huawei>system-view
Enter system view, return user view with Ctrl+Z.
[Huawei]undo info-center en
Info: Information center is disabled.
[Huawei]vlan ba 10 20
[Huawei]int e0/0/1
[Huawei-Ethernet0/0/1]p l a
[Huawei-Ethernet0/0/1]p d v 10
[Huawei-Ethernet0/0/1]un sh
Info: Interface Ethernet0/0/1 is not shutdown.
[Huawei]int e0/0/1
[Huawei-Ethernet0/0/1]p l a
[Huawei-Ethernet0/0/1]p d v 10
Info: Interface Ethernet0/0/1 is not shutdown.
[Huawei-Ethernet0/0/1]int e0/0/2
[Huawei-Ethernet0/0/2]p l a
[Huawei-Ethernet0/0/2]p d v 20
[Huawei-Ethernet0/0/2]un sh
Info: Interface Ethernet0/0/2 is not shutdown.
[Huawei]int e0/0/3
[Huawei-Ethernet0/0/3]p l tr
[Huawei-Ethernet0/0/3]port trunk allow-pass vlan all
R1
[R1]int G0/0/0.10
[R1-GigabitEthernet0/0/0.10]dot1q termination vid 10
[R1-GigabitEthernet0/0/0.10]ip add 192.168.10.1 24
[R1-GigabitEthernet0/0/0.10]un sh
Info: Interface GigabitEthernet0/0/0.10 is not shutdown.
[R1-GigabitEthernet0/0/0.10]arp broadcast enable
[R1]int G0/0/0.20
[R1-GigabitEthernet0/0/0.20]dot1q termination vid 20
[R1-GigabitEthernet0/0/0.20]ip add 192.168.20.1 24
[R1-GigabitEthernet0/0/0.20]un sh
Info: Interface GigabitEthernet0/0/0.20 is not shutdown.
[R1-GigabitEthernet0/0/0.20]arp broadcast enable
[R1]display ip interface brief