为什么 VPN MPLS L3 中的两个 VPN 可以具有相同的地址?

网络工程 聚光灯 mpls-vpn
2021-08-02 11:39:13

在这种情况下,我无法理解一件事:

在此处输入图片说明

这是使用 mpls 的第 3 层 vpn 的架构。我不明白为什么连接到 VPNa 和 VPNb 的设备可以具有相同的地址,我的意思是,PE 如何区分它?我知道一点,我知道他们使用名为 VRF 的路由表,但我不明白,如果我在 VPNa 中,IP 为 172.0.2.5,而 VPNb 上还有另一个设备具有该地址 (172.0.2.5), PE如何区分该流量并区分它?谢谢我谷歌了很多次,但我找不到和回答。

1个回答

当流量从客户到达 PE 路由器时,它到达的接口与 VRF 相关联。路由器将只在 VRF 路由表中查找相关 VRF 的目的地。如果接口与 VRF A 关联,路由器将只能看到存在于 VRF A 中的 172.0.2.5。如果接口与 VRF B 关联,路由器将只能看到存在的 172.0.2.5在 VRF B 中。路由器将从与同一 VRF 关联的另一个接口本地转发流量,或者如果目的地在另一个 PE 路由器上,则流量封装在 MPLS 中并转发到出口 PE 路由器。

如果您熟悉 VLAN,那么 VRF 非常相似,但位于 L3 而不是 L2。当一个帧到达交换机时,该端口与一个 VLAN 相关联,并且交换机在该 VLAN 的 MAC 地址表中查找目标 MAC 地址。第 3 层的 VRF 存在相同的概念。当数据包到达路由器时,该接口与 VRF 相关联,交换机在该 VRF 的路由表中查找目标 IP 地址,然后从该接口转发出去(也在同一个 VRF 中)。