Trunk和native VLAN

赫连明诚
2023-12-01

交换机网络中,报文只能在同一个VLAN中传送。

如果要跨VLAN,需要查L3的路由表。

如果有2个交换机:S1和S2,它们分别都有3个VLAN,VLAN1,VLAN2,VLAN3。

此时,如果这2个交换机要通信,它们需要各自用3个interface去支持3个VLAN。因为每个端口只有一个VLAN。

[plain]  view plain  copy
  1. |-----|        vlan1          |-----|  
  2. | S1  | P1|<------------->|P1 | S2  |  
  3. |     |        vlan2          |     |  
  4. |     | P2|<------------->|P2 |     |  
  5. |     |        vlan3          |     |  
  6. |     | P3|<------------->|P3 |     |  
  7. |-----|                       |-----|  
Trunk的作用是只用一个端口传送多个VLAN的报文。
[plain]  view plain  copy
  1. |-----|                       |-----|  
  2. | S1  |                       | S2  |  
  3. |     |       vlan1,2,3       |     |  
  4. |     | T1|<------------->|T1 |     |  
  5. |     |                       |     |  
  6. |     |                       |     |  
  7. |-----|                       |-----|  

任何报文,要从trunk口出去时,要在L2报文头中插入一个VLAN id(打tag)。

当接收端的trunk口收到报文时,把tag剥掉,选择一个适合的access口送出报文。如果要从另一个trunk口送出,就应该把tag再打回去。

对于station来说,没有VLAN的概念。所有从access口出去的报文都应该是没有tag的。

如果station连着trunk口,则trunk口需要有一个native VLAN。native VLAN的意思是,如果一个报文属于这个VLAN,那么在trunk口送出这个报文时,将不会打tag。

Station只认识native VLAN的报文。

=======================分割线=======================

刚接触交换机,被VLAN的概念搞得晕头转向。无奈翻开了CCNP的教程,做篇笔记。

 类似资料: