我不是系统管理员(电气工程师,所以我开发 ASIC),但我遇到了一个需要更好地理解切换的问题。
我有一台设备(A),它有预标记的流量出来,还有两台设备(B 和 C)将发送未标记的流量。
我希望设备 A 能够将其部分标记流量发送到 B,并将另一个标记上的其他流量发送到 C。
假设 A 发送了标签 10 和 20。
因此,我的看法是,我将设置交换机,使端口 A 成为 VLAN 10 和 20 上的标记端口,而端口 B 和 C 则是分别位于 10 或 20 上的未标记端口。
如果这是错误的,请告诉我,但我对此设置的疑问是,交换机是否知道在到达设备 B 和 C 之前剥离 VLAN 标签,是否知道在来自 B 和 C 的数据包中添加 VLAN 标签?如果是这种情况,这个 VLAN 标签是否会在到达设备 A 之前被剥离?
网上的一些解释看起来确实相互矛盾。
我可以访问的一个示例交换机是极端网络交换机。
答案1
在托管交换机中,所有帧都以某种 VLAN ID 进行标记/标识,因此交换机会在帧进出交换机的各个端口时不断添加和删除该信息。例如,这就是交换机如何将不同 VLAN 中两个未标记端口上的流量分开的方式。
因此,当您为标记/未标记流量配置各种端口时,您所做的一切实际上是告诉交换机在帧离开交换机时是否将标记放入标准 802.1q 格式,还是将其完全剥离。在您的示例中,端口 A 将始终发送并期待带有标记的流量,B 和 C 将使用编程的 VLAN 自动标记进入端口的流量,并删除离开端口的流量上的标记。
在思科世界(以及大多数企业网络)中,我们将 B 和 C 等端口称为“访问端口”。这些端口分配给交换机内的单个 VLAN,不支持对进出流量进行标记。我们可以将 A 等端口称为中继端口,因为它们承载多个 VLAN,标记出端口的流量并信任通过端口进入的标记。