Route reflectors (RR) are one of the methods to get rid of the full-mesh of IBGP peers in your network. The route reflector allows all IBGP speakers within your autonomous system to learn about the available routes without creating loops.





There are three types of peering in route reflector:







EBGP neighbor IBGP client neighbor IBGP non-client neighbor

When we configure a route reflector (RR), we have to tell the router the other IBGP router is a client or non-client. A IBGP client is an IBGP router that the route reflector will “reflect” routes to, the non-client is just a regular IBGP neighbor.







When a route reflector forwards a route updates, there are a few rules that must follow:





A route learned from an EBGP neighbor can be forwarded to another EBGP neighbor, a client and non-client.

A route learned from a client can be forwarded to another EBGP neighbor, client and non-client.

A route learned from a non-client can be forwarded to another EBGP neighbor and client, but not to a non-client.





In other words: Route Reflector-RR to advertise route received from an iBGP peers to other iBGP peers. All the valid client update server Route Reflector-RR and server update to all the valid clients.

Each client only establish neighbor relationship with servers, client are not allow to establish neighbor with other clients. Route Reflector (servers) establish neighbor relationship with other servers (if you have more the one servers) and clients.











Route-Reflector Configuration:-





Topology:





Goal:

configure the topology as per our diagram.

configure EIGRP 65100 to provide connectivity between peers

advertise all the directly connected interfaces

configure BGP AS 65100 as per our diagram using loopbacks.

configure router 5 as Route-Reflector server and rest of the routers will play client role.





R1#show ip interface brief

Interface IP-Address OK? Method Status Protocol

FastEthernet0/0 10.1.1.1 YES manual up up

Serial3/0 1.1.1.1 YES manual up up

Serial3/3 4.1.1.2 YES manual up up

Serial3/6 15.1.1.1 YES manual up up

Loopback0 11.0.0.1 YES manual up up

Loopback1 11.0.1.1 YES manual up up

Loopback2 11.0.2.1 YES manual up up

Loopback3 11.0.3.1 YES manual up up

R2#show ip interface brief

Interface IP-Address OK? Method Status Protocol

FastEthernet0/0 20.1.1.1 YES manual up up

Serial3/0 1.1.1.2 YES manual up up

Serial3/1 2.1.1.1 YES manual up up

Serial3/4 25.1.1.1 YES manual up up

Loopback0 12.0.0.1 YES manual up up

Loopback1 12.0.1.1 YES manual up up

Loopback2 12.0.2.1 YES manual up up

Loopback3 12.0.3.1 YES manual up up









R3#show ip interface brief Interface IP-Address OK? Method Status Protocol FastEthernet0/0 30.1.1.1 YES manual up up Serial3/1 2.1.1.2 YES manual up up Serial3/2 3.1.1.1 YES manual up up Serial3/5 35.1.1.1 YES manual up up Loopback0 13.0.0.1 YES manual up up Loopback1 13.0.1.1 YES manual up up Loopback2 13.0.2.1 YES manual up up Loopback3 13.0.3.1 YES manual up up











R4#show ip interface brief Interface IP-Address OK? Method Status Protocol FastEthernet0/0 40.1.1.1 YES manual up up Serial3/2 3.1.1.2 YES manual up up Serial3/3 4.1.1.1 YES manual up up Serial3/7 45.1.1.1 YES manual up up Loopback0 14.0.0.1 YES manual up up Loopback1 14.0.1.1 YES manual up up Loopback2 14.0.2.1 YES manual up up Loopback3 14.0.3.1 YES manual up up









R5#show ip interface brief Interface IP-Address OK? Method Status Protocol FastEthernet0/0 50.1.1.1 YES manual up up Serial3/4 25.1.1.2 YES manual up up Serial3/5 35.1.1.2 YES manual up up Serial3/6 15.1.1.2 YES manual up up Serial3/7 45.1.1.2 YES manual up up Loopback0 150.0.0.1 YES manual up up Loopback1 150.0.1.1 YES manual up up Loopback2 150.0.2.1 YES manual up up Loopback3 150.0.3.1 YES manual up up







R1(config)#router eigrp 65100 R1(config-router)#network 1.0.0.0 R1(config-router)#network 4.0.0.0 R1(config-router)#network 15.0.0.0 R1(config-router)#network 11.0.0.0 R1(config-router)#network 10.0.0.0 R1(config-router)#no auto-summary R1(config-router)#exit







R2(config)#router eigrp 65100 R2(config-router)#network 1.0.0.0 R2(config-router)#network 2.0.0.0 R2(config-router)#network 20.0.0.0 R2(config-router)#network 12.0.0.0 R2(config-router)#network 25.0.0.0 R2(config-router)#no auto-summary R2(config-router)#exit







R3(config)#router eigrp 65100 R3(config-router)#network 2.0.0.0 R3(config-router)#network 3.0.0.0 R3(config-router)#network 13.0.0.0 R3(config-router)#network 30.0.0.0 R3(config-router)#no auto-summary R3(config-router)#exit







R4(config)#router eigrp 65100 R4(config-router)#network 3.0.0.0 R4(config-router)#network 4.0.0.0 R4(config-router)#network 14.0.0.0 R4(config-router)#network 40.0.0.0 R4(config-router)#network 45.0.0.0 R4(config-router)#no auto-summary R4(config-router)#exit







R5(config)#router eigrp 65100 R5(config-router)#network 150.0.0.0 R5(config-router)#network 50.0.0.0 R5(config-router)#network 15.0.0.0 R5(config-router)#network 25.0.0.0 R5(config-router)#network 35.0.0.0 R5(config-router)#network 45.0.0.0 R5(config-router)#no auto-summary R5(config-router)#exit







R1(config)#router bgp 65100

R1(config-router)#neighbor 12.0.0.1 remote-as 65100 R1(config-router)#neighbor 12.0.0.1 update-source loopback 0

R1(config-router)#neighbor 14.0.0.1 remote-as 65100 R1(config-router)#neighbor 14.0.0.1 update-source loopback 0



R1(config-router)#neighbor 150.0.0.1 remote-as 65100 R1(config-router)#neighbor 150.0.0.1 update-source loopback 0



R1(config-router)#network 10.0.0.0 R1(config-router)#no synchronization R1(config-router)#no auto-summary R1(config-router)#exit





R2(config)#router bgp 65100 R2(config-router)#neighbor 11.0.0.1 remote-as 65100 R2(config-router)#neighbor 11.0.0.1 update-source loopback 0

R2(config-router)#neighbor 13.0.0.1 remote-as 65100 R2(config-router)#neighbor 13.0.0.1 update-source loopback 0

R2(config-router)# neighbor 150.0.0.1 remote-as 65100 R2(config-router)# neighbor 150.0.0.1 update-source loopback 0

R2(config-router)#network 20.0.0.0 R2(config-router)#no auto-summary R2(config-router)#no synchronization R2(config-router)#exit

















R3(config)#router bgp 65100 R3(config-router)#neighbor 12.0.0.1 remote-as 65100 R3(config-router)#neighbor 12.0.0.1 update-source loopback 0



R3(config-router)#neighbor 14.0.0.1 remote-as 65100 R3(config-router)#neighbor 14.0.0.1 update-source loopback 0

R3(config-router)#neighbor 150.0.0.1 remote-as 65100 R3(config-router)#neighbor 150.0.0.1 update-source loopback 0

R3(config-router)#network 30.0.0.0 R3(config-router)#no auto-summary R3(config-router)#no synchronization R3(config-router)#exit







R4(config)#router bgp 65100

R4(config-router)#neighbor 13.0.0.1 remote-as 65100 R4(config-router)#neighbor 13.0.0.1 update-source loopback 0

R4(config-router)#neighbor 11.0.0.1 remote-as 65100 R4(config-router)#neighbor 11.0.0.1 update-source loopback 0



R4(config-router)# neighbor 150.0.0.1 remote-as 65100 R4(config-router)# neighbor 150.0.0.1 update-source loopback 0





R4(config-router)#network 40.0.0.0 R4(config-router)#no auto-summary R4(config-router)#no synchronization R4(config-router)#exit





R5(config)#router bgp 65100 R5(config-router)#neighbor 11.0.0.1 remote-as 65100 R5(config-router)#neighbor 11.0.0.1 update-source loopback 0

R5(config-router)#neighbor 12.0.0.1 remote-as 65100 R5(config-router)#neighbor 12.0.0.1 update-source loopback 0



R5(config-router)#neighbor 13.0.0.1 remote-as 65100 R5(config-router)#neighbor 13.0.0.1 update-source loopback 0

R5(config-router)#neighbor 14.0.0.1 remote-as 65100 R5(config-router)#neighbor 14.0.0.1 update-source loopback 0



R5(config)#router bgp 65100 R5(config-router)#neighbor 11.0.0.1 route-reflector-client

*Dec 7 14:07:56.415: %BGP-5-ADJCHANGE: neighbor 11.0.0.1 Down RR client config change *Dec 7 14:07:56.419: %BGP_SESSION-5-ADJCHANGE: neighbor 11.0.0.1 IPv4 Unicast topology base removed from session RR client config change *Dec 7 14:07:57.291: %BGP-5-ADJCHANGE: neighbor 11.0.0.1 Up



R5(config-router)#neighbor 12.0.0.1 route-reflector-client

*Dec 7 14:08:04.183: %BGP-5-ADJCHANGE: neighbor 12.0.0.1 Down RR client config change *Dec 7 14:08:04.187: %BGP_SESSION-5-ADJCHANGE: neighbor 12.0.0.1 IPv4 Unicast topology base removed from session RR client config change *Dec 7 14:08:04.407: %BGP-5-ADJCHANGE: neighbor 12.0.0.1 Up

R5(config-router)#neighbor 13.0.0.1 route-reflector-client



*Dec 7 14:08:15.187: %BGP-5-ADJCHANGE: neighbor 13.0.0.1 Down RR client config change *Dec 7 14:08:15.187: %BGP_SESSION-5-ADJCHANGE: neighbor 13.0.0.1 IPv4 Unicast topology base removed from session RR client config change *Dec 7 14:08:15.683: %BGP-5-ADJCHANGE: neighbor 13.0.0.1 Up

R5(config-router)#neighbor 14.0.0.1 route-reflector-client

*Dec 7 14:08:33.659: %BGP-5-ADJCHANGE: neighbor 14.0.0.1 Down RR client config change *Dec 7 14:08:33.663: %BGP_SESSION-5-ADJCHANGE: neighbor 14.0.0.1 IPv4 Unicast topology base removed from session RR client config change *Dec 7 14:08:33.983: %BGP-5-ADJCHANGE: neighbor 14.0.0.1 Up

R5(config-router)#end







R5#show ip bgp 10.1.1.1 BGP routing table entry for 10.0.0.0/8, version 7 Paths: (1 available, best #1, table default, RIB-failure(17)) Advertised to update-groups: 2 Refresh Epoch 2 Local, (Received from a RR-client) 11.0.0.1 (metric 2297856) from 11.0.0.1 (11.0.3.1) Origin IGP, metric 0, localpref 100, valid, internal, best rx pathid: 0, tx pathid: 0x0 R5#show ip bgp 20.1.1.1 BGP routing table entry for 20.0.0.0/8, version 9 Paths: (1 available, best #1, table default, RIB-failure(17)) Advertised to update-groups: 2 Refresh Epoch 2 Local, (Received from a RR-client) 12.0.0.1 (metric 2297856) from 12.0.0.1 (12.0.3.1) Origin IGP, metric 0, localpref 100, valid, internal, best rx pathid: 0, tx pathid: 0x0 R5#show ip bgp 30.1.1.1 BGP routing table entry for 30.0.0.0/8, version 11 Paths: (1 available, best #1, table default, RIB-failure(17)) Advertised to update-groups: 2 Refresh Epoch 2 Local, (Received from a RR-client) 13.0.0.1 (metric 2809856) from 13.0.0.1 (13.0.3.1) Origin IGP, metric 0, localpref 100, valid, internal, best rx pathid: 0, tx pathid: 0x0



R5#show ip bgp 40.1.1.1 BGP routing table entry for 40.0.0.0/8, version 13 Paths: (1 available, best #1, table default, RIB-failure(17)) Advertised to update-groups: 2 Refresh Epoch 2 Local, (Received from a RR-client) 14.0.0.1 (metric 2297856) from 14.0.0.1 (14.0.3.1) Origin IGP, metric 0, localpref 100, valid, internal, best rx pathid: 0, tx pathid: 0x0







R1#show ip bgp 20.1.1.1 BGP routing table entry for 20.0.0.0/8, version 3 Paths: (2 available, best #2, table default, RIB-failure(17)) Not advertised to any peer Refresh Epoch 1 Local 12.0.0.1 (metric 2297856) from 150.0.0.1 (150.0.3.1) Origin IGP, metric 0, localpref 100, valid, internal Originator: 12.0.3.1, Cluster list: 150.0.3.1 rx pathid: 0, tx pathid: 0 Refresh Epoch 1 Local 12.0.0.1 (metric 2297856) from 12.0.0.1 (12.0.3.1) Origin IGP, metric 0, localpref 100, valid, internal, best rx pathid: 0, tx pathid: 0x0





