AR28/AR46系列路由器OSPF多实例简介
OSPF是目前应用最为广泛的IGP路由协议之一,因此许多VPN将会使用OSPF作为其内部路由协议。如果在PE-CE链路上也使用OSPF将会非常便利:CE路由器只需要支持OSPF协议,不需要支持更多的协议;同时,网络管理员也只需要了解OSPF协议;另外,如果客户需要将传统的OSPF骨干区域转换为BGP/MPLS VPN服务,那么在PE和CE之间使用OSPF可以简化这种转换。
为了在BGP/MPLS VPN应用中将OSPF作为PE-CE间的路由协议,此时,PE路由器必须支持同时运行多个OSPF实例,此时,每一个OSPF实例与一个VPN-Instance相对应,拥有自己独立的接口、路由表,并且使用BGP/OSPF交互通过MPLS网络传送VPN的路由信息。
下面具体介绍在PE-CE间配置OSPF需要了解的知识。
(1) PE和CE间的OSPF区域配置
PE与CE之间的OSPF区域可以是非骨干区域,也可以是骨干区域。
在OSPF VPN扩展应用中,MPLS VPN骨干网被看作是骨干区域area 0。由于OSPF要求骨干区域连续,因此,所有VPN节点的area 0必须与MPLS VPN骨干网相连。
即:如果VPN节点存在OSPF area 0,则CE接入的PE必须通过area 0与这个VPN节点的骨干区域相连(可以通过Virtual-link实现逻辑上的连通)。
(2) BGP/OSPF交互
在PE-CE间运行OSPF后,PE与PE通过BGP发布VPN路由,PE通过OSPF向CE发布VPN路由。
以下图为例,PE1和PE2通过MPLS骨干网相连,CE11、CE21和CE22都属于VPN1。假设图中所有路由器属于同一个自治系统,即,CE11、CE21、CE22属于同一个OSPF域(OSPF domain)。
VPN1路由的发布过程大致可以描述为:首先在PE1上将CE11的OSPF路由引入BGP;然后通过BGP将这些VPN路由发布给PE2;在PE2上将BGP的VPN路由引入到OSPF,再发布给CE21和CE22。
如果使用标准的BGP/OSPF交互过程,PE2将把BGP VPN路由通过Type5 LSAs,即ASE LSAs,发布给CE21和CE22。但CE11与CE21、CE22是同一个OSPF域,它们之间的路由发布应该使用Type3 LSAs,即区域间路由。
为了避免上述情况的发生,PE使用一种经过修改的BGP/OSPF交互过程(简称为BGP/OSPF互操作功能),发布从一个Site到另一个Site的路由,并区分这种路由与真正的AS-External路由。这一过程需要BGP使用扩展团队属性,携带可以标识OSPF属性的信息。
在VRP的实现中,要求每个OSPF域有一个可配置的域ID(Domain ID)。一般建议:与每个VPN实例相关的网络中的所有OSPF实例要么配置一个相同的域ID,要么都使用缺省的0作为域ID。这样在收到BGP的VPN路由时,域ID相同的是来自同一VPN实例的路由。
(3)路由环的检测
假设PE与CE之间通过OSPF骨干区域相连,且同一个VPN节点(Site)连接到不同的多个PE。这种情况下,当一个PE通过LSA向VPN节点发布从MPLS/BGP学的BGP VPN路由时,LSA可能被另一个PE接收到,造成路由环。
为了防止产生路由环,对于从MPLS/BGP学到的BGP VPN路由,无论PE与CE间是否通过OSPF骨干区域相连,PE在生成Type3 LSA时,都会设置标志位DN。PE路由器的OSPF进程在进行路由计算时,忽略DN置位的Type3 LSAs。
如果PE需要向CE发布一条来自其它OSPF域的路由,则PE应表明自己是ASBR,并将该路由作为Type5 LSA发布。为OSPF实例配置的VPN Route Tag包含在Type5或Type7的LSA中。PE路由器的OSPF进程在进行路由计算时,如果Type5或Type7的LSA的tag值与PE路由器上配置的route tag相同,则忽略此LSA。
该案例暂时没有网友评论
✖
案例意见反馈
亲~登录后才可以操作哦!
确定你的邮箱还未认证,请认证邮箱或绑定手机后进行当前操作