BGP IPv4 - Route Reflector

BGP Route Reflector

BGP (Border Gateway Protocol) IPv4 Route Reflectors are essential components in BGP networks designed to simplify the establishment of BGP peer relationships, particularly in large-scale and complex topologies. In a BGP Route Reflector setup, certain routers are designated as Route Reflectors that assist in the distribution of routing information within a BGP cluster. Instead of requiring all routers to maintain a full mesh of peer connections, BGP Route Reflectors selectively reflect BGP updates to other routers within the cluster, reducing the complexity of BGP peer relationships. This hierarchical structure enhances scalability and simplifies BGP configuration. Route Reflectors play a crucial role in improving the efficiency of BGP networks by centralizing the route distribution process, allowing for a more streamlined and manageable BGP routing environment.

Lab:

Disclaimer

This Configuration Guide is designed to assist members to enhance their skills in particular technology area. While every effort has been made to ensure that all material is as complete and accurate as possible, the enclosed material is presented on an “as is” basis. Neither the authors nor Forum assume any liability or responsibility to any person or entity with respect to loss or damages incurred from the information contained in this guide. This configuration guide was developed by Forum. Any similarities between material presented in this configuration guide and any other material is completely coincidental.

Cisco IOS Software, Linux Software (I86BI_LINUX-ADVENTERPRISEK9-M), Version 15.2(4)M1, DEVELOPMENT TEST SOFTWARE

Task 1: Configure IPv4 BGP Process for Autonomous

Step 1: In the configuration mode of router configure IPv4 BGP Process by following command:

R1:
router bgp 65000
neighbor 22.0.1.2 remote-as 65000
neighbor 22.0.1.2 update-source Loopback1
neighbor 22.0.1.2 soft-reconfiguration inbound
exit
R2:
router bgp 65000
neighbor 11.0.1.1 remote-as 65000
neighbor 11.0.1.1 update-source Loopback1
neighbor 11.0.1.1 soft-reconfiguration inbound
neighbor 33.0.1.3 remote-as 65000
neighbor 33.0.1.3 update-source Loopback1
neighbor 33.0.1.3 soft-reconfiguration inbound
exit
R3:
router bgp 65000
neighbor 22.0.1.2 remote-as 65000
neighbor 22.0.1.2 update-source loopback 1
neighbor 22.0.1.2 soft-reconfiguration inbound
neighbor 44.0.1.4 remote-as 65200
neighbor 44.0.1.4 ebgp-multihop 5
neighbor 44.0.1.4 update-source loopback 1
neighbor 44.0.1.4 soft-reconfiguration inbound
exit
R4:
router bgp 65200
neighbor 33.0.1.3 remote-as 65000
neighbor 33.0.1.3 ebgp-multihop 5
neighbor 33.0.1.3 update-source loopback 1
neighbor 33.0.1.3 soft-reconfiguration inbound
exit

Step 2: In the configuration mode of router configure IPv4 OSPF Process by following command:

R1:
router ospf 1
network 0.0.0.0 0.0.0.0 area 0
exit
R2:
router ospf 1
network 0.0.0.0 0.0.0.0 area 0
exit
R3:
router ospf 1
network 0.0.0.0 0.0.0.0 area 0
exit
R4:
router ospf 1
network 0.0.0.0 0.0.0.0 area 0
exit

Step 3: Announce the network in BGP Process

R1:
router bgp 65000
address-family ipv4
network 11.0.1.0 mask 255.255.255.0
network 11.0.2.0 mask 255.255.255.0
network 11.0.3.0 mask 255.255.255.0
exit
R2:
router bgp 65000
address-family ipv4
network 22.0.1.0 mask 255.255.255.0
network 22.0.2.0 mask 255.255.255.0
network 22.0.3.0 mask 255.255.255.0
exit
R3:
router bgp 65000
address-family ipv4
network 33.0.1.0 mask 255.255.255.0
network 33.0.2.0 mask 255.255.255.0
network 33.0.3.0 mask 255.255.255.0
exit
R4:
router bgp 65200
address-family ipv4
network 44.0.1.0 mask 255.255.255.0
network 44.0.2.0 mask 255.255.255.0
network 44.0.3.0 mask 255.255.255.0
exit

Step 4: Verify IPv4 BGP routes by following command:

R1#show ip bgp
BGP table version is 7, local router ID is 11.0.3.1
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal,
              r RIB-failure, S Stale, m multipath, b backup-path, f RT-Filter,
              x best-external, a additional-path, c RIB-compressed,
Origin codes: i - IGP, e - EGP, ? - incomplete
RPKI validation codes: V valid, I invalid, N Not found

     Network          Next Hop      Metric    LocPrf   Weight   Path
 *>  11.0.1.0/24      0.0.0.0         0                32768    i
 *>  11.0.2.0/24      0.0.0.0         0                32768    i
 *>  11.0.3.0/24      0.0.0.0         0                32768    i
 *>i 22.0.1.0/24      22.0.1.2        0       100        0      i
 *>i 22.0.2.0/24      22.0.1.2        0       100        0      i
 *>i 22.0.3.0/24      22.0.1.2        0       100        0      i

Split Horizon doesn't allow R2 to forward R3 BGP Routes to R1, because rule is Routes received from one IBGP neighbor is not forwarded to other IBGP neighbor. Hence R1 doesn't received R3 & R4 routes.

R2#show ip bgp 
BGP table version is 13, local router ID is 22.0.3.2
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal,
              r RIB-failure, S Stale, m multipath, b backup-path, f RT-Filter,
              x best-external, a additional-path, c RIB-compressed,
Origin codes: i - IGP, e - EGP, ? - incomplete
RPKI validation codes: V valid, I invalid, N Not found

     Network          Next Hop         Metric     LocPrf     Weight    Path
 *>i 11.0.1.0/24      11.0.1.1           0          100         0        i
 *>i 11.0.2.0/24      11.0.1.1           0          100         0        i
 *>i 11.0.3.0/24      11.0.1.1           0          100         0        i
 *>  22.0.1.0/24      0.0.0.0            0                     32768     i
 *>  22.0.2.0/24      0.0.0.0            0                     32768     i
 *>  22.0.3.0/24      0.0.0.0            0                     32768     i
 *>i 33.0.1.0/24      33.0.1.3           0          100         0        i
 *>i 33.0.2.0/24      33.0.1.3           0          100         0        i
 *>i 33.0.3.0/24      33.0.1.3           0          100         0        i
 *>i 44.0.1.0/24      44.0.1.4           0          100         0       65200 i
 *>i 44.0.2.0/24      44.0.1.4           0          100         0       65200 i
 *>i 44.0.3.0/24      44.0.1.4           0          100         0       65200 i

R3#show ip bgp
BGP table version is 10, local router ID is 33.0.3.3
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal,
              r RIB-failure, S Stale, m multipath, b backup-path, f RT-Filter,
              x best-external, a additional-path, c RIB-compressed,
Origin codes: i - IGP, e - EGP, ? - incomplete
RPKI validation codes: V valid, I invalid, N Not found

     Network          Next Hop      Metric     LocPrf    Weight    Path
 *>i 22.0.1.0/24      22.0.1.2        0          100       0         i
 *>i 22.0.2.0/24      22.0.1.2        0          100       0         i
 *>i 22.0.3.0/24      22.0.1.2        0          100       0         i
 *>  33.0.1.0/24      0.0.0.0         0                  32768       i
 *>  33.0.2.0/24      0.0.0.0         0                  32768       i
 *>  33.0.3.0/24      0.0.0.0         0                  32768       i
 *>  44.0.1.0/24      44.0.1.4        0                    0       65200 i
 *>  44.0.2.0/24      44.0.1.4        0                    0       65200 i
 *>  44.0.3.0/24      44.0.1.4        0                    0       65200 i

Split Horizon doesn't allow R2 to forward R1 BGP Routes to R3, because rule is Routes received from one IBGP neighbor is not forwarded to other IBGP neighbor. Hence R3 doesn't received R1 routes.

R4#show ip bgp
BGP table version is 10, local router ID is 44.0.3.4
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal,
              r RIB-failure, S Stale, m multipath, b backup-path, f RT-Filter,
              x best-external, a additional-path, c RIB-compressed,
Origin codes: i - IGP, e - EGP, ? - incomplete
RPKI validation codes: V valid, I invalid, N Not found

     Network          Next Hop       Metric    LocPrf    Weight    Path
 *>  22.0.1.0/24      33.0.1.3                   0                 65000 i
 *>  22.0.2.0/24      33.0.1.3                   0                 65000 i
 *>  22.0.3.0/24      33.0.1.3                   0                 65000 i
 *>  33.0.1.0/24      33.0.1.3         0         0                 65000 i
 *>  33.0.2.0/24      33.0.1.3         0         0                 65000 i
 *>  33.0.3.0/24      33.0.1.3         0         0                 65000 i
 *>  44.0.1.0/24      0.0.0.0          0                 32768     i
 *>  44.0.2.0/24      0.0.0.0          0                 32768     i
 *>  44.0.3.0/24      0.0.0.0          0                 32768     i 

Task 2: Configure BGP Route Reflector

Step 1: Configure BGP Route Reflector

R2:
router bgp 65000
neighbor 11.0.1.1 remote-as 65000
address-family ipv4
neighbor 11.0.1.1 route-reflector-client
exit
neighbor 33.0.1.3 remote-as 65000
exit

Step 2: Verify IPv4 BGP routes by following command:

R1#show ip bgp
BGP table version is 19, local router ID is 11.0.3.1
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal,

              r RIB-failure, S Stale, m multipath, b backup-path, f RT-Filter,
              x best-external, a additional-path, c RIB-compressed,
Origin codes: i - IGP, e - EGP, ? - incomplete
RPKI validation codes: V valid, I invalid, N Not found

     Network          Next Hop      Metric    LocPrf     Weight    Path
 *>  11.0.1.0/24      0.0.0.0         0                            32768 i
 *>  11.0.2.0/24      0.0.0.0         0                            32768 i
 *>  11.0.3.0/24      0.0.0.0         0                            32768 i
 *>i 22.0.1.0/24      22.0.1.2        0         100        0       i
 *>i 22.0.2.0/24      22.0.1.2        0         100        0       i
 *>i 22.0.3.0/24      22.0.1.2        0         100        0       i
 *>i 33.0.1.0/24      33.0.1.3        0         100        0       i
 *>i 33.0.2.0/24      33.0.1.3        0         100        0       i
 *>i 33.0.3.0/24      33.0.1.3        0         100        0       i
 *>i 44.0.1.0/24      44.0.1.4        0         100        0       65200 i
 *>i 44.0.2.0/24      44.0.1.4        0         100        0       65200 i
 *>i 44.0.3.0/24      44.0.1.4        0         100        0       65200 i

Using Route Reflector, R1 router is configured as route reflector client and R3 router as route reflector non-cleint. Cient to Non-client BGP routes forwarding is allowed and therefore R1 now receives BGP routes from R3 as well as R4 along with R2. Therefore Now all BGP routes are seen on R1 router.

R2#show ip bgp
BGP table version is 19, local router ID is 22.0.3.2
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal,
              r RIB-failure, S Stale, m multipath, b backup-path, f RT-Filter,
              x best-external, a additional-path, c RIB-compressed,
Origin codes: i - IGP, e - EGP, ? - incomplete
RPKI validation codes: V valid, I invalid, N Not found

     Network          Next Hop            Metric     LocPrf     Weight    Path
 *>i 11.0.1.0/24      11.0.1.1              0         100         0        i
 *>i 11.0.2.0/24      11.0.1.1              0         100         0        i
 *>i 11.0.3.0/24      11.0.1.1              0         100         0        i
 *>  22.0.1.0/24      0.0.0.0               0                    32768     i
 *>  22.0.2.0/24      0.0.0.0               0                    32768     i
 *>  22.0.3.0/24      0.0.0.0               0                    32768     i 
 *>i 33.0.1.0/24      33.0.1.3              0         100         0        i
 *>i 33.0.2.0/24      33.0.1.3              0         100         0        i
 *>i 33.0.3.0/24      33.0.1.3              0         100         0        i
 *>i 44.0.1.0/24      44.0.1.4              0         100         0        65200 i
 *>i 44.0.2.0/24      44.0.1.4              0         100         0        65200 i
 *>i 44.0.3.0/24      44.0.1.4              0         100         0        65200 i
R3#show ip bgp
BGP table version is 13, local router ID is 33.0.3.3
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal,
              r RIB-failure, S Stale, m multipath, b backup-path, f RT-Filter,
              x best-external, a additional-path, c RIB-compressed,
Origin codes: i - IGP, e - EGP, ? - incomplete
RPKI validation codes: V valid, I invalid, N Not found

     Network          Next Hop       Metric     LocPrf     Weight    Path
 *>i 11.0.1.0/24      11.0.1.1         0        100          0        i
 *>i 11.0.2.0/24      11.0.1.1         0        100          0        i
 *>i 11.0.3.0/24      11.0.1.1         0        100          0        i
 *>i 22.0.1.0/24      22.0.1.2         0        100          0        i
 *>i 22.0.2.0/24      22.0.1.2         0        100          0        i
 *>i 22.0.3.0/24      22.0.1.2         0        100          0        i
 *>  33.0.1.0/24      0.0.0.0          0                   32768      i
 *>  33.0.2.0/24      0.0.0.0          0                   32768      i
 *>  33.0.3.0/24      0.0.0.0          0                   32768      i
 *>  44.0.1.0/24      44.0.1.4         0                    0         65200 i
 *>  44.0.2.0/24      44.0.1.4         0                    0         65200 i
 *>  44.0.3.0/24      44.0.1.4         0                    0         65200 i

Using Route Reflector, R1 router is configured as route reflector client and R3 router as route reflector non-client. Non-client to client BGP routes forwarding is allowed and therefore R3 now receives BGP routes from R1 along with R2 and R4. Therefore now all BGP routes are seen on R3 router.

R4#show ip bgp 
BGP table version is 13, local router ID is 44.0.3.4
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal,

              r RIB-failure, S Stale, m multipath, b backup-path, f RT-Filter,
              x best-external, a additional-path, c RIB-compressed,
Origin codes: i - IGP, e - EGP, ? - incomplete
RPKI validation codes: V valid, I invalid, N Not found

     Network          Next Hop            Metric     LocPrf     Weight    Path
 *>  11.0.1.0/24      33.0.1.3                         0                  65000 i
 *>  11.0.2.0/24      33.0.1.3                         0                  65000 i
 *>  11.0.3.0/24      33.0.1.3                         0                  65000 i
 *>  22.0.1.0/24      33.0.1.3                         0                  65000 i
 *>  22.0.2.0/24      33.0.1.3                         0                  65000 i
 *>  22.0.3.0/24      33.0.1.3                         0                  65000 i
 *>  33.0.1.0/24      33.0.1.3              0          0                  65000 i
 *>  33.0.2.0/24      33.0.1.3              0          0                  65000 i
 *>  33.0.3.0/24      33.0.1.3              0          0                  65000 i
 *>  44.0.1.0/24      0.0.0.0               0                   32768      i
 *>  44.0.2.0/24      0.0.0.0               0                   32768      i
 *>  44.0.3.0/24      0.0.0.0               0                   32768      i