trunk-中继链路(图文解析)_第1张图片

我们通过上图来了解trunk:

在SW1上创建了三个VLAN,分别为vlan 10,vlan 20,vlan 30。

在SW2上创建了两个vlan,分别为vlan 10,vlan 20.

我们要实现vlan10之间,vlan20之间的通信,如果没有trunk技术的话,那我们就需要在SW1和SW2之间,再增加一条链路来实现通信。这样的话,端口利用率太低。而我们的交换机端口有两种模式access和trunk,一般我们在连接PC时都选用access模式,在设备之间互联时选用trunk模式。

access模式:

SW1(config)#interface f0/1              //进入f0/1端口

SW1(config-if)#switchport mode access   //将端口设置为access(访问模式)

SW1(config-if)#switchport access vlan 10 //将f0/1加入到vlan 10

将access模式的端口加入到某一个vlan之中的话,那么这个端口就只能用来传输这一个vlan的数据。

trunk模式:

SW1(config)#interface f0/7               //进入f0/7端口

SW1(config-if)#switchport mode trunk  //将f0/7端口设置为trunk模式

SW2(config)#interface f0/7               //进入f0/7端口

SW2(config-if)#switchport mode trunk  //将f0/7端口设置为trunk模式

上图中的交换机之间的链路我们就称为trunk链路,相当于这条链路是共享的,它可以传输多个vlan的数据,不仅仅只为为某一个vlan服务。这样就可以实现vlan10之间 ,vlan20之间的正常通信。

ps:三层交换机端口设置trunk模式,需进行封装。

配置命令:

SW3(config)#interface g0/1

SW3(config-if)#switchport trunk encapsulation dot1q

SW3(config-if)#switchport mode trunk

为什么要进行封装?

  dot1q为国际通用的trunk封装协议,所以各个厂家的设备都需要遵循这个公有标准。

但是有些厂家开发了自己设备的私有封装协议,例如思科的ISL封装协议。思科与思科之间的设备既可以使用公有的dot1q,也可以使用其私有的ISL封装协议。但是思科与其他厂商之间,就只能使用公有的dot1q协议来进行封装。