cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
979
Views
0
Helpful
7
Replies

AS_PATH PREPEND into MPLS Cloud - Redundancy

Mike Hogenauer
Level 1
Level 1

Hi, 

I have several remote sites and two main Datacenters. Each main DC is connected via a METRO-E Wan, Datacenter A routes traffic for 10.1.0.0/16. Until now, DC A was the only DC that has a link into our provider MPLS Cloud, all remote sites connect to DC A, then traverse to DC B over the WAN link. Datacenter B routes traffic for 10.2.0.0/16. We just brought in an MPLS drop from the same Cloud provider so that we can announce routes from each datacenter and limit the WAN traffic between datacenters.

 

My issue is I want to add a layer of redundancy into the MPLS Cloud. I want DC A (10.1.0.0/16) to keep advertising its subnet, but I also want it to advertise DC B (10.2.0.0/16) into the cloud from the same edge router. Also, I want Datacenter B (10.2.0.0/16) to advertise its primary subnet and then also path prepend Datacenter A’s subnet.

 

Internally and across the WAN, we run EIRGP and our IGP. Right now each edge router in each Datacenter knows the other DC’s subnet for example DC A Edge has a route to DC B in its routing table and DC B knows about DC A. Based on this each router should be able to advertise these routes into BDP because there’s a valid route in each EDGE routers routing table. I’ve also configured the “Distance command on each edge routers BGP config and set the distance from the other DC’s bgp session to 200 and tied it together with a ACL. This way the EIGRP session will be preferred instead of over the MPLS for the internal subnets.

No matter what I try I cannot get DC A to PATH_PREPEND DC B’s subnet and I cannto get DC B to PATH PREPEND DC A subnet into the MPLS cloud. I want this for redundancy with my remote sites (about 20 remote).  I’ve configured a IP Prefix list to math each DC’s Subnet. I’ve then tied it together with a route-map on each router, then set the path prepend our 3 x’s per each DC’s BGP Session. 

DC A – CONFIG:

router bgp 65103

 no synchronization

 bgp log-neighbor-changes

 network 0.0.0.0

 network 10.1.0.0 mask 255.255.0.0

 redistribute eigrp 100 route-map EIGRP_TO_BGP

 neighbor 10.254.1.10 remote-as 13979

 neighbor 10.254.1.10 ebgp-multihop 255

 neighbor 10.254.1.10 weight 33000

 neighbor 10.254.1.10 prefix-list PL_PERMIT_ROUTES_IN in

 neighbor 10.254.1.10 route-map DCA_PREPEND_DCB_OUT out

 distance 200 10.254.1.10 0.0.0.0 10

 

router bgp 65103

 no synchronization

 bgp log-neighbor-changes

 network 0.0.0.0

 network 10.1.0.0 mask 255.255.0.0

 redistribute eigrp 100 route-map EIGRP_TO_BGP

 neighbor 10.254.1.10 remote-as 13979

 neighbor 10.254.1.10 ebgp-multihop 255

 neighbor 10.254.1.10 weight 33000

 neighbor 10.254.1.10 prefix-list PL_PERMIT_ROUTES_IN in

 neighbor 10.254.1.10 route-map DCA_PREPEND_DCB_OUT out

 distance 200 10.254.1.10 0.0.0.0 10

 

 

ip prefix-list PL_PATH_PREPEND description set as path prepend

ip prefix-list PL_PATH_PREPEND seq 5 permit 10.2.0.0/16 le 32

 

route-map DCA_PREPEND_DCB_OUT permit 10

 match ip address prefix-list PL_PATH_PREPEND

 set as-path prepend 65103 65103 65103

!

route-map DCA_PREPEND_DCB_OUT permit 20

 

---------------------------------------------------------------------------

 

DC B – CONFIG:

 

router bgp 65115

 bgp log-neighbor-changes

 network 10.2.0.0 mask 255.255.0.0

 redistribute eigrp 100 route-map EIGRP_TO_BGP

 neighbor 10.254.1.53 remote-as 13979

 neighbor 10.254.1.53 ebgp-multihop 2

 neighbor 10.254.1.53 weight 33000

 neighbor 10.254.1.53 route-map DCB_PREPEND_DCA_OUT out

 distance 200 10.254.1.53 0.0.0.0 10

!

 

ip prefix-list PL_PATH_PREPEND description set as path prepend

ip prefix-list PL_PATH_PREPEND seq 5 permit 10.1.0.0/16

 

route-map DCB_PREPEND_DCA_OUT permit 10

 match ip address prefix-list PL_PATH_PREPEND

 set as-path prepend 65115 65115 65115

!

route-map DCB_PREPEND_DCA_OUT permit 20

 

I also have a route-Mao the redistributes the local subnets into BGP - each route-map permits the local traffic into BGP from EIGRP. I have also done an inbound and outbound soft clear on each router.

 

Any help is appreciated – it’s starting to drive me batty

 

Thanks,
Mike 

7 Replies 7

Jon Marshall
Hall of Fame
Hall of Fame

Mike

It's a little unclear as to what routes you are redistributing into BGP from EIGRP.

If you are advertising the 10.1.0.0/16 from DC1 then why are you also advertising the more specific subnets with redistribution (assuming it is the more specific subnets).

If you are only redistributing the local subnets from EIGRP ie. local meaning the same DC then you would need to -

1) add a "network ..." statement for the other DCs 10.x.0.0/16 subnet

and

2) there would need to be a matching routing in the IP routing table

or are you saying the other DCs subnet is an EIGRP route ?

Sorry but like I say it's not clear why you are using network statements under BGP and also redistributing EIGRP.

Edit - are you actually advertising the other DCs subnet out ie. what does a "sh ip bgp neighbors x.x.x.x advertised-routes" show ?

Jon

Hi Jon,

 

Sorry if my ordinal post was unclear.

 

DC A and DC B are connected via WAN. They are both in the same EIRGP AS (100).

Under the BGP process, for DC A, I do have a summary address of 10.1.0.0/16. For DC B, under the BGP process I have the summary network statement of 10.2.0.0/16.

ON the Edge router in each DC I do have a summary route to Null 0. Example DC A- ip route 10.1.0.0 255.255.0.0 Null 0 – same for DC B and it’s summary.

 

Right now I do advertise other routed into the cloud, example in DC A I advertise on of the DMZ subnets which is 172.31.9.0. There is a route in the edge routers table learned via EIGRP for that subnet. I route-map all traffic from EIGRP to BGP and I ties that together with an ACL. I plan on doing this for both sites to eventual traffic destined for DC B will chose the best path to DC B and not via DC A and then across the WAN.

 

The goal here for me, is to advertise out of DC A- the 10.1.0.0/16 subnet. Then via route-map advertise DC-B’s 10.2.0.0/16 subnet but AS-PATH prepend that subnet for failover. I will also mirror this in the other DC (DC B) for the 10.1.0.0/16 subnet. Optionally I would like to advertise all relevant DC A subnets out of DC B with the same PREPEND ACL and then mirror that setup in DC B for DC A’s subnet. I’m really just trying to establish redundancy to each DC from the remote sites. What’s killing me now, is that each edge router in each DC, does have a valid installed route for all subnets in each DC – learned via EIGRP. Since BGP requires that before it will advertise a route, I should be good to go. But it’s not working for me right now and driving me crazy.

 

So to summarize – I’m advertise DC’s Summary /16 route under the BGP process. I’m redistributing the EIGRP routes that are local to each DC into BGP. I’m then trying to path prepend the other DC’s subnets out the other DC’s BGP sessions for redundancy.

 

Make sense?

Thanks,

Mike 

Mike

Apologies for the delay in getting back.

ON the Edge router in each DC I do have a summary route to Null 0. Example DC A- ip route 10.1.0.0 255.255.0.0 Null 0 – same for DC B and it’s summary.

Can you just clarify the above ie. does each DC router have both summary routes ?

Jon

Each DC has its own summary - not both summaries to null 0. DC A has a route to null 0 for its local and the same with DC B. Each DC has does however have a summary route for the other DC in its routing table which it learned from EIGRP. So based on the rules of BGP it should be able to be advertised. 

Okay, and have you allowed the summary route in your EIGRP to BGP redistribution  ?

Jon

Yes - I have redistributed the routes and tied that to a route map for control 

Mike 

Mike

Can you post from DCA and DCB -

1) "sh ip bgp neighbor x.x.x.x advertised-routes"

2) a "sh ip route <summary route> 255.255.0.0"

3) the route map for EIGRP to BGP redistribution

Jon

Review Cisco Networking for a $25 gift card