OSPF VPN学习理解 | 您所在的位置:网站首页 › ce和pe之间可以使用哪些路由协议 › OSPF VPN学习理解 |
文/许亮、徐伟、张翔 1 综述对于穿越BGP/MPLS/VPN域的路由协议多实例应用,OSPF 普通VPN形式,类似于Static Routes/RIP/BGP等其他路由协议的多实例应用,在CE和PE之间建立对应路由协议多实例,然后在MBGP中引入多实例的路由协议,由MBGP将相应路由传递到BGP/MPLS/VPN域的对端后再发布到对应路由协议多实例中,以完成路由的完整发布。 以上OSPF普通VPN形式,MBGP处理仅能还原生成3/5/7类LSA,无法正确传递携带路由拓扑信息的其他类型LSA,如此将导致OSPF路由拓扑的割裂。同时存在backdoor链路情况下,因为域内路由优先级高的原因将导致无法优选到穿越BGP/MPLS/VPN传递的路由。鉴于此,引入Sham-link方式的OSPF VPN形式,该模式下在PE-PE之间建立单独的OSPF连接,也就是Sham-link,可以认为是一条OSPF区域内的P2P的伪链路,性质类似于Virtual-link,通过该链路直接发布接收OSPF协议报文,从而保留所有LSA的内容信息。 下面首先来搭建一个BGP/MPLS/VPN的实例环境。 2 BGP/MPLS/VPN实例环境的搭建2.1 网络拓扑以下环境中,PE1、P、PE2构成BGP/MPLS/VPN域,它们之间的互联互通由IGP保证(可以是Static Routes/RIP/ISIS/OSPF等,这里采用ISIS),同时使能MPLS,并采用LDP分发公网标签,建立LSP。在PE1与PE2之间运行MBGP来传递路由。CE1、CE2为普通接入路由器,没有特殊配置。以CE1与PE1直连区域为0区,CE1与RTA直连区域为1区,CE1与RTB直连区域为0区, PE2和CE2直连区域为0区为例。 因PE1、PE2配置完全对称,这里仅给出PE1的配置。 1、配置系统router id、vpn-instance和全局IGP协议: # router id 49.0.0.2 # ip vpn-instance vpn1 route-distinguisher 1:1 vpn-target 1:1 export-extcommunity vpn-target 1:1 import-extcommunity # isis 4 network-entity 00.0000.0000.4001.00 # 2、配置MPLS和LDP: # mpls lsr-id 49.0.0.2 # mpls lsp-trigger all # mpls ldp # 3、配置公网接口: # interface LoopBack0 ip address 49.0.0.2 255.255.255.255 isis enable 4 # interface Vlan-interface30 ip address 30.0.0.1 255.255.255.0 isis enable 4 mpls mpls ldp # 4、配置私网接口: # interface LoopBack1 ip binding vpn-instance vpn1 ip address 49.0.0.2 255.255.255.255 # interface Vlan-interface100 ip binding vpn-instance vpn1 ip address 100.0.0.1 255.255.255.0 # 5、配置MBGP: # bgp 100 undo synchronization peer 49.0.0.1 as-number 100 peer 49.0.0.1 connect-interface LoopBack0 # ipv4-family vpnv4 peer 49.0.0.1 enable # # 2.3 P上的配置P设备只需运行MPLS、LDP和公网IGP协议,配置如下: # router id 19.0.0.1 # mpls lsr-id 19.0.0.1 # mpls lsp-trigger all # mpls ldp # isis 4 network-entity 00.0000.0000.4002.00 # interface Ethernet0/0 port link-mode route ip address 30.0.0.2 255.255.255.0 isis enable 4 mpls mpls ldp # interface Ethernet0/1 port link-mode route ip address 40.0.0.2 255.255.255.0 isis enable 4 mpls mpls ldp # interface LoopBack0 ip address 19.0.0.1 255.255.255.255 isis enable 4 # 3 OSPF VPN普通模式OSPF VPN普通模式下,PE建立多实例OSPF VPN,然后配置与MBGP互相引入;CE只需配置普通OSPF与PE建立peer即可。 3.1 PE增加配置以PE1为例配置,PE2做对称配置。 1、建立OSPF VPN实例与CE建立邻居关系,配置引入BGP获得从对端私网传来的路由: # ospf 4 vpn-instance vpn1 import-route bgp area 0.0.0.0 network 100.0.0.0 0.0.0.255 # 2、配置BGP vpn-instance vpn1地址族,先不引入OSPF实例: # ipv4-family vpn-instance vpn1 # 3.2 CE的配置1、CE1配置普通OSPF,与PE1、RTB建立0区关系,与RTA建立1区关系: # ospf 4 area 0.0.0.0 network 100.0.0.0 0.0.0.255 network 102.0.0.0 0.0.0.255 area 0.0.0.1 network 101.0.0.0 0.0.0.255 # 2、CE2与PE2建立普通OSPF 0区邻居关系: # ospf 4 area 0.0.0.0 network 200.0.0.0 0.0.0.255 # 3.3 RTA、RTB配置1、RTA配置普通OSPF,与CE1建立1区关系,并引入静态路由: # ip route-static 103.0.0.0 255.255.255.0 NULL0 # ospf 4 import-route static area 0.0.0.1 network 101.0.0.0 0.0.0.255 # 2、RTB配置普通OSPF,与CE1建立0区关系: # ospf 4 area 0.0.0.0 network 102.0.0.0 0.0.0.255 # 3.4 OSPF VPN与MBGP引入之前的情况等所有OSPF邻居关系FULL后,查看PE1的LSDB和相关路由表: [PE1]display ospf 4 lsdb OSPF Process 4 with Router ID 49.0.0.2 Link State Database Area: 0.0.0.0 Type LinkState ID AdvRouter Age Len Sequence Metric Router 66.0.0.8 66.0.0.8 26 48 80000009 0 Router 49.0.0.2 49.0.0.2 726 36 80000005 0 Router 75.0.0.2 75.0.0.2 27 36 80000003 0 Network 102.0.0.1 66.0.0.8 22 32 80000002 0 Network 100.0.0.2 66.0.0.8 727 32 80000003 0 Sum-Net 101.0.0.0 66.0.0.8 1630 28 80000001 1 Sum-Asbr 50.0.0.60 66.0.0.8 99 28 80000001 1 AS External Database Type LinkState ID AdvRouter Age Len Sequence Metric External 103.0.0.0 50.0.0.60 105 36 80000001 1 可以看到该LSDB中包含了所有1-5类LSA。 [PE1]display ospf 4 routing OSPF Process 4 with Router ID 49.0.0.2 Routing Tables Routing for Network Destination Cost Type NextHop AdvRouter Area 100.0.0.0/24 1 Transit 100.0.0.1 66.0.0.8 0.0.0.0 102.0.0.0/24 2 Transit 100.0.0.2 66.0.0.8 0.0.0.0 101.0.0.0/24 2 Inter 100.0.0.2 66.0.0.8 0.0.0.0 Routing for ASEs Destination Cost Type Tag NextHop AdvRouter 103.0.0.0/24 1 Type2 1 100.0.0.2 50.0.0.60 Total Nets: 4 Intra Area: 2 Inter Area: 1 ASE: 1 NSSA: 0 可以看到,实际得到OSPF路由四条。 [PE1]display ip routing-table vpn-instance vpn1 Routing Tables: vpn1 Destinations : 8 Routes : 8 Destination/Mask Proto Pre Cost NextHop Interface 49.0.0.2/32 Direct 0 0 127.0.0.1 InLoop0 100.0.0.0/24 Direct 0 0 100.0.0.1 Eth8/0 100.0.0.1/32 Direct 0 0 127.0.0.1 InLoop0 101.0.0.0/24 OSPF 10 2 100.0.0.2 Eth8/0 102.0.0.0/24 OSPF 10 2 100.0.0.2 Eth8/0 103.0.0.0/24 O_ASE 150 1 100.0.0.2 Eth8/0 127.0.0.0/8 Direct 0 0 127.0.0.1 InLoop0 127.0.0.1/32 Direct 0 0 127.0.0.1 InLoop0 可以看到在路由表中生效的OSPF路由只有三条。 3.5 配置OSPF VPN引入到BGP中的情况现在PE1上配置在BGP的VPN实例地址族中引入OSPF,打开BGP的debug开关查看经过BGP传递的路由信息。 [PE1-bgp-vpn1]import-route ospf 4 *Jun 24 11:36:26:445 2009 PE1 RM/6/RMDEBUG: BGP_L3VPN.: Send UPDATE to peer 49.0.0.1 for following destinations : *Jun 24 11:36:26:495 2009 PE1 RM/6/RMDEBUG: Origin : Incomplete AS Path : Next Hop : 49.0.0.2 Local Pref : 100 MED : 3 Ext-Community:, , , 101.0.0.0/24 (RD 1:1,Label 1031),
*Jun 24 11:36:26:595 2009 PE1 RM/6/RMDEBUG: BGP_L3VPN.: Send UPDATE to peer 49.0.0.1 for following destinations : *Jun 24 11:36:26:695 2009 PE1 RM/6/RMDEBUG: Origin : Incomplete AS Path : Next Hop : 49.0.0.2 Local Pref : 100 MED : 3 Ext-Community:, , , 102.0.0.0/24 (RD 1:1,Label 1031),
*Jun 24 11:36:26:795 2009 PE1 RM/6/RMDEBUG: BGP_L3VPN.: Send UPDATE to peer 49.0.0.1 for following destinations : *Jun 24 11:36:26:946 2009 PE1 RM/6/RMDEBUG: Origin : Incomplete AS Path : Next Hop : 49.0.0.2 Local Pref : 100 MED : 2 Ext-Community:, , , 103.0.0.0/24 (RD 1:1,Label 1031), 以上可见,BGP只传递OSPF路由表中生效的三条路由,并通过扩展团体属性Ext-Community携带了对应LSA所包含的路由信息,如AreaNum、Router Id、RouteType等。Route-Type字段的可能取值为1、2、3、5、7、129,其中前面5种取值表示OSPF的路由类型,而取值为129时表示是sham-link对端end point的地址。Option只在Route-Type取值为5或7,表示外部路由的类型。对于外部路由,Type2对应Option最低位为1,值为1,Type1对应Option最低位为0,值为0。除以上信息外,还携带了OSPF Domain Id信息,默认情况下为0.0.0.0,这里Domain 表示一个共同的区域,同一个Domain之内的路由器可以根据Route-Type字段还原LSA,还原的规则为: Ø 如果Route-Type中的LSA Type为1、2、3,则作为3类区域间路由引入; Ø 如果Route-Type中的LSA Type为5、7,Option为0时,则作为E1类型引入,Option为1时,作为E2类型引入; 当Domain ID不同时,则不能根据Route-Type字段还原LSA,此时只能按照外部LSA引入。 在PE2上配置在OSPF VPN 实例中引入BGP,查看对应LSDB: [PE2-ospf-4]import-route bgp [PE2-ospf-4]display ospf 4 lsdb OSPF Process 4 with Router ID 49.0.0.1 Link State Database Area: 0.0.0.0 Type LinkState ID AdvRouter Age Len Sequence Metric Router 66.0.0.2 66.0.0.2 1649 48 80000003 0 Router 49.0.0.1 49.0.0.1 1651 48 80000004 0 Sum-Net 102.0.0.0 49.0.0.1 52 28 80000001 3 Sum-Net 101.0.0.0 49.0.0.1 52 28 80000001 3 AS External Database Type LinkState ID AdvRouter Age Len Sequence Metric External 103.0.0.0 49.0.0.1 52 36 80000001 2 从中可以看到,MBGP将PE1一侧的私网路由传递到PE2,PE2根据携带的扩展团体属性将路由还原为对应的LSA。其中区域内、区域间OSPF路由将被还原为3类LSA。ASE路由还原为5类LSA。由以上也可以看到1、4类LSA通过此方式不能得到传递,2类LSA也丢失了携带的路由拓扑信息,这样实际上就割裂了整个VPN统一规划的OSPF。 在PE1、PE2两端OSPF domain-id不一致时,所有路由只能还原为5类LSA形式: [PE1-ospf-4]domain-id 11.11.11.11 [PE2-ospf-4]display ospf 4 lsdb OSPF Process 4 with Router ID 49.0.0.1 Link State Database Area: 0.0.0.0 Type LinkState ID AdvRouter Age Len Sequence Metric Router 66.0.0.2 66.0.0.2 116 48 80000004 0 Router 49.0.0.1 49.0.0.1 118 48 80000005 0 AS External Database Type LinkState ID AdvRouter Age Len Sequence Metric External 103.0.0.0 49.0.0.1 219 36 80000001 2 External 101.0.0.0 49.0.0.1 2 36 80000001 3 External 102.0.0.0 49.0.0.1 2 36 80000001 3 由于OSPF VPN普通模式中是通过OSPF和BGP互相引入来传递路由,丢失了OSPF原有的拓扑信息,在这种情况下最多只能产生3类LSA,路由计算时采用类似距离矢量的方法,打破了OSPF路由计算原有的无环性。在如下的CE双归属组网中就会出现路由环路的现象: CE-C和PE-A、PE-B都建立了OSPF邻接,PE-B把BGP路由发送给PE-A,PE-A转换后的LSA通过CE-C又传递给了PE-B,PE-B上一旦通过这些LSA计算出了路由,就会形成环路并且可能造成路由的振荡。出现这种环路后,通过OSPF原有的防环路机制是无法解决的,为此OSPF多实例中新增了如下特性来解决这个问题。 3类LSA中DN bit位,在RFC4577中规定:PE在将通过BGP还原得到的3类LSA发送给CE设备时,3类LSA Options field中DN bit位必须置为1。PE设备接收到DN bit置1的3类LSA后,不使用它进行路由计算。 在PE1、PE2两端OSPF domain-id一致时,检查PE2还原得到的3类LSA,看到DN bit被置位了: [PE1-ospf-4]domain-id 0.0.0.0 [PE2-ospf-4]display ospf 4 lsdb summary 102.0.0.0 OSPF Process 4 with Router ID 49.0.0.1 Area: 0.0.0.0 Link State Database Type : Sum-Net LS ID : 102.0.0.0 Adv Rtr : 49.0.0.1 LS Age : 53 Len : 28 Options : E DN Seq# : 80000001 Checksum : 0xe33 Net Mask : 255.255.255.0 Tos 0 Metric: 3 5、7类LSA中的Route tag,通过BGP路由还原的5类LSA中tag字段填写本地的Route Tag,从CE接收到5类LSA后,检查LSA的tag字段,和本地的Route Tag进行比较,如果相同的话,就不使用该LSA进行路由计算。Route Tag可以手工配置,也可以通过自动计算得到,当MPLS骨干网中BGP的AS号为2个字节长度时,Route Tag默认情况下是根据AS号进行自动计算的。 4 Sham-link模式4.1 引入原因 OSPF普通VPN配置下,MBGP与OSPF互相引入,MBGP将私网OSPF路由传递到对端,再由对端PE的OSPF引入BGP从而实现OSPF路由传递。这种情况下,最多只能还原为3类LSA,在CE上得到的路由是区域间路由。如果在CE之间存在backdoor链路(图示如下),作为公网MPLS链路的备份。则在CE上通过backdoor链路学到的路由是区域内路由,优于普通VPN学到的区域间路由,这样就导致数据只能通过backdoor链路而不会选择公网MPLS链路。由此可见,对于这种情况,使用普通VPN是不行的。 首先看一下CE2在普通OSPF VPN(没有backdoor链路)情况下的LSDB和路由表: [CE2]display ospf 4 lsdb OSPF Process 4 with Router ID 66.0.0.2 Link State Database Area: 0.0.0.0 Type LinkState ID AdvRouter Age Len Sequence Metric Router 66.0.0.2 66.0.0.2 1202 48 80000004 0 Router 49.0.0.1 49.0.0.1 1205 48 80000005 0 Sum-Net 102.0.0.0 49.0.0.1 943 28 80000001 3 Sum-Net 101.0.0.0 49.0.0.1 943 28 80000001 3 AS External Database Type LinkState ID AdvRouter Age Len Sequence Metric External 103.0.0.0 49.0.0.1 1307 36 80000001 2 [CE2]display ospf 4 routing OSPF Process 4 with Router ID 66.0.0.2 Routing Tables Routing for Network Destination Cost Type NextHop AdvRouter Area 200.0.0.0/24 1562 Stub 200.0.0.2 66.0.0.2 0.0.0.0 102.0.0.0/24 1565 Inter 200.0.0.1 49.0.0.1 0.0.0.0 101.0.0.0/24 1565 Inter 200.0.0.1 49.0.0.1 0.0.0.0 Routing for ASEs Destination Cost Type Tag NextHop AdvRouter 103.0.0.0/24 2 Type2 3489661028 200.0.0.1 49.0.0.1 Total Nets: 4 Intra Area: 1 Inter Area: 2 ASE: 1 NSSA: 0 配置backdoor链路后,CE2的OSPF LSDB和路由表: [CE2]display ospf 4 lsdb OSPF Process 4 with Router ID 66.0.0.2 Link State Database Area: 0.0.0.0 Type LinkState ID AdvRouter Age Len Sequence Metric Router 66.0.0.8 66.0.0.8 28 60 80000010 0 Router 66.0.0.2 66.0.0.2 27 60 8000000C 0 Router 49.0.0.2 49.0.0.2 22 36 8000000C 0 Router 49.0.0.1 49.0.0.1 21 48 8000000B 0 Router 75.0.0.2 75.0.0.2 1396 36 80000007 0 Network 50.0.0.1 66.0.0.8 25 32 80000002 0 Network 102.0.0.1 66.0.0.8 1391 32 80000006 0 Network 100.0.0.2 66.0.0.8 399 32 80000008 0 Sum-Net 101.0.0.0 66.0.0.8 1299 28 80000006 1 Sum-Asbr 50.0.0.60 66.0.0.8 1467 28 80000005 1 AS External Database Type LinkState ID AdvRouter Age Len Sequence Metric External 103.0.0.0 50.0.0.60 1451 36 80000005 1 [CE2]display ospf 4 routing OSPF Process 4 with Router ID 66.0.0.2 Routing Tables Routing for Network Destination Cost Type NextHop AdvRouter Area 50.0.0.0/24 1 Transit 50.0.0.2 66.0.0.8 0.0.0.0 100.0.0.0/24 2 Transit 50.0.0.1 66.0.0.8 0.0.0.0 200.0.0.0/24 1 Stub 200.0.0.2 66.0.0.2 0.0.0.0 102.0.0.0/24 2 Transit 50.0.0.1 66.0.0.8 0.0.0.0 101.0.0.0/24 2 Inter 50.0.0.1 66.0.0.8 0.0.0.0 Routing for ASEs Destination Cost Type Tag NextHop AdvRouter 103.0.0.0/24 1 Type2 1 50.0.0.1 50.0.0.60 Total Nets: 6 Intra Area: 4 Inter Area: 1 ASE: 1 NSSA: 0 以上可见,存在backdoor链路后,OSPF的LSDB和相应路由表均发生变化,通过backdoor链路的路由优选。此时,如果要想穿越VPN骨干域的路由生效,就应该使得穿越VPN骨干域的路由为域内路由类型。为此,在PE之间可以建立一条域内的链路来达到这个目的,这也就是Sham-link的本意所在。这样可以通过调整Sham-link和backdoor链路的COST值来控制选路。接下来给出我司Sham-link的实现。 4.2 配置sham-linkSham-link是PE上OSPF VPN实例间的链路配置,与其他设备无关。以下以PE1为例,PE2配置与此对称。 1、Sham-link的端点对应的路由必须是32位的主机路由,且属于私网,通过MBGP传递到对端。 [PE1-bgp-vpn1]import-route direct 此操作的作用为引入直连的32位私网主机路由,发布Sham-link端点路由。 [PE1-ospf-4-area-0.0.0.0]sham-link 49.0.0.2 49.0.0.1 建立Sham-link,后续可根据需要设置Sham-link的COST参数。 2、配置MBGP引入OSPF路由,用于对端PE学习,不能再配OSPF引BGP路由。 [PE1-bgp-vpn1]import-route ospf 4 这里引用一段话来说明一下:根据协议规定,这里是不需要再引入的,我司的实现PE仍采用BGP传递过来的OSPF路由,而不用Sham-link传来的LSA计算路由,这是因为如下考虑。Sham-link UP是通过PE学到对端Sham-link端点的私网路由,而如果该Sham-link端点的私网路由也通过OSPF发布的话,就会造成如下怪圈:PE学到对端的Sham-link端点路由->Sham-link UP->私网路由通过OSPF LSA学到->由于OSPF路由优于BGP路由,顶掉BGP路由->Sham-link DOWN ->OSPF路由消失,BGP路由生效->Sham-link UP。 这种情况下,PE之间传递了所有的LSA,保留了所有的拓扑信息,PE和CE均得到完整的LSDB,CE可以通过SPF算法得到相应的路由。 4.3 配置Sham-link后PE的OSPF interface和peer从PE2的角度,我们首先来看一下形成OSPF Sham-link后的接口和邻居变化。 [PE2-ospf-4-area-0.0.0.0]sham-link 49.0.0.1 49.0.0.2 [PE2-ospf-4-area-0.0.0.0] [PE2]dis ospf 4 interface OSPF Process 4 with Router ID 49.0.0.1 Interfaces Area: 0.0.0.0 IP Address Type State Cost Pri DR BDR 200.0.0.1 PTP P-2-P 1 1 0.0.0.0 0.0.0.0 由此可见Sham-link并没有形成新的ospf接口。 [PE2]display ospf 4 peer OSPF Process 4 with Router ID 49.0.0.1 Neighbor Brief Information Area: 0.0.0.0 Router ID Address Pri Dead-Time Interface State 66.0.0.2 200.0.0.2 1 33 S6/4 Full/ - Sham link 49.0.0.1 -> 49.0.0.2: Router ID Address Pri Dead-Time State 49.0.0.2 49.0.0.2 1 31 Full 以上可以看到,ospf形成两个邻居关系。 4.4 配置Sham-link后PE的LSDB接下来我们来看一下配置Sham-link后PE的LSDB。 [PE2]display ospf 4 lsdb OSPF Process 4 with Router ID 49.0.0.1 Link State Database Area: 0.0.0.0 Type LinkState ID AdvRouter Age Len Sequence Metric Router 66.0.0.8 66.0.0.8 538 60 80000010 0 Router 66.0.0.2 66.0.0.2 537 60 8000000C 0 Router 49.0.0.2 49.0.0.2 24 48 8000000E 0 Router 49.0.0.1 49.0.0.1 19 60 8000000D 0 Router 75.0.0.2 75.0.0.2 205 36 80000008 0 Network 50.0.0.1 66.0.0.8 535 32 80000002 0 Network 102.0.0.1 66.0.0.8 199 32 80000007 0 Network 100.0.0.2 66.0.0.8 907 32 80000008 0 Sum-Net 101.0.0.0 66.0.0.8 107 28 80000007 1 Sum-Asbr 50.0.0.60 66.0.0.8 275 28 80000006 1 AS External Database Type LinkState ID AdvRouter Age Len Sequence Metric External 103.0.0.0 50.0.0.60 253 36 80000006 1 以上我们可以看到,OSPF LSDB中得到的为完整的LSA信息,可以进行OSPF的SPF运算来计算路由,这些都是通过Sham-link传递过来的,而不是通过引入得到的。下面分析一下backdoor链路和Sham-link不同COST情况下的路由选择情况。 4.5 Backdoor链路COST大于Sham-link的情况1、 配置PE2如下: # [PE2-ospf-4-area-0.0.0.0]sham-link 49.0.0.1 49.0.0.2 cost 55 2、 配置CE2如下: # [CE2-Ethernet0/1]ospf cost 88 3、 查看CE2的OSPF路由表情况: [CE2]display ospf 4 routing OSPF Process 4 with Router ID 66.0.0.2 Routing Tables Routing for Network Destination Cost Type NextHop AdvRouter Area 50.0.0.0/24 58 Transit 200.0.0.1 66.0.0.8 0.0.0.0 100.0.0.0/24 57 Transit 200.0.0.1 66.0.0.8 0.0.0.0 200.0.0.0/24 1 Stub 200.0.0.2 66.0.0.2 0.0.0.0 102.0.0.0/24 58 Transit 200.0.0.1 66.0.0.8 0.0.0.0 101.0.0.0/24 58 Inter 200.0.0.1 66.0.0.8 0.0.0.0 Routing for ASEs Destination Cost Type Tag NextHop AdvRouter 103.0.0.0/24 1 Type2 1 200.0.0.1 50.0.0.60 Total Nets: 6 Intra Area: 4 Inter Area: 1 ASE: 1 NSSA: 0 由路由表可见,在这种情况下,路由选择VPN域的主链路。 4.6 Sham-link COST大于Backdoor链路的情况1、配置PE2如下: # [PE2-ospf-4-area-0.0.0.0] sham-link 49.0.0.1 49.0.0.2 cost 88 2、配置CE2如下: # [CE2-Ethernet0/1]ospf cost 55 3、 查看CE2的OSPF的路由表情况: [CE2]display ospf 4 routing OSPF Process 4 with Router ID 66.0.0.2 Routing Tables Routing for Network Destination Cost Type NextHop AdvRouter Area 50.0.0.0/24 55 Transit 50.0.0.2 66.0.0.8 0.0.0.0 100.0.0.0/24 56 Transit 50.0.0.1 66.0.0.8 0.0.0.0 200.0.0.0/24 1 Stub 200.0.0.2 66.0.0.2 0.0.0.0 102.0.0.0/24 56 Transit 50.0.0.1 66.0.0.8 0.0.0.0 101.0.0.0/24 56 Inter 50.0.0.1 66.0.0.8 0.0.0.0 Routing for ASEs Destination Cost Type Tag NextHop AdvRouter 103.0.0.0/24 1 Type2 1 50.0.0.1 50.0.0.60 Total Nets: 6 Intra Area: 4 Inter Area: 1 ASE: 1 NSSA: 0 这种情况下,路由选择backdoor链路。由此可知,只要对两者链路的COST进行相应设置,就可以控制路由选择VPN主链路还是backdoor备份链路。 5 MCE应用5.1 需求来源 BGP/MPLS VPN以隧道的方式解决了在公网中传送私网数据的问题,但传统的BGP/MPLS VPN架构要求每个VPN实例单独使用一个CE与PE相连。 随着用户业务的不断细化和安全需求的提高,很多情况下一个私有网络内的用户需要划分成多个VPN,不同VPN用户间的业务需要完全隔离。此时,为每个VPN单独配置一台CE将加大用户的设备开支和维护成本;而多个VPN共用一台CE,使用同一个路由表项,又无法保证数据的安全性。为了解决这个问题提出了MCE组网,既在同一台CE设备上配置多个VPN实例和用户自己的VPN相对应,这样不但能够隔离私网内不同VPN的报文转发路径,而且通过与PE间的配合,也能够将每个VPN的路由正确发布至对端PE,保证VPN报文在公网内的传输。 5.2 OSPF在MCE中的扩展在MCE应用情况下,CE上配置的OSPF多实例只是为了隔离不同VPN的路由,而不是来进行路由还原的,这种情况下进行路由计算不应该受防环路处理的影响,为此专门提供了命令来实现MCE设备上OSPF多实例路由的正常计算——vpn-instance-capability simple 在CE2上也配置VPN,将OSPF进程也绑定在VPN中,和PE2建立OSPF邻居。 [CE2-ospf-4]dis this # ospf 4 router-id 66.0.0.2 vpn-instance vpn1 route-tag 3489661028 area 0.0.0.0 network 200.0.0.0 0.0.0.255 # return [CE2-ospf-4]display ospf 4 peer OSPF Process 4 with Router ID 66.0.0.2 Neighbor Brief Information Area: 0.0.0.0 Router ID Address Pri Dead-Time Interface State 49.0.0.1 200.0.0.1 1 35 S1/4 Full/ - 在CE2上查看LSDB和OSPF路由表: [CE2]display ospf 4 lsdb OSPF Process 4 with Router ID 66.0.0.2 Link State Database Area: 0.0.0.0 Type LinkState ID AdvRouter Age Len Sequence Metric Router 66.0.0.2 66.0.0.2 38 48 80000002 0 Router 49.0.0.1 49.0.0.1 39 48 80000002 0 Sum-Net 50.0.0.0 49.0.0.1 49 28 80000001 3 Sum-Net 102.0.0.0 49.0.0.1 49 28 80000001 3 Sum-Net 101.0.0.0 49.0.0.1 49 28 80000001 3 AS External Database Type LinkState ID AdvRouter Age Len Sequence Metric External 103.0.0.0 49.0.0.1 49 36 80000001 2 External 100.0.0.0 49.0.0.1 49 36 80000001 1 External 49.0.0.2 49.0.0.1 49 36 80000001 1 [CE2]display ospf 4 routing OSPF Process 4 with Router ID 66.0.0.2 Routing Tables Routing for Network Destination Cost Type NextHop AdvRouter Area 200.0.0.0/24 1 Stub 200.0.0.2 66.0.0.2 0.0.0.0 Total Nets: 1 Intra Area: 1 Inter Area: 0 ASE: 0 NSSA: 0 缺省情况下,配置OSPF多实例后,OSPF认为设备是PE,在路由计算时会按照PE的环路机制处理,从上面可以看到虽然OSPF的邻居建立正确并且LSDB中也存在3类和5类LSA,但OSPF并没有计算出了相关路由。 在CE2上配置vpn-instance-capability simple命令后,在进行观察: [CE2-ospf-4]vpn-instance-capability simple [CE2-ospf-4]display ospf 4 routing OSPF Process 4 with Router ID 66.0.0.2 Routing Tables Routing for Network Destination Cost Type NextHop AdvRouter Area 50.0.0.0/24 4 Inter 200.0.0.1 49.0.0.1 0.0.0.0 200.0.0.0/24 1 Stub 200.0.0.2 66.0.0.2 0.0.0.0 102.0.0.0/24 4 Inter 200.0.0.1 49.0.0.1 0.0.0.0 101.0.0.0/24 4 Inter 200.0.0.1 49.0.0.1 0.0.0.0 Routing for ASEs Destination Cost Type Tag NextHop AdvRouter 103.0.0.0/24 2 Type2 3489661028 200.0.0.1 49.0.0.1 100.0.0.0/24 1 Type2 3489661028 200.0.0.1 49.0.0.1 49.0.0.2/32 1 Type2 3489661028 200.0.0.1 49.0.0.1 Total Nets: 7 Intra Area: 1 Inter Area: 3 ASE: 3 NSSA: 0 配置vpn-instance-capability simple命令,OSPF认为设备不是PE,路由计算时不受防环路机制的影响,正确计算出了所有路由。
|
CopyRight 2018-2019 实验室设备网 版权所有 |