Trunk基本配置

来源:互联网 发布:手机mac地址怎么改 编辑:程序博客网 时间:2024/05/19 17:04

Trunk基本配置


Trunk

采用Trunk(中继)技术可以实现跨交换机的VLAN内通信。Trunk技术使得在一条物理线路上可以传送多个VLAN的信息,交换机从属于某一VLAN(如Vlan3)的端口接收到数据,在Trunk链路上进行传输前,会加上一个标记,表明该数据是VLAN3的,到了对方交换机,交换机会把该标记去掉,只发送到属于Vlan3的端口上。

两种常见的Trunk帧标记技术:

ISL:ISL(交换机间链路 Inter Switch Link)技术在原有的帧上重新加了一个帧头,并重新生成了帧校验序列

     (FCS)。ISL是Cisco私有的技术,因此不能在Cisco交换机和非Cisco交换机之间使用。

Trunk基本配置

说明:VLAN ISL 封装只支持1024个 VLAN;ISL 帧最大为1548bytes:26(ISL 包头)+1518+4(CRC)=1548。

IEEE 802.1Q:IEEE 802.1Q技术是在原有帧的源MAC地址字段后插入4字节的标记字段,同时用新的CRC字段替

     代了原有的CRC字段。该tag由TPID(标签协议标识 Tag Protocol Iidentifier)和TCI(标志控制息 Tag

     Control Information)两者组成,TPID表示网络帧承载的802.1q的类型,TCI则指定VLAN标签的P-bit、

     VLAN ID和CFI(一般为0)。该技术是国际标准,得到所有厂家的支持。

Trunk基本配置

附注其他帧结构相关:

##################################################################

Ethernet II 以太网帧格式:

 目标MAC   源MAC   类型    数据          FCS

 6字节     6字节   2字节   46-1500字节   4字节

最小:6+6+2+46+4=64;最大:6+6+2+1500+4=1518。

注:ISL 封装后可达1548(1518+30)字节;802.1Q 封装后可达1522(1518+4)字节。

##################################################################

Ethernet 802.3 raw 帧格式:

 目标MAC   源MAC   总长度   0xFFFF   数据          FCS

 6字节     6字节   2字节    2字节    44-1498字节   4字节

最小6+6+2+2+44+4=64;最大6+6+2+2+1498+4=1518。 ##################################################################

Ethernet 802.3 SAP 帧格式:

 目标MAC   源MAC   总长    DSAP    SSAP    控制    数据          FCS

 6字节     6字节   2字节   1字节   1字节   1字节   43-1497字节   4字节

最小:6+6+2+1+1+1+43+4=64;最大:6+6+2+1+1+1+1497+4=1518。

##################################################################

Ethernet 802.3 SNAP 帧格式:

 目标MAC   源MAC   总长    0xAA    0xAA    0x03    OUI ID   类型    数据          FCS

 6字节     6字节   2字节   1字节   1字节   1字节   3字节    2字节   38-1492字节   4字节

最小:6+6+2+1+1+1+3+2+38+4=64;最大:6+6+2+1+1+1+3+2+1492+4=1518 。

###################################################################

所以:以太网帧的长度范围是64-1518。

说明:最小帧长度的定义与CSMA/CD(即能够检测帧冲突的最少时间)有关。

Native VLAN

Native VLAN(本征VLAN,默认是Vlan 1)是802.1Q中继端口上的概念。802.1Q中继端口支持来自多个VLAN的流量(有标记的流量),也支持来自VLAN以外的流量(无标记的流量)。802.1Q中继端口会将无标记流量交付到本征VLAN。一些协议(如CDP、DTP、BPDU、VTP、Pagp等)要求交换机间互相协商才能正常运行。如果对它们协商的数据帧打了标记的话,会导致在一些不支持VLAN的在交换机上不能相互协商。为了解决这个问题, 提出了Native VLAN的概念。然而在Trunk链路上把数据重新封装,将直接导致帧头变大,从而影响效率,这时可以在Trunk链路上指定一个本征VLAN,来自本征VLAN的数据通过Trunk链路时将不重新封装,以原有的帧传输,以提高效率。但是本征VLAN也具有很多不安全的特性。

Trunk和Native VLAN举例:

1、如果Vlan 2的数据帧要通过Trunk链路发送,并且Trunk又允许Vlan 2通过,那么Trunk在发送该帧前将打上

   Vlan 2的标记;当对端Trunk链路收到带Vlan 2标记的该数据帧时会剥掉标记,并把该帧交付给Vlan 2。

2、如果Vlan 2是这个Trunk接口的Native Vlan,那么Vlan2的数据帧在进入Trunk链路时,不打标签直接转发。

3、当对端Trunk链路收到一个不带标签的数据帧时(如2中的Native Vlan 2、BPDU帧等),它将会把这个数据帧交

   付给本地的Native Vlan。为了可以正确的转发,Trunk链路两端的交换机接口必须配置一致的Native Vlan。

说明:

1.在一个交换网络中,帧有两种格式:标记帧(被Trunk打标签)和未标记帧(没被Trunk打标签)。
2.Native VLAN是802.1Q Trunk接口上的概念,在Access口没有Native VLAN的概念,.默认情况下,Cisco交换机

  在802.1Q的VLAN封装类型下不对Native VLAN打标签,可以通过“show vlan dot1q tag native”命令查看。

3.Native VLAN的主要的目是不丢弃非标记帧,接收方交换机把所有接收到的未标记的数据帧交付到Native VLAN

  中,而不是丢弃。

4.默认Native VLAN是Vlan 1,可以通过“show interface trunk”命令来查看;也可以进入Trunk接口,通过

  “swithport trunk native vlan 2”命令来修改Native Vlan。

5.Trunk链路的两端指定的本征VLAN要一致,否则将导致数据帧从一个VLAN传播到另一个VLAN上。
6.CDP版本2在Cisco交换机之间传送Native VLAN的信息,CDP协议每分钟发送一次数据包。如果两个交换机间的

  Native VLAN不匹配,在两台交换机的控制台每隔一分钟就出现出错提示。

7.对于支持PVLAN的交换机,每个端口都有一个PVID参数(PVID不分Trunk口或Access口),缺省和该端口的VLAN

  ID值一样。根据端口的设定,交换机会为每个802.1Q Trunk口分配一个PVID值,PVID等于Native VLAN ID,所

  有交换机都把未标记的帧交付到PVID参数所指定的VLAN中。

 

实验

命令:

sw1(config-if)#switchport trunk encapsulation dot1q

                               //配置Trunk链路的封装类型{dot1q|isl},同一链路两端的封装类型要相同

sw1(config-if)#switchport mode trunk        //把接口配置为Trunk模式

sw1(config-if)#switchport trunk allowed vlan 10,20,500       

                 //设置该Trunk链路只能通过Vlan 10、Vlan 20和Vlan 500的数据,其它VLAN的数据不能通过

sw1(config-if)#switchport trunk native vlan 10        //在Trunk链路上配置Native VLAN

说明:

①大部分底层交换机中的IOS只能封装dot1q,不支持isl,因此无需配置该命令;

②启用Trunk后默认允许所有VLAN的数据通过;

③在Trunk链路上配置的Native VLAN时需要在链路的两端都进行配置,并且Native VLAN ID都要一样。

Trunk基本配置

配置Trunk
sw1(config)#vlan 10
sw1(config-vlan)#name one

sw1(config)#vl 20
sw1(config-vlan)#name two
sw1(config)#vl 30
sw1(config-vlan)#name three
sw1(config)#int f0/1

sw1(config-if)#switchport mode access

sw1(config-if)#switchport access vlan 10

sw1(config)#int f0/2

sw1(config-if)#switchport mode access
sw1(config-if)#switchport access vlan 20

sw1(config)#int f0/3

sw1(config-if)#switchport mode access
sw1(config-if)#switchport access vlan 30

sw1(config)#int f0/13

sw1(config-if)#switchport trunk encapsulation dot1q

sw1(config-if)#switchport mode trunk

sw2(config)#vlan 10
sw2(config-vlan)#name one

sw2(config)#vl 20
sw2(config-vlan)#name two
sw2(config)#vl 30
sw2(config-vlan)#name three
sw2(config)#int f0/1

sw2(config-if)#switchport mode access

sw2(config-if)#switchport access vlan 10

sw2(config)#int f0/2

sw2(config-if)#switchport mode access
sw2(config-if)#switchport access vlan 20

sw2(config)#int f0/3

sw2(config-if)#switchport mode access
sw2(config-if)#switchport access vlan 30

sw2(config)#int f0/13

sw2(config-if)#switchport trunk encapsulation dot1q
sw2(config-if)#switchport mode trunk

实验调试

sw1#show int f0/13 trunk        //查看交换机该端口的Trunk状态

Trunk基本配置
sw1#show int f0/13 switchport
Trunk基本配置

sw1#show int trunk        //查看接口Trunk信息
配置trunk allowed

sw1(config)#int f0/13

sw1(config-if)#switchport trunk allowed vlan 10,20,500

经过以上配置,交换机sw1的F0/13 Trunk链路只能Vlan 10,Vlan 20、Vlan 500的数据通过,这样PC1能ping通PC4、PC2能ping通PC5、PC3则不能ping通PC6。

实验调试

sw1#show int f0/13 trunk

Trunk基本配置
“switchport trunk allowed vlan ?”命令有以下几种选项:

①VLAN ID:VLAN列表,可以采用“10,20,500”或“11-20”这两种形式,允许列表中指明的VLAN数据通过;

②add:在原有的列表上增加新的VLAN;

③all:允许所有的VLAN通过;

④except:除了指定VLAN以外的VLAN都允许通过;

⑤none:不允许任何VLAN通过;

⑥remove:在原有的列表上删除指定的VLAN。
配置Native VLAN
sw1(config)#int f0/13

sw1(config-if)#switchport trunk native vlan 10

sw2(config)#int f0/13

sw2(config-if)#switchport trunk native vlan 10

实验调试

如果Trunk链路双方配置不同的Native VLAN,则分隔一分钟就会出现出错提示,如下:

Trunk基本配置

说明:交换机默认运行CDP协议,CDP协议每分钟发送一次数据包,如果在两台交换机上使用“no cdp run”命令就可以关闭以上信息了。

Native VLAN扩展实验:交换篇--《Voice VLAN基本配置》

0 0