我不确定我是在这里还是在ServerFault中提出这个问题。但由于问题更多的是关于网络的概念而不是它在特定硬件中的实现,我决定在这里发布它。
根据我的理解,路由目标在MPLS-VPN中用于区分PE路由器中的不同VRF。
假设任何两个VPN之间没有共享站点,那么导出和导入路由目标是相同的,因此PE可以将传入BGP数据包中的路由目标与其自己的导出路由目标进行比较,并安装在相应的VRF中
我怀疑的是,当有多个站点属于多个VPN时,如何处理这些路由目标的分配?
路由是否针对所有PE中手动安装的各种VRF?
如果是这样不会导致可扩展性问题?
如果没有,那么VRF的路径目标是如何安装的?
答案 0 :(得分:2)
根据我的理解,路由目标在MPLS-VPN中用于区分PE路由器中的不同VRF。
换句话说,路由目标用于在PE路由器上实现VRF的VRF路由导入和导出策略。
我的疑问是,当有多个站点属于多个VPN时,如何处理这些路由目标的分配?
正如所写的那样,当你说“属于多个VPN”时你的意思含糊不清,因为不清楚你是否只想在单个站点内保留VRF分离(参见下面的例1中的Site_C) ,或者您是否希望单个站点的路由表从两个不同的VRF接收路由(请参阅下面的示例2中的Site_BB)。这个答案将使用下图作为参考......
特别注意PE路由器附近的小方框。这些框表示接口本地的路由和转发表;思科将这些表称为VRF。 VRF_A仅处理来自连接到粉红云的CE路由器的数据包。 VRF_B仅处理来自连接到蓝云的CE路由器的数据包。
多协议BGP用于通过服务提供商网络(白云)公布来自每个VRF的路由。白云内的设备从不安装粉红色和蓝色路由(即使其他ISP路由器正在运行bgp);这是因为在PE路由器收到它们之后,这些路由被转换为一个名为VPNv4的特殊BGP地址族。 VPNv4地址族提供了一种区分来自不同客户的类似路由的方法; VPNv4还携带附加到每个路由(称为route-distinguishers)和路由目标的特殊BGP属性,这些路由是扩展的BGP社区。 p>
路线目标通常以<asn>:<custom_numer>
的形式指定。路由目标手动分配给每个PE路由器上的VRF。 PE路由器收到VRF中CE的路由后,会使用route-distinguisher对这些路由进行标记,使其成为服务提供商唯一的VPNv4地址,并使用路由目标对其进行标记,实现路由导入和导出策略。
假设VPN_A具有Site_AA,Site_AB和Site_C。 CE_Site_AA,CE_Site_AB和粉红色接口CE_Site_C通过粉红色链路与各自的PE路由器运行OSPF。 PE路由器将带有rt 100:1
的VRF_A上通过OSPF接收的路由导出,并通过多协议BGP通告这些路由。当PE路由器收到标有rt 100:1
的MP-BGP路由时,会将这些路由导入VRF_A,并在粉红色接口上携带OSFP。
假设VPN_B具有Site_BA和Site_BB。 CE_Site_BA,CE_Site_BB和CE_Site_C上的蓝色接口通过蓝色链路与各自的PE路由器运行OSPF。 PE路由器通过rt 100:2
在VRF_B上导出通过OSPF接收的路由,并使用多协议BGP通告这些路由。当PE路由器收到标有rt 100:2
的MP-BGP路由时,会将这些路由导入VRF_B,并在蓝色接口上携带OSFP。
值得注意的是,CE_Site_C必须在PE_3的两个接口/子接口上使用VRF,以保持VRF_A和VRF_B的流量分离。
我们将扩展示例1以将172.16.1.0/24暴露给Site_BB。
假设我们需要在Site_BB中将172.16.1.0/24从Site_AA公开到VRF_B。此时,PE_1需要使用rt 100:1
和rt 100:51
导出172.16.1.0/24。 PE_2现在将用rt 100:2
标记的VPNv4路由导入VRF_B,并导入rt 100:51
以接收172.16.1.0/24到VRF_B。如果Site_BB需要以类似的方式向Site_AA公开其路由,则PE_2需要使用rt 100:52
标记一个或多个适当的DMZ子网,因此可以将其导入PE_1上的VRF_A。
答案 1 :(得分:0)
在对该主题进行一些研究并与Mike进行了富有成效的讨论之后,我想我对如何分配路线目标有了一个很好的了解。所以我决定回答我自己的问题。
引用Mike的回答
路由目标用于在PE路由器上实现VRF的VRF路由导入和导出策略。
当我们有PE路由器发送从属于多个VPN的站点接收的控制平面信息时,就会出现问题。 PE应该有一些方法来决定哪个路由目标(从而发信号通知该控制信息属于哪个VPN)来分配它发送的BGP控制数据包。
需要注意的重要一点是,VRF是在特定接口上配置的,路由目标是为接口配置的。
所以,如果我们有一个属于3个VPN的站点,那么站点的CE和相应的PE应该通过3个不同的接口(或子接口)和分配给每个接口的特定路由Target连接(或者子接口)。
关于我的其他问题
路由是否针对所有PE中手动安装的各种VRF?
根据我在线搜索收集的内容,路由目标确实是在路由器上手动配置的。