VLAN间通信技术背景
传统交换二层组网中,默认所有网络都处于同一个广播域,这带了诸多问题。VLAN(Virtual Local Area Network,虚拟局域网)技术的提出,满足了二层组网隔离广播域需求,使得属于不同VLAN的网络无法互访,但不同VLAN之间又存在着相互访问的需求。
实际网络部署中一般会将不同IP地址段划分到不同的VLAN。 同VLAN且同网段的PC之间可直接进行通信,无需借助三层转发设备,该通信方式被称为二层通信。 VLAN之间需要通过三层通信实现互访,三层通信需借助三层设备。
常见的三层设备:路由器、三层交换机、防火墙等。
将二层交换机与路由器的三层接口互联,由三层设备进行路由转发来实现通信。
如果使用路由器物理接口,那么路由器的一个物理接口作为一个VLAN的网关,因此存在一个VLAN就需要占用一个路由器物理接口。
如果使用子接口基于路由器以太网接口所创建的逻辑接口,以物理接口ID+子接口ID进行标识,子接口同物理接口一样可进行三层转发。而且子接口不同于物理接口,可以终结携带VLAN Tag的数据帧。如果基于一个物理接口而创建多个子接口,将该物理接口对接到交换机的Trunk接口,即可实现使用一个物理接口为多个VLAN提供三层转发服务。交换机连接路由器的接口类型配置为Trunk,根据报文的VLAN Tag不同,路由器将收到的报文交由对应的子接口处理。
使用VLANIF技术实现VLAN间通信
二层交换机(Layer 2 Switch)指的是只具备二层交换功能的交换机。
三层交换机(Layer 3 Switch)除了具备二层交换机的功能,还支持通过三层接口(如VLANIF接口)实现路由转发功能。
VLANIF接口是一种三层的逻辑接口,支持VLAN Tag的剥离和添加,因此可以通过VLANIF接口实现VLAN之间的通信。 VLANIF接口编号与所对应的VLAN ID相同,如VLAN 10对应VLANIF 10。
VLANIF转发
假设PC、三层交换机上都已存在相应的ARP或MAC表项。 PC1与PC2之间通信过程如下: PC1通过本地IP地址、本地掩码、对端IP地址进行计算,发现目的设备PC2与自身不在同一个网段,判断该通信为三层通信,将去往PC2的流量发给网关。PC1发送的数据帧:源MAC = MAC1,目的MAC = MAC2。
然后交换机收到PC1发送的去往PC2的报文,经解封装发现目的MAC为VLANIF10接口的MAC地址,所以将报文交给路由模块继续处理。 路由模块解析发现目的IP为192.168.20.2,非本地接口存在的IP地址,因此需要对该报文三层转发。查找路由表后,匹配中VLANIF20产生的直连路由。
因为匹配的为直连路由,说明已经到达最后一跳,所以交换机在ARP表中查找192.168.20.2,获取192.168.20.2的MAC地址,交由交换模块重新封装为数据帧。 交换模块查找MAC地址表以明确报文出接口、是否需要携带VLAN Tag。最终交换模块发送的数据帧:源MAC = MAC2,目的MAC = MAC3,VLAN Tag = None。
连接逻辑图
通信过程
(1)PC处理流程:PC发送报文前往2.3.4.5,经判断目的IP非本地网段,故将报文发送给网关。
(2)SW1处理流程:SW1收到数据帧之后根据目的MAC查找MAC地址表转发数据帧。
(3)SW2处理流程:SW2收到数据帧之后,查看目的MAC为自身接口VLANIF10的MAC地址,交由路由模块在路由表中查找2.3.4.5。 SW2路由查找结果为匹配缺省路由,出接口为VLANIF30、下一跳为192.168.30.2,查找ARP获取192.168.30.2的MAC地址。
(4)SW2查找ARP表项获取到192.168.30.2的MAC地址,将报文(源MAC替换为VLANIF30的接口MAC)转交给交换模块,交换模块查找MAC地址表确定出接口,同时确认发送报文时是否携带VLAN Tag。
(5)R1处理流程:查看数据帧的目的MAC为自身接口MAC,查看目的IP,非自身IP地址,查找路由表,匹配默认路由,交给运营商转发,同时执行NAT将报文源IP、Port转换。
二、三层接口对比
典型的二层接口如二层交换机(只具备二层交换能力的交换机)的物理接口;大部分三层交换机(同时具备二层及三层交换能力的交换机)的物理接口缺省为二层接口。
典型的三层接口如路由器的三层接口。 某些三层交换机的物理接口可以切换成三层模式。 此外除了物理三层接口,还存在逻辑三层接口,例如交换机的VLANIF,或者网络设备上的逻辑子接口,如GE0/0/1.10。
以太网链路聚合
以太网链路聚合配置有以下几点优势:
配置命令
手工模式链路聚合配置举例
[SW1] interface eth-trunk 1
[SW1-Eth-Trunk1] trunkport gigabitethernet 0/0/1 to 0/0/2
[SW1-Eth-Trunk1] port link-type trunk
[SW1-Eth-Trunk1] port trunk allow-pass vlan 10 20
[SW2] interface eth-trunk 1
[SW2-Eth-Trunk1] trunkport gigabitethernet 0/0/1 to 0/0/2
[SW2-Eth-Trunk1] port link-type trunk
[SW2-Eth-Trunk1] port trunk allow-pass vlan 10 20
LACP模式链路聚合配置举例
SW1的配置如下:
[SW1] interface eth-trunk 1
[SW1-Eth-Trunk1] mode lacp
[SW1-Eth-Trunk1] max active-linknumber 2
[SW1-Eth-Trunk1] trunkport gigabitethernet 0/0/1 to 0/0/3
[SW1-Eth-Trunk1] port link-type trunk
[SW1-Eth-Trunk1] port trunk allow-pass vlan 10 20
[SW1-Eth-Trunk1] quit
[SW1] lacp priority 30000
[SW2] interface eth-trunk 1
[SW2-Eth-Trunk1] mode lacp
[SW2-Eth-Trunk1] max active-linknumber 2
[SW2-Eth-Trunk1] trunkport gigabitethernet 0/0/1 to 0/0/3
[SW2-Eth-Trunk1] port link-type trunk
[SW2-Eth-Trunk1] port trunk allow-pass vlan 10 20
[SW2-Eth-Trunk1] quit