一、Trunk功能
Trunk口主要用于连接交换机与交换机(或路由器),允许在一条物理链路上传输多个VLAN的数据。这大大增加了网络的灵活性和可扩展性,使得不同VLAN之间的通信变得更加便捷。
二、作用原理
- 标签处理:Trunk口能够识别并处理带有VLAN标签的数据帧。当数据帧通过Trunk口时,如果其VLAN ID与Trunk口允许的VLAN列表相匹配,则数据帧将被允许通过,并保留其VLAN标签。如果数据帧的VLAN ID与允许的VLAN列表不匹配,则将被丢弃。
- 流量负载分担:在配置了Trunk链路的场景中,可以通过对成员链路配置不同的权重,实现流量负载分担。这有助于平衡网络流量,提高网络的整体性能和可靠性。
- 冗余与可靠性:Trunk链路提供了冗余连接,当某条成员链路出现故障时,流量可以自动切换到其他可用的链路上,从而确保网络的连续性和可靠性。
三、操作方式
- 进入系统视图:首先,通过命令行进入交换机的系统视图。
- 创建VLAN:根据需要创建VLAN。例如,可以使用“vlan batch 10 20”命令同时创建VLAN 10和VLAN 20。
- 选择并配置端口为Trunk类型:选择需要配置为Trunk类型的端口,并设置其链路类型为Trunk。例如,可以使用“interface GigabitEthernet 0/0/1”命令进入指定端口视图,然后使用“port link-type trunk”命令将其配置为Trunk类型。
- 设置允许的VLAN:配置Trunk端口允许哪些VLAN的数据通过。例如,可以使用“port trunk allow-pass vlan 10 20”命令允许VLAN 10和VLAN 20的数据通过该Trunk端口。
- (可选)设置缺省VLAN:当接口转发不带标签的帧时,可以配置其携带对应的缺省VLAN标签。例如,可以使用“port trunk pvid vlan 1”命令将缺省VLAN设置为VLAN 1。但请注意,由于设备默认所有接口就属于VLAN 1,因此通常不需要额外配置此步骤,除非有特殊需求。
- 保存配置:最后,使用“save”命令保存配置,以确保重启后设置依然有效。
四、trunk口部分命令解释
PVID 作用:当一个未携带VLAN标签的数据包进入配置了PVID的端口时,交换机会根据该端口的PVID设置来决定是否对该数据包进行转发,并为其打上相应的VLAN标签。
port trunk allow-pass vlan all : 在网络设备的配置中用于指定某个端口允许所有VLAN的数据帧通过(允许的vlan是交换机中已创建的vlanid)
五、实验测试
1、不配置pvid且不配置允许的vlan id
当接口为trunk时,不配置pvid以及未设置任何允许的vlan id,此时接口属于默认的 pvid 1
2、配置的pvid和允许的vlan不同
当接口的pvid未进行允许通过时,数据包经过交换机就不会进行转发或泛洪
当只有一边允许pvid 和对方vlan id通过时,数据包只能转发,无法返回
可以看到此时数据帧的vlan id为10
3、配置的pvid和允许的vlan相同
此时数据PC双方都可以发送,但是无法返回
4、双方pvid相同且只允许对应vlan通过
数据可以顺利发出,数据经过对方时,pvid相同,数据包就会正常返回,此时双方可以互通