不同VLAN间的通信原理

不同VLAN间的通信原理

    • VLAN
      • access口
      • trunk口
    • 不同VLAN间通信原理

首先我们来看看什么是VLAN

VLAN

VLAN(Virtual Local Area Network)虚拟局域网,是将一个物理的局域网在逻辑上划分成多个广播域的技术。VLAN技术部署在数据链路层。

VLAN能够隔离广播域
广播域是指在网络中能够收到广播消息的范围

每个VLAN都有自己的广播域,广播消息只会在同一个VLAN内传播,不会跨越到其他VLAN中,这样就可以减少广播流量

VLAN通过tag来进行区分:
不同VLAN间的通信原理_第1张图片

  • VLAN ID 0 阻止任何携带了 VLAN tag 的数据包
  • VLAN ID 4095 允许通过携带任何 VLAN tag 的数据包(trunk)
  • VLAN ID 1~4094 仅允许携带指定 VLAN ID tag 的数据包

交换机中的VLAN
路由器是基于三层IP地址信息来选择路由和转发数据的,其连接两个网段时可以有效抑制广播报文的转发,但成本较高

通过在交换机上配置VLAN,可以实现在同一个VLAN内的用户可以进行二层互访,而不同VLAN间的用户被二层隔离。这样既能够隔离广播域,又能够提升网络的安全性

交换机的接口可以配置VLAN ID,通过配置对应的逻辑接口VLANIF(Virtual LAN Interface 虚拟局域网接口)可以实现不同VLAN间的通信,具体方法一般是把VLANIF的IP配置为对应的网关

链路类型:用户主机和交换机之间的链路为接入链路,交换机与交换机之间的链路为干道链路
不同VLAN间的通信原理_第2张图片

干道链路上通过的帧一般为带Tag的VLAN帧

PVID表示端口在缺省情况下所属的VLAN。缺省情况下,X7系列交换机每个端口的PVID都是1。

access口

Access端口是交换机上用来连接用户主机的端口,只能连接接入链路,只允许唯一的VLAN通过

  • 接收数据: 收到不带tag的标数据帧,加上PVID;收到带tag的数据帧,检查VLAN ID是否与PVID相同,相同则接收
  • 发送数据: 发送数据帧先剥离tag再发送,发送时端口PVID与VLAN ID不同,则连接该端口的主机不会受到该数据帧

trunk口

Trunk端口是交换机上用来和其他交换机连接的端口,它只能连接干道链路。Trunk端口允许多个VLAN的帧(带Tag标记)通过

  • 接收数据: 收到不带tag的数据帧,添加该端口的PVID,然后检查是否在允许通过的VLAN ID列表中,存在则接收;收到带tag的数据帧则直接检查
  • 发送数据: 发送数据帧时,VLAN ID与PVID相同,且是该端口允许通过的VLAN ID时,则去掉tag发送;不同且是该端口允许通过的VLAN ID时,保持原有tag发送

不同VLAN间通信原理

如图,Switch为交换机,PC 1和PC 2的IP地址是不同网段的,两台PC与交换机连接的接口为access口,PVID分别为10和20,交换机分别为其设置了对应的VLANIF,地址为两台PC对应的网关。

不同VLAN间的通信原理_第3张图片

PC 1与PC 2通信的过程:

  1. PC 1发送数据包给Switch,PVID为10的access端口发现这个数据包是不带VLAN tag的,就给这个数据包加上自己的PVID 10的tag,接收
  2. 数据包传送到对应的VLANIF 10,VLANIF10接收到之后把MAC头和tag剥离
  3. 数据包由路由转发到下一跳,即VLANIF 20
  4. VLANIF 20接收到之后把数据包加上MAC头(目的MAC为PC 2的MAC,源MAC为自己的MAC)和VLAN ID为20的tag
  5. 数据包来到PVID为20的access端口,这个端口发现数据包携带的tag值与自己的PVID相同,剥离tag发送数据包
  6. PC 2接收到数据包

你可能感兴趣的:(计算机网络,网络)