没有标记交换机访问端口吗?

网络工程 VLAN 树干
2021-07-11 20:16:34

我已经读过只有在通过后备箱时才会标记帧端口并且访问端口不会标记通过它们的帧。但是访问端口实际上不是标记帧吗?当我将特定端口配置为位于特定 VLAN(例如 VLAN 5)中时,当流量从 PC 进入接入端口时,该帧是否会被标记为为该端口配置的相应 VLAN?如果该帧没有被交换机的访问端口标记(假设访问端口没有配置本地 VLAN,而是另一个 VLAN,例如 VLAN5),那么中继如何知道要在其上放置什么标记(VLAN 5)帧,因为它通过中继发送它。如果我能够将交换机的接入端口配置为属于特定的 VLAN,那么当帧进入交换机接入端口时,为什么交换机不标记该帧?是不是 这是配置具有特定(非本地)VLAN 的接入端口的要点 - 标记帧以界定帧可以传输的位置?此外,当从 PC 进入交换机访问端口时,是否不需要标记帧,这样交换机就会知道(如果它是广播)广播应该被定界到哪里(仅该 VLAN 内的端口)?

4个回答

我认为您对交换机内部发生的事情感到困惑。它如何跟踪哪个端口在哪个 VLAN 中取决于制造商。

重要的是要记住 802.1q 帧是一种不同于“标准”以太网 (802.3) 的格式。标准以太网帧没有 VLAN ID。当 PC 或其他设备向/从交换机的接入端口发送/接收以太网帧 (802.3) 时,它们会发送和接收以太网帧 (802.3)。

当交换机在中继上传输帧时,它使用 802.1q 成帧,其中包括 VLAN 标记。如果交换机正在传输带有标记的帧,则该端口是中继端口。大多数主机不理解 802.1q 帧,因此它们会忽略它们。这就是为什么您可以在同一个端口上有标记和未标记的帧的原因。但它仍然是一个中继端口。

访问链接(端口)提供给任何没有标签的设备。当流量离开该 VLAN 进入交换机以到达不在同一 VLAN 上的目的地时,它会在每个帧中添加一个 VLAN 标记,以允许交换机正确转发它。当您谈到本地 VLAN 时,它是两个设备同意发送非标记数据包的公共 VLAN。cisco 交换机上的默认 VLAN 是 VLAN 1。设备需要一个通用的 untag 网络来进行通信。标签用于转发目的。它们在 VLAN 内不提供任何价值。

因此,让我们假设根据您的问题有一个与 VLAN5 关联的访问端口。当设备连接到此访问端口时,以太网交换表会更新 MAC 地址并将其与接口配置的关联 VLAN(在本例中为 VLAN5)相关联。当一个帧被发送时——当它进入访问端口时它仍然是未标记的——并且在它到达 TRUNK 端口之前保持不变。现在,当中继端口接收到帧时,它只需在以太网交换表中查找 MAC 地址并查看其关联的 VLAN,然后对其进行标记。

希望这能澄清它。

这里有很好的信息,但我想补充另一个观点。VLAN 很简单,但由于某种原因,描述它们的文献常常是含糊不清的。我将要描述的内容有例外,但不适用于简单/典型情况。

在讨论访问端口时,有两种不同的身份在起作用,这会导致您感到困惑。一个是801.2q帧的VLAN标签,另一个是端口的VLAN关联(通常称为PVID,为Port Vlan ID)。它们不相关或用于同一目的。

交换机端口的 PVID 仅用于内部交换机目的。它用于将接入端口与交换机上的其他端口相关联。一个端口可以同时拥有多个 PVID。

当中继端口需要将帧传输到另一个设备时,VLAN 标记就会发挥作用。它不用于在接收帧的交换机内引导帧。接入端口上的帧在被端口接收时通常没有标记。

这是一个带有 VLAN 5 的帧的故事。它源自接入端口上的 PC 并且没有标记,因此它还不属于 VLAN。接入端口被配置为无标签(意味着它不会向它传输的帧添加标签)和 PVID 5。一旦接入端口(通常称为“入口”)接收到该帧,交换机就会将帧定向到正确的VLAN 5 上的目标端口。请注意,该帧尚未标记;交换机使用其 PVID 表而不是 VLAN 标记来建立这种关联。同时,此交换机上有一个中继端口,称为中继,因为它已配置为标记并具有 5 的 PVID(可能还有其他 VLAN)。由于它凭借其 PVID 属于 VLAN 5,如果交换机决定有必要,它会将这个未标记的帧定向到中继端口,并且由于它是中继线,因此将为其添加标签,将其从 802.3 转换为 801.2q。新生成的标记帧从中继端口传输(“出口”),中继线另一端的设备将在接收时决定如何处理它,可能取消标记并将其定向到一个端口PVID 为 5。请注意,中继端口在收到从另一台交换机发送的带有 VLAN 5 标记的帧时,将剥离标记并将其定向到适当的 VLAN5 端口。

现在具体回答你的问题:

但是访问端口实际上不是标记帧吗?

不,通常不会。

如果该帧没有被交换机的接入端口标记......,那么当它通过中继发送它时,中继如何知道在该帧上放置什么标签(VLAN 5)

因为它知道发送数据包的端口的 PVID,它对应于标记中的 VLAN 值。

如果我能够将交换机的接入端口配置为属于特定的 VLAN,那么当帧进入交换机接入端口时,为什么交换机不标记该帧?

因为内部交换机路由不需要标签。PVID 用于此目的。

这不是用某个(非本地)VLAN 配置访问端口的重点 - 标记帧以界定帧可以传输的位置吗?

“有点。” 从您的角度来看,是的,但从交换机的角度来看,PVID 的唯一目的是将其与该交换机上的其他端口相关联。请记住,“使用... VLAN 配置访问端口”意味着设置其 PVID,而不是标记。在非本地 VLAN(交换机上的其他接入端口未使用的 VLAN)的情况下,中继线必须与入口端口共享 PVID,以使其成为有用的配置。

此外,当从 PC 进入交换机访问端口时,是否不需要标记帧,这样交换机就会知道(如果它是广播)广播应该被定界到哪里(仅该 VLAN 内的端口)?

否。交换机将使用接入端口的 PVID 来决定将帧定向到何处。