欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 汽车 > 时评 > vlan技术

vlan技术

2025/2/23 10:41:40 来源:https://blog.csdn.net/weixin_71853810/article/details/144235255  浏览:    关键词:vlan技术

vlan的基本概念

典型交换网络中,当某台主机发送一个广播帧或未知单播帧时,该数据帧会被泛洪,甚至传递到整个广播域。
广播域越大,产生的网络安全问题、垃圾流量问题,就越严重。
为了解决广播域带来的问题,人们引入了VLAN (Virtual Local Area Network) ,即虚拟局域网技术:通过在交换机上部署VLAN ,可以将一个规模较大的广播域在逻辑上划分成若干个不同的、规模较小的广播域,由此 可以有效地提升网络的安全性,同时减少垃圾流量,节约网络资源。
vlan的特点:
  • 一个VLAN就是一个广播域,所以在同一个VLAN内部,计算机可以直接进行二层通信;而不同VLAN内的计算机,无法直接进行二层通信,只能进行三层通信来传递信息,即广播报文被限制在一个VLAN内。
  • VLAN的划分不受地域的限制
vlan的好处:
  • 灵活构建虚拟工作组:用VLAN可以划分不同的用户到不同的工作组,同一工作组的用户也不必局限于某一固定的物理范围,网络构建和维护更方便灵活。
  • 限制广播域:广播域被限制在一个VLAN内,节省了带宽,提高了网络处理能力。
  • 增强局域网的安全性:不同VLAN内的报文在传输时是相互隔离的,即一个VLAN内的用户不能和其它VLAN内的用户直接通信。
  • 提高了网络的健壮性:故障被限制在一个VLAN内,本VLAN内的故障不会影响其他VLAN的正常工作。

vlan的帧格式

在一个 VLAN 交换网络中,以太网帧主要有以下两种形式:
  • 有标记帧(Tagged帧):IEEE 802.1Q协议规定,在以太网数据帧的目的MAC地址和源MAC地址字段之后、协议类型字段之前加入4个字节的VLAN标签(又称VLAN Tag,简称Tag)的数据帧。
  • 无标记帧(Untagged帧):原始的、未加入4字节VLAN标签的数据帧。

VLAN 数据帧中的主要字段:
TPID 2 字节, Tag Protocol Identifier (标签协议标识符),表示数据帧类型。
  • 取值为0x8100时表示IEEE 802.1QVLAN数据帧。如果不支持802.1Q的设备收到这样的帧,会将其丢弃。
  • 各设备厂商可以自定义该字段的值。当邻居设备将TPID值配置为非0x8100时,为了能够识别这样的报文,实现互通,必须在本设备上修改TPID值,确保和邻居设备的TPID值配置一致。
PRI 3 bit Priority ,表示数据帧的优先级,用于 QoS
  • 取值范围为07,值越大优先级越高。当网络阻塞时,交换机优先发送优先级高的数据帧
CFI 1 bit Canonical Format Indicator (标准格式指示位),表示 MAC 地址在不同的传输介质中是否以标准格式进行封装,用于兼容以太网和令牌环网
  • CFI取值为0表示MAC地址以标准格式进行封装,为1表示以非标准格式封装。
  • 在以太网中,CFI的值为0
VID 12 bit VLAN ID ,表示该数据帧所属 VLAN 的编号。
  • VLAN ID取值范围是04095。由于04095为协议保留取值,所以VLAN ID的有效取值范围是14094
  • 交换机利用VLAN标签中的VID来识别数据帧所属的VLAN,广播帧只在同一VLAN内转发,这就将广播域限制在一个VLAN内
如何识别带 VLAN 标签的数据帧:
数据帧的 Length/Type = 0x8100
注意 计算机无法识别Tagged数据帧,因此计算机处理和发出的都是Untagged数据帧;为了提高处理效率,交换机内部处理的数据帧一律都是Tagged帧。

vlan的划分方式

VLAN 的划分包括如下 5 种方法:
基于接口划分:根据交换机的接口来划分 VLAN
网络管理员预先给交换机的每个接口配置不同的PVID ,当一个数据帧进入交换机时,如果没有带 VLAN 标签,该数据帧就会被打上接口指定 PVID 的标签, 然后数据帧将在 指定 VLAN 传输。
基于 MAC 地址划分:根据数据帧的源 MAC 地址来划分 VLAN
网络管理员预先配置MAC地址和VLAN ID映射关系表 ,当交换机收到的是 Untagged 帧时,就依据该表给数据帧添加指定 VLAN 的标签, 然后数据帧将在指定 VLAN 中传输。
基于 IP 子网划分:根据数据帧中的源 IP 地址和子网掩码来划分 VLAN
网络管理员预先配置IP地址和VLAN ID映射关系表 ,当交换机收到的是 Untagged 帧,就依据该表给数据帧添加指定 VLAN 的标签, 然后数据帧将在指定 VLAN 中传输。
基于协议划分:根据数据帧所属的协议(族)类型及封装格式来划分 VLAN
网络管理员预先配置以太网帧中的协议域和VLAN ID的映射关系表 ,如果收到的是 Untagged 帧,就依据该表给数据帧添加指定 VLAN 的标签, 然后数据帧将在指定 VLAN 中传输。
基于策略划分:根据配置的策略划分 VLAN ,能实现多种组合的划分方式,包括接口、 MAC 地址、 IP 地址等。
网络管理员预先配置策略 ,如果收到的是 Untagged 帧,且匹配配置的策略时,给数据帧添加指定 VLAN 的标签, 然后数据帧将在指定 VLAN 中传输。

vlan划分方式详解请参考:五种划分vlan的方式_vlan划分方法-CSDN博客

vlan的接口类型

接口的数据处理:

  1. 接收数据(入方向的处理)
  2. 发送数据(出方向的处理)

因为vlan标签的存在,所以数据分为两种:

  1. 不带有vlan标签的数据(untagged数据帧)
  2. 带有vlan标签的数据(tagged数据帧)

注意:

交换机内部的数据一定会带有VLAN标签

因为终端只能识别untagged数据帧,所以交换机设备发送数据给终端时需要剥离标签

access接口

交换机上常用来连接用户PC、服务器等终端设备的接口Access接口所连接的这些设备的网卡往往只收发无标记帧。Access接口只能加入一个VLAN

一个接口只能绑定一个VLAN;一个VLAN可以绑定多个接口

1.入方向接收数据如何处理?

  收到untagged数据帧,打上接口的PVID值,保留VLAN标签接入进交换机内

  收到tagged数据帧,需要判断数据帧携带VLAN标签和接口的PVID值是否相等

    1.如果相等,则保留标签接入进行交换机内

    2.如果不相等,则丢弃

2.出方向发送数据如何处理?

  发送tagged数据帧,需要判断数据帧携带的VLAN标签和接口的PVID值是否相等

    1.如果相等,则剥离标签从接口发送数据(untagged数据帧)

    2.如果不相等,则不再该接口发送

配置命令:

interface GigabitEthernet 0/0/1  进入接口视图

port link-type access  将接口类型设置为access

port default vlan 10   将接口绑定VLAN 10

trunk接口

Trunk接口允许多个VLAN的数据帧通过,这些数据帧通过802.1Q Tag实现区分。Trunk接口常用于交换机之间的互联,也用于连接路由器、防火墙等设备的子接口

1.入方向接收数据如何处理?

  收到untagged数据帧,打上接口的PVID值,并且要判断PVID值是否在放行列表中

    1.如果在,则保留打上VLAN标签接入进交换机内部

    2.如果不在,则丢弃

  收到tagged数据帧,判断数据帧携带的VLAN ID是否在放行列表中

    1、如果在,则保留vlan标签接入进交换机内部

    2、如果不在,则丢弃

2.出方向发送数据如何处理?

  发送tagged数据帧,判断数据帧携带的VLAN ID是否在接口的放行列表中

    1.如果不在,则不在该接口转发

    2.如果在,则在判断数据帧携带的VLAN ID是否和接口的PVID相同

       1.如果相同,则剥离VLAN标签发送 (untag数据帧)

       2.如果不同,则保留VLAN标签发送 (tag数据帧)

配置命令:

port link-type trunk   修改接口类型为trunk

port trunk allow-pass vlan 10 20 设置trunk允许列表的通行vlan

port trunk pvid vlan 10 设置trunk接口的PVID值

hybrid接口

Hybrid接口与Trunk接口类似,也允许多个VLAN的数据帧通过,这些数据帧通过802.1Q Tag实现区分。用户可以灵活指定Hybrid接口在发送某个(或某些)VLAN的数据帧时是否携带Tag

1.入方向接收数据如何处理?

  接收untagged数据帧,打上接口的PVID值,在判断打上的vlan标签是否在 tagged或untagged的允许列表中

    1.如果在,则保留标签接收数据

    2.如果不在,则丢弃

  接收tagged数据帧,判断数据帧携带的VLAN标签是否在 tagged或untagged的允许列表中

    1.如果在,则保留标签接收数据

    2.如果不在,则丢弃

2.出方向发送数据如何处理?

  发送tagged数据帧,判断数据帧携带的VLAN标签是否在 tagged或untagged的允许列表中

    1.如果在tagged允许列表中,则保留标签发送出数据帧

    2.如果在untagged允许列表中,则剥离标签发送出数据帧

    3.如果都不在,则不在该接口转发

pvid只对入方向数据打标签,tagged和untagged只对出方向数据保留或剥离标签,并且具有放行列表属性(入方向和出方向)。

配置命令:

port link-type hybrid

port hybrid tagged vlan 10  设置tagged允许列表(发出数据是携带vlan标签的)

port hybrid untagged vlan 10 设置untagged允许列表(发出数据是不携带VLAN标签的)

port hybrid pvid vlan 10  设置接口的PVID值为10

vlan间路由

传统vlan间路由(使用路由器接口)

如图:

使用路由器的接口做为不同子网的网关设备,路由器以及交换机配置如下:

AR1:

interface GigabitEthernet0/0/0
 ip address 192.168.1.254 255.255.255.0 
interface GigabitEthernet0/0/1
 ip address 192.168.2.254 255.255.255.0 
 

SW1:

vlan 10

interface GigabitEthernet0/0/1
 port link-type access
 port default vlan 10
interface GigabitEthernet0/0/2
 port link-type access
 port default vlan 10
 

SW2:

vlan 20

interface GigabitEthernet0/0/1
 port link-type access
 port default vlan 20
interface GigabitEthernet0/0/2
 port link-type access
 port default vlan 20

设备配置完成后,查看PC连通性:

由图可知,使用路由器接口作为不同vlan的网关,实现了vlan间的通信。

优点:配置简单,物理拓扑和逻辑拓扑相同,便于理解。

缺点:路由器的每一个接口都只能连接一个VLAN,路由器的接口资源远远不够使用。

使用路由器子接口实现vlan间路由(单臂路由)

如图:

通过将物理接口虚拟化变为多个可以独立使用的三层子接口,路由器以及交换机配置如下:

AR1:

interface GigabitEthernet0/0/0.10    创建逻辑子接口
 dot1q termination vid 10
 ip address 192.168.1.254 255.255.255.0 
 arp broadcast enable
#
interface GigabitEthernet0/0/0.20     创建逻辑子接口
 dot1q termination vid 20
 ip address 192.168.2.254 255.255.255.0 
 arp broadcast enable

SW1:

vlan batch 10 20

interface GigabitEthernet0/0/1
 port link-type trunk
 port trunk allow-pass vlan 10 20
#
interface GigabitEthernet0/0/2
 port link-type access
 port default vlan 10
#
interface GigabitEthernet0/0/3
 port link-type access
 port default vlan 20
 

设备配置完成后,查看PC连通性:

由图可知,使用路由器子接口作为不同vlan的网关,实现了vlan间的通信。

 逻辑的三层子接口没有独立的MAC地址,而是借用物理接口的MAC地址,即所有子接口的MAC地址都是相同的,不能通过数据封装的MAC地址来判断是哪一个网段的数据

 为了解决无法识别不同网段的数据,通过封装VLAN标签来实现,为了标签能够在路由器的子接口上识别不同网段,所以数据要保留标签发送至路由器的子接口,即交换机接口为trunk类型。

子接口如何识别不同的VLAN标签?

dot1q termination vid 10

    1.子接口接收vlan id 为10的数据帧

    2.在接收tagged数据帧后,可以剥离vlan标签

    3.在发送数据帧时,可以打上VLAN标签

  子接口没有物理接口的ARP广播处理能力

   [AR2-GigabitEthernet0/0/0.1]arp broadcast enable   开启子接口物理接口的ARP广播处理能力

优点:通过子接口可以节省大量的物理接口资源

缺点:多个网段数据使用一个接口转发,容易出现网络拥塞

使用三层交换机实现vlan间路由

如图:

使用三层交换机的虚拟接口做为不同子网的网关三层交换机配置如下:

SW1:

vlan batch 10 20

interface Vlanif10
 ip address 192.168.1.254 255.255.255.0
#
interface Vlanif20
 ip address 192.168.2.254 255.255.255.0
#
interface GigabitEthernet0/0/1
 port link-type access
 port default vlan 10
#
interface GigabitEthernet0/0/2
 port link-type access
 port default vlan 20


设备配置完成后,查看PC连通性:

由图可知,使用三层交换机中的虚拟接口作为vlan的网关,实现了vlan间的通信。

每一个VLAN都对应一个vlanif接口,vlanif接口的MAC地址都是相同的,如何区分不同网段的数据?

通过VLAN标签来区分的。

  vlanif接口对于标签的处理方式?

   1.接收数据时,根据数据帧携带的标签值判断对应的VLANif接口

   2.接收对应tagged数据帧后,执行剥离标签的操作

   3.发送数据帧时,执行打上标签的操作

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词