Saturday, 1 June 2013

BGP ROUTE REFLECTOR


This is used to minimize the no of ibgp peering within our AS.
RULES:
Ø  We have the route-reflector (which reflects the routes to the clients) and the Route-reflector Clients
Ø  When a RF gets an update from a non-client, it forwards it to ebgp peers and clients. When it gets update from a client,it forwards it to all client peers except the sender. When it gets  up date from an ebgp peer,  it forwards to all peer.
Ø  Client shld only av ibgp peering with their RF
Ø  Cluster-id and originator id are used to detect loops in a redundant Rf design
Ø  For ibgp routes, prefer a non-reflected route to a reflected route. For two reflected routes, prefer routes with shorter cluster-id
Ø  Originator ID is the router-id of the ibgp router that forwarded the route to the route-reflector
Ø  Cluster ID is the router-id of the route-reflector
Default config include
R1......................
int s0/1
ip add 20.20.20.1 255.255.255.0
no shut
int  s0/0
ip add 10.10.10.1 255.255.255.0
no shut
int lo 1
ip add 150.150.150.1 255.255.255.0
no shut
exit
router ospf 1
network 10.10.10.0 0.0.0.255 area 0
network 20.20.20.0 0.0.0.255 area 0
exit


R2..................
int s0/0
ip add 10.10.10.2 255.255.255.0
no shut
int  s0/1
ip add 30.30.30.2 255.255.255.0
no shut
int lo 1
ip add 77.77.77.1 255.255.255.0
no shut
exit
router ospf 1
network 10.10.10.0 0.0.0.255 area 0
network 30.30.30.0 0.0.0.255 area 0
exit


R3..........................
int s0/1
ip add 40.40.40.1 255.255.255.0
no shut
int s0/0
ip add 30.30.30.1 255.255.255.0
no shut
int lo 1
ip add 99.99.99.1 255.255.255.0
no shut
exit
router ospf 1
network 30.30.30.0 0.0.0.255 area 0
network 40.40.40.0 0.0.0.255 area 0
exit


ISP1..................................
int s0/0
ip add 40.40.40.2 255.255.255.0
no shut
int lo 1
ip add 200.200.200.1 255.255.255.0
no shut
exit
router bgp 111
nei 40.40.40.1 remote-as 100
bgp router-id 200.200.200.1
no synchronization


ISP2..................
int s0/1
ip add 20.20.20.2 255.255.255.0
no shut
int lo 1
ip add 100.100.100.1 255.255.255.0
no shut
exit
router bgp 222
nei 20.20.20.1 remote-as 100
bgp router-id 100.100.100.1
no synchronization


Task 1: Advertise ntwk 100.100.100.0 and 200.200.200.0 into bgp. 
Ensure reachability between 100.100.100.0/24 and 200.200.200.0/24 such that r1 only forms ibgp relationship with r2 and r3 only forms with r2 only.
Here R2 will be the route-reflector, i.e. it will form nei relationship with R1 and R3.
R1(config)#         router bgp 100
nei 20.20.20.2 remote-as 222
nei 10.10.10.2 remote-as 100

R2(config)#         router bgp 100
nei 10.10.10.1 remote-as 100
nei 30.30.30.1 remote-as 100

R3(config)#         router bgp 100
nei 20.20.20.2 remote-as 222
nei 30.30.30.2 remote-as 100

Lets  advertise 100.100.100.0/24 and 200.200.200.0/24
ISP1(config-router)#      network 200.200.200.0 mask 255.255.255.0
ISP2(config-router)#      network 100.100.100.0 mask 255.255.255.0

NOTE:
If ISP2 advertises network 100.100.100.0, R1 will get it (learnt via ebgp).R2 will get it (R1 will advertise it to R2 as an ibgp route).R2 will not advertise it because route learnt via ibgp are not advertised to other ibgp peers
Note that R2 will forward these routes to R1 and R3 but recall that these routes would not be in the bgp table of R1 and R3 if the next hop addres  ntwk (i.e. 20.20.20.0) is not their routing table. they do not actualy need to be able reach it. eg since we cfged ntwk 20.20.20.0 0.0.0.255 area 0 in ospf  fur router R1, then the ntwk wil shw up in d bgp table irrespective wheda we can reach 20.20.20.2. SO FAR 20.20.20.0 nwtk shws up in routin table, den bgp wld insert d ntwk into its bgp table
With next-hop-self, we are sure the next-hop will exist in the routing table irrespective of wheda we cfged 20.20.20.0 & 40.40.40.0 in ospf

Here we can see that R2 is the only router getting both 100.100.100.0 and 200.200.200.0 routes.
R1#        sh ip bgp
  Network                            Next Hop       Metric        LocPrf   Weight                     Path
*> 100.100.100.0/24        20.20.20.2          0                               0                 222 i

R3#        sh ip bgp
   Network                           Next Hop            Metric        LocPrf              Weight                                 Path
*> 200.200.200.0              40.40.40.2               0                                          0                              111 i

R2#        sh ip bgp
   Network                           Next Hop            Metric   LocPrf  Weight   Path
*>i100.100.100.0/24        10.10.10.1               0          100          0             222 i
*>i200.200.200.0              30.30.30.1               0          100          0             111 i

Hence we need to configure route-reflector on R2 to reflect the routes
R2(config-router)#          nei 10.10.10.1 route-reflector-client
nei 30.30.30.1 route-reflector-client
Lets only show the bgp table of R1
R1#        sh ip bgp
   Network                           Next Hop            Metric LocPrf      Weight                 Path
*> 100.100.100.0/24        20.20.20.2               0                            0                            222 i
*>i200.200.200.0              30.30.30.1               0          100           0                            111 i

R1(config-router)#          do sh ip bgp 200.200.200.0
BGP routing table entry for 200.200.200.0/24, version 5
Paths: (1 available, best #1, table Default-IP-Routing-Table)
    30.30.30.1 (metric 128) from 10.10.10.2 (77.77.77.1)
      Origin IGP, metric 0, localpref 100, valid, internal, best
      Originator: 99.99.99.1, Cluster list: 77.77.77.1
This shows that we are this router is a route-reflector-client
R2(config-router)#          do sh ip bgp 200.200.200.0
BGP routing table entry for 200.200.200.0/24, version 7
Paths: (1 available, best #1, table Default-IP-Routing-Table)
  111, (Received from a RR-client)
    30.30.30.1 from 30.30.30.1 (99.99.99.1)
      Origin IGP, metric 0, localpref 100, valid, internal, best
This shows that R2 is the route-reflector

Taskn 2) cfg the cluster-id on R2 as its loopback add(default cfg)

R2(config-router)#          bgp cluster-id 77.77.77.1

No comments:

Post a Comment