我听说过有关VLAN标记的信息,但是我不太了解这个概念。我知道,如果不配置本机VLAN,中继线将不接受未标记的数据包,而访问端口仅接受未标记的数据包。但是我不明白为什么数据包需要加标签或不加标签。它有什么作用?
我听说过有关VLAN标记的信息,但是我不太了解这个概念。我知道,如果不配置本机VLAN,中继线将不接受未标记的数据包,而访问端口仅接受未标记的数据包。但是我不明白为什么数据包需要加标签或不加标签。它有什么作用?
Answers:
如果端口(“中继端口”)上有多个VLAN,则需要某种方法来判断哪个数据包属于另一端的哪个VLAN。为此,您要使用VLAN标签(或VLAN标头,如果您愿意)“标记”数据包。实际上,将VLAN标签插入以太网帧,如下所示:
802.1Q(dot1q,VLAN)标签包含VLAN-ID和802.1Q标准中说明的其他内容。前16位包含为8100的“标记协议标识符”(TPID)。对于不了解VLAN的设备,这也将作为EtherType 0x8100的两倍。
因此,“已标记”数据包在以太网帧中包含VLAN信息,而“未标记”数据包则没有。一个典型的用例是,如果您有一个从路由器到交换机的端口,并且有多个客户连接到该端口:
在此示例中,客户“绿色”具有VLAN 10,客户“蓝色”具有VLAN20。交换机和客户之间的端口是“未标记的”,对客户而言,到达的数据包只是普通的以太网数据包。
路由器和交换机之间的端口配置为中继端口,以便路由器和交换机都知道哪个数据包属于哪个客户VLAN。在该端口上,以太网帧被标记为802.1Q标签。
上面的答案是非常技术性的。这样想:
实际上,与物理VLAN相比,VLAN和标记不过是网络的逻辑分离。这是什么意思?
如果没有VLAN,则每个广播域都需要一个交换机。想象一下所涉及的布线以及主机所需的潜在NIC数量。因此,首先,VLAN使您可以在同一交换机内具有多个独立的第2层构造。
由于现在您可以在每个链接/端口上拥有多个网络,因此您必须能够以某种方式区分哪个数据包属于哪个网络。这就是为什么它们被标记。如果端口承载多个VLAN,则通常也称为中继。(对于n> 1个VLAN,必须标记至少n-1个VLAN,并且可以有一个未标记的VLAN,即本地VLAN)
通常,您必须在端口入口(从电缆“传入”)和出口(从电缆“进入”)中区分数据包:
入口
入口未标记的入口:这是端口的本地vlan进入的地方。如果交换机配置了多个VLAN,则必须告诉交换机传入的未标记数据包属于哪个VLAN;
入口标记的:好吧,如果它是带标记的,那么它就被标记了,您对此无能为力。如果交换机不知道标记或确切的VLAN,它将拒绝它,但是有时您必须激活某种入口过滤器。您还可以强制端口仅接受未标记或标记的数据包。
出口
无标记出口:对于每个端口,您可以选择一个VLAN,该VLAN的该端口上的出站数据包未标记(例如,因为主机不支持该VLAN,或者例如,对于PC,打印机等,仅需要一个VLAN);
出口标记:您必须告诉交换机在端口上提供哪些VLAN,如果有多个VLAN,则必须标记除一个之外的所有VLAN。
交换机内部会发生什么
一个开关具有一个FDB(˚F orwarding d ATA 乙酶),其
在不具有VLAN功能的交换机中(有时称为“非托管”或“哑巴”,...):将主机(MAC地址)与端口相关联:FDB是一个由两个元素的元组组成的表:港口)
在具有VLAN功能的交换机中(有时称为“托管”或“智能”,...):将(VLAN,MAC)元组关联到端口:FDB是一个表,由三个元素的元组组成:(MAC,端口,VLAN)。
唯一的限制是,即使在不同的端口上,一个MAC地址也不能出现在同一VLAN中两次(实际上,具有VLAN功能的交换机中的VLAN替换了不具有VLAN功能的交换机中的端口概念)。换一种说法:
希望这能消除混乱;-)
事实VLAN封装协议为802.1Q(dot1.q)。它的最基本功能是在交换机之间保留VLAN。由于VLAN在本地对交换机很重要,因此您必须标记要发送给附近交换机的帧,以使它们知道该帧属于哪个逻辑组。