400-035-6699
当前位置: 首页 » 技术支持 » 博文资讯 »

一文详解交换机间VLAN通信全流程

虚拟局域网VLAN)技术是一种通过逻辑上划分物理网络来创建多个独立广播域的技术。它允许在单个物理网络中分隔出多个虚拟网络,使得不同VLAN之间的通信就像是在不同的物理网络中进行一样。这种隔离不仅提高了网络的安全性,也增加了网络的灵活性和可管理性
VLAN的工作原理基于交换机的能力,该交换机可以识别每个端口的数据包,并根据其所属的VLAN来转发或隔离这些数据包。交换机内部的数据帧都会带有VLAN标签(VLANTag),这是一个唯一的标识符,用来确定数据帧所属的VLAN。当数据帧到达交换机时,如果数据帧没有标签,交换机将会根据端口的默认VLAN标识(PVID)来为数据帧添加VLAN标签。
不同类型的交换机端口对数据帧的处理方式也不同。例如,接入端口(Access Ports)通常连接到单个设备(如计算机),它们会自动给进入的数据帧添加VLAN标签,并在将数据帧发送出去时移除标签。而干线端口(Trunk Ports)通常连接到另一台交换机,它们会保留数据帧中的VLAN标签,以便另一台交换机能正确地识别并转发数据帧。
实际应用中,VLAN的配置和管理可以通过网络管理软件来实现。管理员可以轻松地创建、删除或修改VLAN,也可以将端口分配到不同的VLAN中。这种灵活性使得网络可以根据不同的需求进行调整和优化。
VLAN之间的通信通常需要通过三层设备,如路由器三层交换机防火墙等。这是因为VLAN之间的数据包需要在不同的广播域之间进行转发,而这是二层交换机的功能所不能实现的。三层设备可以通过路由功能来转发这些数据包,并且可以根据需要实施安全策略,如访问控制列表(ACL),以保护网络的安全。
此外,VLAN的配置和使用也遵循一定的协议和标准。例如,802.1QIEEE制定的用于标记VLAN的数据帧的标准。根据这个标准,数据帧的头部会包含一个VLAN标签,这个标签由VLAN标识符(VID)和优先级标识符(Priority)两部分组成。VID是一个12位的数字,用于标识VLAN,而Priority则用于指定数据帧的传输优先级。
VLAN技术是现代网络中不可或缺的一部分,它极大地提高了网络的性能和安全性。通过将网络划分为多个逻辑上的广播域,VLAN可以帮助网络管理员更有效地管理网络,同时也提高了网络的可靠性和可扩展性。随着网络技术的发展,VLAN技术也在不断进步和扩展,为构建更加高效和安全的网络环境提供了强大的支持。

VLAN(VirtualLocalAreanetwork,虚拟局域网),通过在支持VLAN的交换机上添加VLAN,并且动态的调整每个端口所属VLAN(默认端口都属于VLAN1),实现一台物理交换机上可以有多个LAN,每个LAN称作VLAN,VLAN之间的广播互不可达,VLAN间互不影响。每个VLAN是一个独立的广播域,如果不同VLAN中的结点想要互相访问,需要通过一台三层或三层以上设备才能实现(比如路由器、三层交换机、防火墙等)。这样就增加了安全性,可以在三层设备上配置访问列表来达到流量控制的目的。

一文详解交换机间VLAN通信全流程

为了提高处理效率,交换机内部的数据帧一律都带有VLANTag,以统一方式处理。当一个数据帧进入交换机接口时,如果没有带VLANTag,且该接口上配置了PVID(PortDefaultVLANID),那么,该数据帧就会被标记上接口的PVID。如果数据帧已经带有VLANTag,那么,即使接口已经配置了PVID,交换机不会再给数据帧标记VLANTag。

由于接口类型不同,交换机对帧的处理过程也不同。下面根据不同的接口类型分别介绍。

表1各类型接口对数据帧的处理方式

  

交换机间VLAN通信过程

这一部分结合下图,讲解一下802.1Q干线协议的工作流程:

图中PC1和PC2属于VLAN2,PC3和PC4属于VLAN3,SW1和SW2通过干线相连,干线运行的是802.1Q协议。

假设PC1发送消息给PC2,刚开始PC1不知道PC2的MAC地址,所以它首先发送ARP查询包,查询PC2的MAC地址,ARP查询包以广播形式发送。

交换机SW1收到PC1发送过来的ARP查询广播包,SW1知道数据是从fa0/0接收到的,fa0/0被划分到VLAN2中,是一个接入端口,SW1知道这是一个来自VLAN2的广播包,SW1在MAC地址表中加入PC1的MAC和VLAN号以及对应的端口号,非VLAN交换机和VLAN交换机都会根据数据的源地址进行学习,只不过VLAN交换机除了记录源MAC地址,还需要记录源MAC所对应的VLAN号。

SW1在收到的数据帧中加入VLAN2的标识(VLAN交换机从Access(接入)端口收

到数据时需要插入VLAN标识),接着SW1将这个VLAN2的广播包从除接收端口以外的所有属于VLAN2的接口以及主干发送出去,在从所有属于VLAN2的接入接口发送出去前需要去掉VLAN标识(VLAN交换机从Access将数据发出时要去掉VLAN标识,否则其他计算机不能识别这个加了标识的帧),从主干发送出去的帧不需要去掉VLAN标识(后面介绍到的本地VLAN除外)。也就是说如果此时SW1上还有一个非主干端口也被分配到VLAN2中,这个广播从这接入端口送出前要去掉VLAN标识,而从SW1的fa0/2发往SW2的数据帧不需要去掉VLAN标识(本地VLAN除外)。

PC3接收不到PC1发出的ARP广播请求,因为连接PC3的端口被划分到VLAN3中了,不属于VLAN2,一个VLAN是一个广播域。

当SW2从自己的fa0/2接口(主干接口)接收到一个数据帧时,SW2查看数据帧中的VLAN标识,并在本地MAC地址表中添加了帧中源MAC地址、VLAN号以及对应的端口号fa0/2。接下来SW2将决定往哪转发这个收到的数据帧,SW2通过查看VLAN标识和目的MAC地址,知道这是一个VLAN2的广播ARP查询包,SW2将这个包从除接收接口(fa0/2)以外的所有属于VLAN2的接口以及其他的主干接口(如果有)发送出去,同理,在发出去之前,如果接口属于接入接口,则去掉VLAN标识,如果是主干端口则保留VLAN标识。

PC4是收不到这个广播包的,因为不属于VLAN2,这个时候PC2收到了这个ARP请求包,发现请求的是自己的MAC地址,PC2封装ARP应答包发给SW2。

SW2收到这个应答包,首先学习PC2的MAC地址和VLAN号以及对应端口到自己的MAC地址表,然后给这个数据帧添加VLAN2标识,之后SW2查询MAC地址表,找到PC1对应的MAC号、VLAN号和端口号,SW2比较数据帧的源MAC和目的MAC在同一个VLAN2中,SW2将数据帧从目的MAC对应的fa0/2接口发出(PC1的MAC是第5步中收到SW1

发来的数据帧的时候记录的)。

SW1收到这个数据帧,首先也是对源MAC、VLAN号以及对应端口进行学习,然后查看数据帧中的目的MAC,之前已经保存过PC1的MAC,SW1将目的MAC所在VLAN号和源MAC所在VLAN号进行对比,发现他们处于同一个VLAN2下,SW2将这个数据帧中的VLAN标记去除并直接从目的MAC(PC1的MAC)所对应的端口fa0/0发给PC1。

PC1成功收到ARP应答包,接下来的通信过程和这个步骤类似。

总结:交换机何时添加802.1Q标签头(VLAN标签)与交换机的接口有关,如果交换机的接口接的是一台计算机,那么这个端口是接入端口,在数据帧进入时被添加802.1Q标签头,数据帧从接入端口发出时去掉标签头;如果交换机的接口接的是另外一台交换机,那么这个接口就属于主干接口(Trunk),数据从这种接口发出一般不会去掉标签头(后面演示的NativeVLAN除外)。
责任编辑人:CC

【限时免费】一键获取网络规划系统模板+传输架构设计+连通性评估方案

VLAN相关文章

服务电话:
400-035-6699
企服商城