Re: BGP Customers of Different Providers with a Backup Link - Scenario from Halabi Book

From: curtis staller (curtisstaller@xxxxxxxxxxx)
Date: Thu Apr 05 2001 - 08:53:05 GMT-3


   
I whould simplify your config here.
Use communites between the 2 AS's that you whould have control of, AS2
and AS3.
This config will use standard bgp ties elsewhere. The first route map in
statements
match the neighbor AS 2 or 3 and leave the local-pref alone at 100, this
will be the
prefered as-path, route. The next matches the community sent (the rest
of each router's
 bgp table) and sets the local pref to 90, thus each will prefer their
upstream providers
for internet routes etc. Of course you may need to have outbound route
maps to AS 1 and 4
that only permits routes from as 2 & 3 into eaches BGP table to ensure
you do not provide
transite for others on your backbone. You would also need to path
prepend so that AS2's
network is allways accessed via AS1 and AS3 is accessed first by AS4 from
the internet etc.

See RFC1998

On AS2

neighbor 5.5.5.2 remote-as 3
neighbor 5.5.5.2 remote-as 3 send-community
neighbor 5.5.5.2 remote-as 3 route-map AS3_IN in
neighbor 5.5.5.2 remote-as 3 route-map AS3_OUT out

ip bgp-community new-format

ip as-path access-list 10 permit ^3$

ip community-list 20 permit 3:90

route-map AS3_IN permit 10
match as-path 1

route-map AS3_IN permit 20
match community 20
set local-pref 90

route-map AS3_OUT permit 10
set community 2:90

On AS3

neighbor 5.5.5.1 remote-as 2
neighbor 5.5.5.1 remote-as 2 send-community
neighbor 5.5.5.1 remote-as 2 route-map AS2_IN in
neighbor 5.5.5.1 remote-as 2 route-map AS2_OUT out

ip bgp-community new-format

ip as-path access-list 10 permit ^2$

ip community-list 20 permit 2:90

route-map AS2_IN permit 10
match as-path 1

route-map AS2_IN permit 20
match community 20
set local-pref 90

route-map AS2_OUT permit 10
set community 3:90

>From: "Dan" >Reply-To: "Dan" >To: "Mannan Venkatesan" , >Subject: Re:
BGP Customers of Different Providers with a Backup Link - Scenario from
Halabi Book >Date: Wed, 4 Apr 2001 12:56:44 -0400 > >Where are your
as-path access-lists on R1 & R4 ? > >Dan Pontrelli > > >----- Original
Message ----- >From: "Mannan Venkatesan" >To: >Sent: Wednesday, April 04,
2001 11:13 AM >Subject: BGP Customers of Different Providers with a
Backup Link - Scenario >from Halabi Book > > > > HI, > > > >
r1(AS1)---------r4(AS4) > > | | > > | | > > r2(AS2)----------r3(AS3) > >
> > Objective : AS2 uses AS1 as its primary path and AS3 uses AS4 as its
>primary > > path. AS2 and AS3 use the private link for accessing each
other and the > > private link is used as backup if the primary links
goes down. > > > > I am trying this with community attribute, but could
n't get it working. >Any > > advice? Sorry for the long email. Wouldn't
able to set local perf on r1 >and > > r4. Here are the configs, > > > >
r1# > > r1# > > r1#sh run > > ! > > interface Loopback0 > > ip address
1.1.1.1 255.0.0.0 > > ! > > interface Loopback2 > > ip address 2.2.2.2
255.0.0.0 > > ! > > interface Serial0 > > no ip address > > encapsulation
frame-relay > > ! > > interface Serial0.1 point-to-point > > ip address
10.0.0.2 255.0.0.0 > > frame-relay interface-dlci 104 > > ! > > interface
Serial1 > > ip address 3.3.3.1 255.0.0.0 > > ! > > router bgp 1 > > no
synchronization > > redistribute connected > > neighbor 3.3.3.2 remote-as
2 > > neighbor 3.3.3.2 route-map chkmap in > > neighbor 10.0.0.1
remote-as 4 > > neighbor 10.0.0.1 send-community > > neighbor 10.0.0.1
route-map chkmap in > > neighbor 10.0.0.1 route-map com out > > no
auto-summary > > ! > > ip community-list 20 permit 460 > > ip
community-list 20 permit 340 > > route-map chkmap permit 10 > > match
as-path 10 > > set local-preference 40 > > ! > > route-map chkmap permit
20 > > match as-path 20 > > set local-preference 60 > > ! > > route-map
chkmap permit 30 > > set local-preference 100 > > ! > > route-map com
permit 10 > > set community 160 > > ! > > > > r1# sh ip bgp > > BGP table
version is 13, local router ID is 2.2.2.2 > > Status codes: s suppressed,
d damped, h history, * valid, > best, i - > > internal > > Origin codes:
i - IGP, e - EGP, ? - incomplete > > > > Network Next Hop Metric LocPrf
Weight Path > > *> 1.0.0.0 0.0.0.0 0 32768 ? > > *> 2.0.0.0 0.0.0.0 0
32768 ? > > *> 3.0.0.0 0.0.0.0 0 32768 ? > > * 3.3.3.2 0 100 0 2 ? > > *>
4.0.0.0 3.3.3.2 0 100 0 2 ? > > * 5.0.0.0 10.0.0.1 100 0 4 3 ? > > *>
3.3.3.2 0 100 0 2 ? > > * 6.0.0.0 10.0.0.1 100 0 4 3 ? > > *> 3.3.3.2 100
0 2 3 ? > > *> 7.0.0.0 10.0.0.1 0 100 0 4 ? > > * 3.3.3.2 100 0 2 3 ? > >
*> 8.0.0.0 10.0.0.1 0 100 0 4 ? > > *> 9.0.0.0 10.0.0.1 0 100 0 4 ? > > *
10.0.0.0 10.0.0.1 0 100 0 4 ? > > *> 0.0.0.0 0 32768 ? > > r1#sh ip rou >
> Codes: C - connected, S - static, I - IGRP, R - RIP, M - mobile, B -
BGP > > D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area >
> N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2 > > E1 -
OSPF external type 1, E2 - OSPF external type 2, E - EGP > > i - IS-IS,
L1 - IS-IS level-1, L2 - IS-IS level-2, * - candidate > > default > > U -
per-user static route, o - ODR > > > > Gateway of last resort is not set
> > > > C 1.0.0.0/8 is directly connected, Loopback0 > > C 2.0.0.0/8 is
directly connected, Loopback2 > > C 3.0.0.0/8 is directly connected,
Serial1 > > B 4.0.0.0/8 [20/0] via 3.3.3.2, 00:03:05 > > B 5.0.0.0/8
[20/0] via 3.3.3.2, 00:03:05 > > B 6.0.0.0/8 [20/0] via 3.3.3.2, 00:03:05
> > B 7.0.0.0/8 [20/0] via 10.0.0.1, 00:01:31 > > B 8.0.0.0/8 [20/0] via
10.0.0.1, 00:01:31 > > B 9.0.0.0/8 [20/0] via 10.0.0.1, 00:01:31 > > C
10.0.0.0/8 is directly connected, Serial0.1 > > r1# > > > >
------------------ > > r2#sh run > > ! > > interface Loopback1 > > ip
address 4.4.4.4 255.0.0.0 > > no ip directed-broadcast > > ! > >
interface Serial1/0 > > no ip address > > no ip directed-broadcast > >
encapsulation frame-relay > > no ip mroute-cache > > ! > > interface
Serial1/0.1 point-to-point > > ip address 5.5.5.1 255.0.0.0 > > no ip
directed-broadcast > > frame-relay interface-dlci 105 > > ! > > interface
Serial1/1 > > ip address 3.3.3.2 255.0.0.0 > > no ip directed-broadcast >
> clockrate 56000 > > ! > > router bgp 2 > > no synchronization > >
redistribute connected > > neighbor 3.3.3.1 remote-as 1 > > neighbor
3.3.3.1 send-community > > neighbor 3.3.3.1 route-map comm out > >
neighbor 3.3.3.1 filter-list 10 out > > neighbor 5.5.5.2 remote-as 3 > >
no auto-summary > > ! > > ip classless > > ip as-path access-list 10
permit ^$ > > ip as-path access-list 10 permit ^3$ > > ip as-path
access-list 20 permit _3_ > > ! > > route-map comm permit 10 > > match
as-path 20 > > set community 340 > > ! > > route-map comm permit 20 > > !
> > > > r2#sh ip bgp > > BGP table version is 39, local router ID is
4.4.4.4 > > Status codes: s suppressed, d damped, h history, * valid, >
best, i - > > internal > > Origin codes: i - IGP, e - EGP, ? - incomplete
> > > > Network Next Hop Metric LocPrf Weight Path > > *> 1.0.0.0 3.3.3.1
0 0 1 ? > > *> 2.0.0.0 3.3.3.1 0 0 1 ? > > * 3.0.0.0 3.3.3.1 0 0 1 ? > >
*> 0.0.0.0 0 32768 ? > > *> 4.0.0.0 0.0.0.0 0 32768 ? > > * 5.0.0.0
5.5.5.2 0 0 3 ? > > *> 0.0.0.0 0 32768 ? > > *> 6.0.0.0 5.5.5.2 0 0 3 ? >
> * 7.0.0.0 3.3.3.1 0 1 4 ? > > *> 5.5.5.2 0 0 3 ? > > * 8.0.0.0 3.3.3.1
0 1 4 ? > > *> 5.5.5.2 0 3 4 ? > > * 9.0.0.0 3.3.3.1 0 1 4 ? > > *>
5.5.5.2 0 3 4 ? > > * 10.0.0.0 5.5.5.2 0 3 4 ? > > *> 3.3.3.1 0 0 1 ? > >
r2#sh ip rou > > Codes: C - connected, S - static, I - IGRP, R - RIP, M -
mobile, B - BGP > > D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF
inter area > > N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external
type 2 > > E1 - OSPF external type 1, E2 - OSPF external type 2, E - EGP
> > i - IS-IS, L1 - IS-IS level-1, L2 - IS-IS level-2, * - candidate > >
default > > U - per-user static route, o - ODR > > > > Gateway of last
resort is not set > > > > B 1.0.0.0/8 [20/0] via 3.3.3.1, 00:03:56 > > B
2.0.0.0/8 [20/0] via 3.3.3.1, 00:03:56 > > C 3.0.0.0/8 is directly
connected, Serial1/1 > > C 4.0.0.0/8 is directly connected, Loopback1 > >
C 5.0.0.0/8 is directly connected, Serial1/0.1 > > B 6.0.0.0/8 [20/0] via
5.5.5.2, 00:17:35 > > > > B 7.0.0.0/8 [20/0] via 5.5.5.2, 00:17:35 > > B
8.0.0.0/8 [20/0] via 5.5.5.2, 00:17:35 > > B 9.0.0.0/8 [20/0] via
5.5.5.2, 00:17:35 > > B 10.0.0.0/8 [20/0] via 3.3.3.1, 00:03:22 > >
------- > > > > r3#sh run > > ! > > interface Loopback1 > > ip address
6.6.6.6 255.0.0.0 > > ! > > interface Serial0 > > no ip address > >
encapsulation frame-relay > > no ip mroute-cache > > ! > > interface
Serial0.1 point-to-point > > ip address 5.5.5.2 255.0.0.0 > > frame-relay
interface-dlci 107 > > ! > > interface Serial1 > > ip address 7.7.7.1
255.0.0.0 > > clockrate 56000 > > ! > > router bgp 3 > > no
synchronization > > redistribute connected > > neighbor 5.5.5.1 remote-as
2 > > neighbor 7.7.7.2 remote-as 4 > > neighbor 7.7.7.2 send-community >
> neighbor 7.7.7.2 route-map com out > > neighbor 7.7.7.2 filter-list 10
out > > no auto-summary > > ! > > ip classless > > ip as-path access-list
10 permit ^$ > > ip as-path access-list 10 permit ^2$ > > ip as-path
access-list 20 permit _2_ > > ! > > > > route-map com permit 10 > > match
as-path 20 > > set community 240 > > ! > > route-map com permit 20 > > >
> r3# sh ip bgp > > BGP table version is 57, local router ID is 6.6.6.6 >
> Status codes: s suppressed, d damped, h history, * valid, > best, i - >
> internal > > Origin codes: i - IGP, e - EGP, ? - incomplete > > > >
Network Next Hop Metric LocPrf Weight Path > > * 1.0.0.0 7.7.7.2 0 4 1 ?
> > *> 5.5.5.1 0 2 1 ? > > * 2.0.0.0 7.7.7.2 0 4 1 ? > > *> 5.5.5.1 0 2 1
? > > * 3.0.0.0 7.7.7.2 0 4 1 ? > > *> 5.5.5.1 0 0 2 ? > > * 4.0.0.0
7.7.7.2 0 4 1 2 ? > > *> 5.5.5.1 0 0 2 ? > > * 5.0.0.0 5.5.5.1 0 0 2 ? >
> *> 0.0.0.0 0 32768 ? > > *> 6.0.0.0 0.0.0.0 0 32768 ? > > * 7.0.0.0
7.7.7.2 0 0 4 ? > > *> 0.0.0.0 0 32768 ? > > *> 8.0.0.0 7.7.7.2 0 0 4 ? >
> *> 9.0.0.0 7.7.7.2 0 0 4 ? > > *> 10.0.0.0 7.7.7.2 0 0 4 ? > > *
5.5.5.1 0 2 1 ? > > r3#sh ip rou > > Codes: C - connected, S - static, I
- IGRP, R - RIP, M - mobile, B - BGP > > D - EIGRP, EX - EIGRP external,
O - OSPF, IA - OSPF inter area > > N1 - OSPF NSSA external type 1, N2 -
OSPF NSSA external type 2 > > E1 - OSPF external type 1, E2 - OSPF
external type 2, E - EGP > > i - IS-IS, L1 - IS-IS level-1, L2 - IS-IS
level-2, * - candidate > > default > > U - per-user static route, o - ODR
> > > > Gateway of last resort is not set > > > > B 1.0.0.0/8 [20/0] via
5.5.5.1, 00:04:43 > > B 2.0.0.0/8 [20/0] via 5.5.5.1, 00:04:43 > > B
3.0.0.0/8 [20/0] via 5.5.5.1, 00:05:36 > > B 4.0.0.0/8 [20/0] via
5.5.5.1, 00:18:23 > > C 5.0.0.0/8 is directly connected, Serial0.1 > > C
6.0.0.0/8 is directly connected, Loopback1 > > C 7.0.0.0/8 is directly
connected, Serial1 > > B 8.0.0.0/8 [20/0] via 7.7.7.2, 00:29:58 > > B
9.0.0.0/8 [20/0] via 7.7.7.2, 00:29:58 > > B 10.0.0.0/8 [20/0] via
7.7.7.2, 00:04:05 > > r3# > > > > ---------- > > > > r4#sh run > > ! > >
interface Loopback1 > > ip address 9.9.9.9 255.0.0.0 > > ! > > interface
Loopback2 > > ip address 8.8.8.8 255.0.0.0 > > ! > > interface Serial0 >
> no ip address > > encapsulation frame-relay > > no ip mroute-cache > >
! > > interface Serial0.1 point-to-point > > ip address 10.0.0.1
255.0.0.0 > > frame-relay interface-dlci 100 > > ! > > interface Serial1
> > ip address 7.7.7.2 255.0.0.0 > > ! > > router bgp 4 > > no
synchronization > > redistribute connected > > neighbor 7.7.7.1 remote-as
3 > > neighbor 7.7.7.1 route-map chkcom in > > neighbor 10.0.0.2
remote-as 1 > > neighbor 10.0.0.2 send-community > > neighbor 10.0.0.2
route-map chkcom in > > neighbor 10.0.0.2 route-map com out > > no
auto-summary > > ! > > ip community-list 10 permit 240 > > ip
community-list 20 permit 160 > > ! > > route-map chkcom permit 10 > >
match community 10 > > set local-preference 40 > > ! > > route-map chkcom
permit 20 > > match as-path 20 > > set local-preference 60 > > ! > > > >
route-map chkcom permit 30 > > set local-preference 100 > > ! > >
route-map com permit 10 > > set community 460 > > ! > > r4# > > r4#sh ip
bgp > > BGP table version is 64, local router ID is 9.9.9.9 > > Status
codes: s suppressed, d damped, h history, * valid, > best, i - > >
internal > > Origin codes: i - IGP, e - EGP, ? - incomplete > > > >
Network Next Hop Metric LocPrf Weight Path > > *> 1.0.0.0 10.0.0.2 0 100
0 1 ? > > *> 2.0.0.0 10.0.0.2 0 100 0 1 ? > > *> 3.0.0.0 10.0.0.2 0 100 0
1 ? > > * 7.7.7.1 40 0 3 2 ? > > *> 4.0.0.0 10.0.0.2 100 0 1 2 ? > > > >
* 7.7.7.1 40 0 3 2 ? > > * 5.0.0.0 10.0.0.2 100 0 1 2 ? > > *> 7.7.7.1 0
100 0 3 ? > > * 6.0.0.0 10.0.0.2 100 0 1 2 3 ? > > *> 7.7.7.1 0 100 0 3 ?
> > *> 7.0.0.0 0.0.0.0 0 32768 ? > > * 7.7.7.1 0 100 0 3 ? > > *> 8.0.0.0
0.0.0.0 0 32768 ? > > *> 9.0.0.0 0.0.0.0 0 32768 ? > > * 10.0.0.0
10.0.0.2 0 100 0 1 ? > > *> 0.0.0.0 0 32768 ? > > r4# > > r4#



This archive was generated by hypermail 2.1.4 : Thu Jun 13 2002 - 10:29:40 GMT-3