Trunk支持vlan的范围

本文深入解析VLAN中继技术,包括TRUNK的概念、作用及配置,对比ISL与802.1Q两种封装方式,并详细介绍802.1Q的帧结构、native VLAN的工作原理及DTP动态中继协议的协商过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

TRUNK:中继协议  二层的技术

作用:不同的VLAN用一根线路传输。有能力区分所传递的数据属于哪个VLAN。
给每个独立的帧进行标识

trunk是P2P概念,中间加HUB(A----HUB----B)能否实现?可以
不推荐。
trunk:直连,全双工,考虑带宽的问题

DTP(Dynamic Trunk Protocol)动态
作用:在彼此switch之间trunk协商
交换机接口模式:
a.access
b.trunk:强制接口无条件成为trunk接口
c.dynamic (3550有 3560没有)

eg:
SW1 F1/1----------F1/1 SW2
trunk模式
show interface trunk
mode :   off (不能是dynamic,没有配置/access)
             on (两端配置trunk f1/6: encap  isl/dot1q/ mode trunk)
             DD 期望 主动
             DA 自动 被动
             nonegotiate   (关闭DTP)

eg: SW1 f1/6 ----------f1/6 SW2
            DD                 DA
show int f1/6 trunk
show dtp 

sw1
int f1/6
shutdown

debug dtp packet
debug dtp events

int f1/6
no shut
注意:
debug信息 ID--->对方的MAC

trunk学到的MAC地址放入MAC地址表
show mac-address-table  static->自带MAC
show mac-address-table dynamic 动态学习到多条MAC相同的地址
对每一个VLAN学习接口的MAC地址

封装方式:ISL / 802.1Q
ISL +30字节  占用过多的bandwidth
ASIC电路实现,不占用资源

DA:目标地址 组播地址:01-00-0c-00-00 or 03-00-0c-00-00
Type:类型  0000以太网帧 / 0001令牌环/0010 FDDI/0011ATM
User:4bit 后3bit优先级(QOS)
SA:源MAC 48bit
LEN:16bit
AAAA03:SNAP标准子网访问协议 802.2  LLC 封装3层到2层
HSA:MAC前3byte
VLAN:15bit 低位10bit VID 1024VLAN
BPDU:1bit STP VTP
INDX
RES:16bit 保留 令牌环/FDDI使用
CRC:循环冗余校验码

802.1Q

Tag:(4byte)
Ethertype(0x8100): 802.1q封装
PRI: 优先级 3bit --> QOS
Token:置0 
VLAN ID: 12bit (允许的VLAN 4096个)

native VLAN :本征VLAN
不进行封装的VLAN
默认:VLAN1
show int f1/6 trunk 查看native vlan
要求:交换机之间native vlan 要一致
配置:
interface FastEthernet1/6
 switchport trunk native vlan 10

补充:
no switchport  三层
swithport 二层接口 默认
eg:
sw1#sh int f1/5 switchport 
Name: Fa1/5
Switchport: Enabled

sw1(config)#int f1/5
sw1(config-if)#ip add 10.1.1.1 255.255.255.0

% IP addresses may not be configured on L2 links.

sw1(config-if)#no switchport
sw1(config-if)#ip add 10.1.1.1 255.255.255.0

================================================================================

VLAN中继的作用:通过一条链路发送多个VLAN的信息。为了区分帧属于哪个VLAN,在帧中需要另外添加一个字段--VLAN ID。
 
两种VLAN中继协议:ISL和802.1Q,它们的比较如下表:


通过VLAN中继后帧的变化如下图所示:


IEEES标准:802.1Q
采用"标记"方式,在原始数据帧的源MAC地址之后 插入4字节(32bit)的标记
 VLAN_ID: 12bit(0~4095)
  注:在交换机内部进行数据帧处理时,所有vlan的数据均加tag

802.1Q:   VLAN Tag(4字节)
2字节:类型
3bit :优先级
1bit :CFI(令牌环网时为1)
12bit: VLAN_ID (0~4095,0/4095为系统保留,1为缺省VLAN,用户 可配置VLAN为 2~4094 )

native VLAN:
i:发送:在一个trunk端口,若需要发送某个VLAN的数据,通常都需要添加tag. 
      若该数据帧所属的vlan等于该trunk端口的native vlan,则不加tag直接发送
ii:接收:在一个trunk端口上,若接收到一个数据帧带有tag,则按照该tag处理
      若该数据帧没有tag,则添加该trunk端口的native vlan作为tag.


Cisco私有:ISL
 采用"封装"方式,原始数据帧前加26字节 ,尾部加4字节新的FCS(CRC校验)
  VLAN_ID:15bit
 若采用ISL封装,所有的VLAN数据经过trunk链路时,均需要进行ISL封装,不存在nativ VLAN概念


●ISL和802.1Q的配置
Cisco使用DTP(Dynamic Trunk Protocol,动态中继协议)来动态学习设备执行哪种类型的中继。Cisco交换机默认使用DTP的desirable模式,这意味着交换机开始发送DTP消息,希望对端回应其他DTP消息。如果回应收到,DTP便可以侦测是否两个交换机能够中继以及它们中继的协议类型。如果两个交换机同时支持两种类型的中继,那么它们会自动选择ISL。

VLAN的范围
 802.1Q:0~4095(0,4095系统保留,1为缺省vlan, 1~4094为用户使用)
 ISL:
 1 为缺省VLAN
 2-1001    :为Ethernet(以太网) VLAN   
 1002~1005:保留给FDDI和Token Ring
 1006~4095:扩展以太网(Ethernet) VLAN部分(VTP)
 VTP v1, VTP v2 中只能支持基本VLAN部分
 VTP TRASPARENT mode(关闭掉VTP,既配为透明模式)

 
●允许的、活动的和修剪的VLAN
可以通过switchport trunk allowed设置允许使用的VLAN ID。当VLAN在允许列表中,且已存在配置时,其为活动状态。活动的VLAN可以进行修剪。
通过show interface trunk查看到的VLAN信息一般分为三类:
1)允许的VLAN
2)允许的且活动的VLAN
3)活动的且未被修剪的VLAN
 
trunk的配置
1)配置工作模式(access,trunk,dynamic desirable,dynamic auto)
a)静态配置
  int fa0/1
  switchport
  switchport trunk encapsulation dot1q
  switchport mode trunk

b)动态协商(DTP: dynamic Trunking Protocol,Cisco私有)
  int fa0/1
  switchport
  switchport mode dynamic desirable("主动"-发送DTP协商报文)
  switchport mode dynamic auto       ("被动"-响应DTP协商报文)

access
trunk
dynamic desirable
dynamic auto
access
access

access

trunk

trunk

trunk
dynamic desirable


trunk

dynamic auto

access

 DTP协商:
   a)auto方式:       被动响应DTP报文
   b)desirable方式:主动发送DTP报文
 注1:cisco交换机的端口缺省开启DTP协商
 注2:交换机双方必须在同一个VTP域中,才能进行DTP协商,进入trunk状态


 示例1:
  交换机A的f0/1   <------> 交换机B的f0/1
        *1)交换机A的配置
         int f0/1
         switchport mode dynamic desirable(最终:trunk)
        交换机B的配置
          int f0/1
          switchport mode dynamic desirable(最终:trunk)
     --------------------------------------------------------
        *2)交换机A的配置
         int fa/1
         switchport mode dynamic auto       (最终:trunk)
        交换机B的配置
         int fa/1
         switchport mode dynamic desirable(最终:trunk)
     --------------------------------------------------------
        *3)交换机A的配置
         int fa/1
         switchport mode dynamic auto     (最终:access)
         交换机B的配置
          int fa/1
          switchport mode dynamic auto     (最终:access)
      --------------------------------------------------------
        *4)交换机A的配置
         int fa/1
         switchport mode dynamic auto(最终:trunk)
         交换机B的配置
         int fa/1
          switchport mode trunk              (最终:trunk)
         DTP 没关,和对方协商
     --------------------------------------------------------
         *5)交换机A的配置
          int fa/1
          switchport mode dynamic auto(最终:access)
         交换机B的配置
          int fa/1
          switchport mode trunk(最终:trunk)
          switchport nonegotiate                           ------该端口不再发达DTP报文
          静态配置端口为trunk或access,   然后才能将DTP协议关闭,

  show dtp interface

 示例2:
      1)配置802.1Q封装的trunk端口 
      int fa0/1
       switchport
       switchport trunk encapsulation dot1q
       switchport mode trunk
       switchport trunk native vlan VLAN_ID-----封装802.1Q时允许存在native vlan
       switchport trunk allowed vlan ……

       2)配置ISL 封装的trunk端口
        int fa0/1
        switchport
        switchport trunk encapsulation isl
        switchport mode trunk
        switchport trunk allowed vlan ……

●中继配置选项:

●若接口配置为中继,那么中继类型(ISL还是802.1Q)通过switchport trunk encapsulation命令来配置。
 
●在路由器上配置中继
路由器上也可以配置VLAN中继,不过,路由器不支持DTP,所以必须手工配置,另外与路由器连接的交换机也需要手工配置中继。
路由器的中继配置一般使用子接口,每个子接口属于一个VLAN。
可以在路由器的子接口或物理接口上配置802.1Q原始VLAN。如果在子接口上配置,则使用encapsulation dot1q vlan-id native子命令。native关键字表示离开此接口的帧不打标记。如果要与IP网段联系,还应该配置相关的IP地址。如果在物理接口上配置,则不需要使用encapsulation命令,而只要配置相关IP地址即可。
 
trunk的相关命令:
1)switchport | no switchport:确定该接口是交换机接口还是路由器接口
2)switchport mode:设置DTP协商参数
3)switchport trunk:如果接口处于中继状态,设置中继参数
4)switchport access:如果接口处与非中继状态,设置非中继的参数
5)show interface trunk:与中继相关信息的汇总
6)show interface type number trunk:对特定接口显示中继的详细信息
7)show interface type number switchport:对特定接口显示非中继的详细信息

●关于802.1Q-in-Q隧道
通常VLAN是不能在广域网上工作的。但是,现在也在研究一些协议,希望使VLAN流量能够在广域网上传输,这其中就包括802.1Q-in-Q,Ethernet over MPLS和VLAN MPLS。
802.1Q-in-Q可以允许跨广域网保持802.1Q的VLAN标识,这样VLAN实际跨越多个地理分散的站点。
 

### 配置交换机 Trunk 端口以剔除特定 VLAN 在交换机的 Trunk 端口中,可以通过配置允许列表来控制哪些 VLAN 可以通过该端口。如果需要排除某些特定的 VLAN,则可以采用反向操作的方式,在定义允许列表时移除不需要的 VLAN。 #### 华为设备上的配置方法 对于华为交换机,可以在 Trunk 接口上指定允许通过的 VLAN 列表,并从中删除不希望放行的 VLAN。以下是具体的操作方式: ```shell [Huawei]interface GigabitEthernet 0/0/1 [Huawei-GigabitEthernet0/0/1]port link-type trunk [Huawei-GigabitEthernet0/0/1]port trunk allow-pass vlan all [Huawei-GigabitEthernet0/0/1]undo port trunk allow-pass vlan 10 ``` 上述命令的作用如下: - `port link-type trunk` 将接口设置为 Trunk 类型[^3]。 - `port trunk allow-pass vlan all` 允许所有 VLAN 流量通过此 Trunk 端口[^4]。 - `undo port trunk allow-pass vlan 10` 移除 VLAN 10 的流量许可,从而实现对该 VLAN 的排除。 #### H3C 设备上的配置方法 H3C 交换机同样支持类似的配置逻辑。以下是一个示例配置过程: ```shell <H3C>system-view [H3C]interface GigabitEthernet 1/0/1 [H3C-GigabitEthernet1/0/1]port link-type trunk [H3C-GigabitEthernet1/0/1]port trunk permit vlan all [H3C-GigabitEthernet1/0/1]undo port trunk permit vlan 10 ``` 这些命令的功能与华为设备类似,其中的关键在于使用 `undo port trunk permit vlan` 来取消对特定 VLAN 的授权[^2]。 #### Cisco 设备上的配置方法 Cisco 交换机则提供了另一种语法用于完成相同的目标。例如: ```shell Switch(config)#interface gigabitethernet 0/1 Switch(config-if)#switchport mode trunk Switch(config-if)#switchport trunk allowed vlan remove 10 ``` 在此过程中: - `switchport mode trunk` 定义接口模式为 Trunk。 - `switchport trunk allowed vlan remove 10` 命令从被允许的 VLAN 列表中移除了 VLAN 10。 ### 总结 无论是在华为、H3C 还是 Cisco 平台上,都可以通过对 Trunk 接口进行精细化管理来达到剔除特定 VLAN 的目的。核心思路均围绕着先设定一个基础范围(如全部 VLAN),再利用撤销机制针对个别 VLAN 实施例外处理。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值