0x00 基础Acess 和 Trunk概念

Access 用于设备和交换机通讯
Access端口收到帧时,如果是无标签的,那就打上自己的PVID;如果是有标签的,那就查看是否与自己的PVID相同,相同则放过,不相同则丢弃。(简而言之,就是access端口放行后的帧就是打上自己PVID标签的帧)。
Access端口发送帧时,去掉标签,发送给主机。

Trunk 用于跨Switch 带不同VLAN标签的数据通信
Trunk端口收到帧时,(在允许通过的情况下)如果有标签,那就放行;如果没标签,打上默认的VID(也就是PVID)。
Trunk端口发送帧时,(肯定有标签)如果标签与PVID不一样,那就直接发送(透传),如果标签与PVID一样,那就去掉标签。(简而言之,trunk链路上传送的帧要么有标签,要么没有标签,有标签的一定不是默认VID,没有标签的一定是默认VID)。

双标签跳跃攻击:因为trunk端口发送帧的时候,如果帧的标签是PVID,那就会去掉。所以在默认VLAN的主机可以发送带两个标签的帧,外层标签就是PVID,内层标签就是要攻击主机所在的VLAN的LID。这样当access端口收到帧时,因为和端口的PVID一样,所以放行,经过路由之后到达trunk端口,因为和端口的PVID一样,所以根据机制就会去掉外层标签,这样在trunk链路中传送的就是发给另一个VLAN的帧了,这样就会到达目标主机。

总结一下就是: 进帧看PVID 出帧看Vlan List

0x01 Tag以及Untag

1 报文为untag:允许报文进入该端口,并打上PVID的vlan tag,与端口属性无关。

  2 报文为tag:在这种情况下,需要交换机来判断是否允许该报文进入端口:

  (1)Access端口:PVID和报文中的vlan tag标明的vlan一致,接受并处理报文。否则丢弃;

  (2)Trunk/Hybrid端口:如果端口允许tag中标明的vlan通过,则接收并处理报文,否则丢弃

  报文出方向:  

  在出方向上,交换机已经完成对报文的转发,其根本任务就是在转发出端口时,是否携带tag转发出去,根据出端口属性,细分如下情况:

  (1)Access端口:将标签剥掉,不带tag转发。

  (2)Trunk端口:报文所在vlan和PVID相同,则报文不带tag;否则带tag

  (3)Hybrid端口:报文所在VLAN配置为tag,则报文带tag,否则不带tag

0X02 Access、Hybrid和Trunk三种模式的理解

  以太网端口的三种链路类型:Access、Hybrid和Trunk:
  Access类型的端口只能属于1个VLAN,一般用于连接计算机的端口;
  Trunk类型的端口可以允许多个VLAN通过,可以接收和发送多个VLAN的报文,一般用于交换机之间连接的端口;
  Hybrid类型的端口可以允许多个VLAN通过,可以接收和发送多个VLAN的报文,可以用于交换机之间连接,也可以用于连接用户的计算机。
  Hybrid端口和Trunk端口在接收数据时,处理方法是一样的,唯一不同之处在于发送数据时:Hybrid端口可以允许多个VLAN的报文发送时不打标签,而Trunk端口只允许缺省VLAN的报文发送时不打标签。

标签: none

评论已关闭