目录

一、TRUNK技术产生背景,解决什么问题

二、TRUNK是如何实现的/基本概念

使用主干道技术

实现:

802.1Q:

802.1Q帧格式:

干道协议:

TRUNK特性:本征VLAN

三、trunk的配置

实验拓扑

配置 

查看tag标记

四、交换机的端口

ACCESS端口

Trunk端口


一、TRUNK技术产生背景,解决什么问题

如何实现,交换机划分VLAN后,不同的交换机上,相同的VLAN,能够跨越地理位置互相通信,其实就是为了解决,上一篇文章中提到的,VLAN的本地化特性

即,如何让交换机上的某一条线路,能够承载多个VLAN通行——TRUNK

交换机trunk 所有vlan 交换机trunk配置命令_交换机trunk 所有vlan

看这张图,核心交换机连接了三个交换机,每个交换机连接了两台PC,分别连接到属于VLAN10的接口与VLAN20的接口,我们希望,每一台属于VLAN10的PC之间可以通信,属于VLAN20的PC之间可以相互通信,即不同交换机上,相同的VLAN能够相互通信

交换机trunk 所有vlan 交换机trunk配置命令_数据_02

如图,若PC5 ping PC3,但是由于上述特性,PC4将会收到该ARP请求

数据包从PC5到交换机,交换机将数据包广播,因为3接口为VLAN20,所以不会发包,而1接口为VLAN10,则向核心交换机发出该ARP请求包,核心交换机没有配置VLAN,则进行泛洪,数据包发送到最上方交换机时,PVID变为20,通过交换机泛洪,最终到达PC4,而最下方交换机PVID变为1,跟20与10都不同,则丢弃该数据包

听上去挺绕,其实就是因为VLAN的本地化,所有的VLAN配置只在该设备上有效,所以导致跟预期结果不同

如果,上述的线路中可以承载VLAN10和VLAN20,且每个交换机都配置好相同的VLAN,则可以解决上述问题

二、TRUNK是如何实现的/基本概念

使用主干道技术

交换机trunk 所有vlan 交换机trunk配置命令_网络安全_03

当一条链路需要承载多VLAN信息的时候,需要使用trunk来实现

TRUNK两端的交换机采用相同的干道协议

一般见于交换机之间或交换机与路由器、服务器之间

交换机trunk 所有vlan 交换机trunk配置命令_数据_04

 trunk就相当于信息高速公路,也叫主干道,可以承载多条线路发来的数据,并且可以让不同VLAN的数据同时通过

实现:

主干线路trunk,端口汇聚 两个或多个物理端口组合在一起,成为一个逻辑链路,提高传输速度

先把链路设定成trunk链路,并且跑相同的赶路协议

有了干道协议,如何区分不同的VLAN数据,通过802.1Q,向原始数据包内增加带有802.1Q的tag字段

802.1Q:

实际上就是一个标签,trunk链路上可以允许多个不同的VLAN通过,使用802.1Q进行区分

定义了基于端口的VLAN模型

规定如何标识带有VLAN成员信息的以太帧

定义VLAN标签的格式

802.1Q帧格式:

交换机trunk 所有vlan 交换机trunk配置命令_数据_05

 tag插入到源地址之后,tag中最关键的字段为VLAN ID

干道协议:

在华为中,干道协议一般为DOT1Q(共有标准的协议)实际上就是指802.1Q

思科还有一个私有协议ISL

TRUNK特性:本征VLAN

trunk链路中,通过的数据包,都应该打上TAG字段,表明所属的VLAN,而本征VLAN属于一种特殊的VLAN,本征VLAN可以允许数据包以不打TAG的形式直接通过trunk链路

所有交换机,开启trunk之后,默认本征VLAN,都是VLAN 1

交换机发出数据时,如果PVID和trunk链路中的本征VLAN ID相同,则该数据不打TAG直接发出

交换机的trunk接口收到数据时,如果没有tag字段,那么收到的数据就按照本征VLAN ID 来处理

本征VLAN的作用

本征在现网中应用的时候,主要给音频、视频,无线管理等一些业务
如监控摄像头,减少打TAG的步骤,降低延迟

三、trunk的配置

实验拓扑

交换机trunk 所有vlan 交换机trunk配置命令_交换机trunk 所有vlan_06

配置 

pc1-4 ip为 1.1 1.2 1.3 1.4,子网掩码255.255.255,按途中接口连接

双击进入交换机LSW1,创建VLAN10与VLAN20,将PC1放到VLAN10下,PC2放到VLAN20下,这一步的操作上一篇中详细讲过就不重复了,给一个传送门,下面开始配置trunk

进入0/0/1接口

interface Eth0/0/1

设置接口类型为trunk

port link-type trunk 

华为的交换机默认为禁止所有vlan通过

使用命令允许vlan10 20 通过

port trunk allow-pass vlan 10 20

这里第一台交换机就配置好啦,第二台交换机一样,将PC3放到VLAN10下,PC4放到VLAN20下,配置0/0/1接口为trunk,并且允许10 20 通过

配置完全后,用PC1 分别 ping PC2 PC3 PC4

交换机trunk 所有vlan 交换机trunk配置命令_网络_07

 

交换机trunk 所有vlan 交换机trunk配置命令_网络安全_08

因为PC1 和PC2、PC4不在同一个广播域下,所以ping不通

交换机trunk 所有vlan 交换机trunk配置命令_网络_09

因为PC1 和PC3 都属于VLAN 10 所以相互之间可以通

同理,PC2和PC4也可以互相通信

交换机trunk 所有vlan 交换机trunk配置命令_网络_10

查看tag标记

从第二台交换机的0/0/1接口开一个抓包,用PC1 ping PC3

交换机trunk 所有vlan 交换机trunk配置命令_网络安全_11

 

交换机trunk 所有vlan 交换机trunk配置命令_数据_12

可以看到,802.1Q,ID为10,说明数据包从第一台交换机出来的时候就加上了该标记

trunk的基础配置实验就结束啦

四、交换机的端口

ACCESS端口

即在配置VLAN的时候使用命令 port link-type access

UnTagged端口,即接入端口

Access端口只能属于一个VLAN,它发送的帧不带有VLAN标签,一般用于连接计算机的端口

Trunk端口

即刚才使用的 port link-type trunk

Tag Aware端口,即干道端口

可以允许多个VLAN通过,它发出的帧一般是带有VLAN标签的,一般用于交换机之间的连接端口

交换机trunk 所有vlan 交换机trunk配置命令_链路_13

在华为的设备中只需要考虑trunk和Access,这两个是用的最多的