1、划分的接口类型access,trunk,hybrid应用场景
2、接口类型的收方向和发送方向的判断原理
3、链路聚合(eth-trunk)
(1)、不同类型的接口适用于不同的场景:
•Access类型的接口主要用来连接用户主机,一般用于接入链路,且接入链路上通过的帧为不带Tag的以太网帧。如果Access接口配置了缺省VLAN,则在该报文上加上Tag标记,并将Tag中的VID字段的值设置为接口所属的缺省VLAN编号,此时接入链路上允许与缺省VLAN Tag匹配的以太网帧通过。
•Trunk类型的接口主要用来连接其它路由器设备,一般用于干道链路。Trunk接口允许多个VLAN的帧通过。
•Hybrid类型的接口既可以用来连接用户主机也可以用来连接其它路由器设备,Hybrid接口既可以用于接入链路也可以用于干道链路。Hybrid接口允许多个VLAN的帧通过,并可以配置在出接口方向是否将VLAN帧的Tag剥掉。
vlan ID=VID;例如创建vlan 10 ,access接口类型,我们就说该接口的vlan ID为10
tag;剥离VID=2的Tag,tag(标记)用VID来标识
pvid ;一个端口可以属于多个VLAN,但是只能有一个PVID,收到一个不带tag头的数据包时,会打上PVID所表示的VLAN号,视同该VLAN的数据包处理。
vlan batch 11 to 20 (创建11 12。。。。到20)
interface GigabitEthernet0/0/1
port link-type access //把此接口划成access接口类型
port default vlan 10 //此接口有且划到vlan 10 同时等同于pvid为10,有且vlan 10的可以通过
#
interface GigabitEthernet0/0/2
port link-type trunk //把此接口划成trunk接口类型
port trunk pvid vlan 30 //Tag的VID=接口的PVID
undo port trunk allow-pass vlan 1 //判断接口不允许vlan 1通过
port trunk allow-pass vlan 2 to 4094 //判断接口vlan 2到4094通过
华为交换机的默认私有接口类型为hybrid
#
interface GigabitEthernet0/0/3
undo port hybrid vlan 1 //不允许vlan 1通过
port hybrid tagged vlan 20 //允许vlan 20通过,并打上tag 20
port hybrid untagged vlan 30 //允许vlan 30通过,剥离tag 30
hybrid可以在出接口决定发的报文是否带标签,还是不带标签。
(2)、vlan 接口类型的判断规则
收方向:(1)判断收到的数据是否有tag(主机收和发送都无tag)无tag打上tag(vlan 号);
(2)判断是否允许通过。
发方向:(1)判断是否允许通过;
(2)判断是否需要剥离tag。
上图pc5发送数据到sw,打上tag 10(收方向);sw2到sw3发送方向,而且接口pvid为10,剥离tag。到达sw3是没有tag的,sw3接收到会打上默认的vlan 1,sw3发给pc6,sw3的接口在G0/0/2拒绝。vlan间访问(vlanif接口)。
上图主机正常通信。
(3)、链路聚合
LACP模式实现原理
基于IEEE802.3ad标准的LACP是一种实现链路动态聚合与解聚合的协议。LACP通过控制协议数据单元LACPDU(Link Aggregation Control Protocol Data Unit)与对端交互信息。
在LACP模式的Eth-Trunk中加入成员接口后,这些接口将通过发送LACPDU向对端通告自己的系统优先级、MAC地址、接口优先级、接口号和操作Key等信息。对端接收到这些信息后,将这些信息与自身接口所保存的信息比较,用以选择能够聚合的接口,双方对哪些接口能够成为活动接口达成一致,确定活动链路。
interface Vlanif10
ip address 10.10.1.254 255.255.255.0
#
interface Vlanif20
ip address 10.10.0.254 255.255.255.0
#
interface Eth-Trunk1
port link-type access
port default vlan 10
mode lacp-static //lacp模式
#
interface Eth-Trunk2 默认手工模式
port link-type access
port default vlan 20
#
interface GigabitEthernet0/0/0
eth-trunk 1 //把物理接口划入到聚合口中
#
interface GigabitEthernet0/0/1
eth-trunk 1
#
interface GigabitEthernet0/0/2
eth-trunk 2
#
interface GigabitEthernet0/0/3
eth-trunk 2