关于RD和RT的意义

在MPLS BGP VPN等场景中必须要规划RD和RT两个参数,那么这两个参数的本质意义是什么?为什么一条路由至少需要两个参数来标识,一个不够吗?
首先看定义。
RD和VPN-IPv4地址
传统BGP无法正确处理地址空间重叠的VPN的路由。假设VPN1和VPN2都使用了10.110.10.0/24网段的地址,并各自发布了一条去往此网段的路由。
PE之间使用MP-BGP(Multiprotocol Extensions for BGP-4,BGP-4的多协议扩展)来发布VPN路由,并使用VPN-IPv4地址来解决上述问题。
在这里插入图片描述
简单来说,RD就是在IPv4地址前面加个标记,这样相同的IP地址就有了区分。

VPN Target
BGP/MPLS IP VPN使用BGP扩展团体属性-VPN Target(也称为Route Target)来控制VPN路由信息的发布。
每个VPN实例关联一个或多个VPN Target属性。有两类VPN Target属性:
Export Target:本地PE从直接相连Site学到IPv4路由后,转换为VPN-IPv4路由,并为这些路由设置Export Target属性。Export Target属性作为BGP的扩展团体属性随路由发布。
Import Target:PE收到其它PE发布的VPN-IPv4路由时,检查其Export Target属性。当此属性与PE上某个VPN实例的Import Target匹配时,PE就把路由加入到该VPN实例中。
简单来说,RT就是控制路由进出的标记。

那么问题来了,不能用一个RT即作为控制路由进出的标记,又作为区分IP地址的标记吗?
答案肯定是:
其实抓个MP-BGP update的包看一下就知道了,第一张图是update 路由更新10.0.0.4,可以看到update里有全部的路由属性包括扩展团体属性RT以及RD。
关于RD和RT的意义_第1张图片
但是第二张图update 撤销路由10.0.0.4就不一样了,很显然并不包含团体属性,RT是一种扩展团体属性自然也就不在其中了。
withdrawn消息里只有RD和地址前缀。
关于RD和RT的意义_第2张图片
路由不仅要通告生成还要通告撤销,所以RD和RT缺一不可。

你可能感兴趣的:(网络知识,网络协议,网络,路由器)