If this has been answered by other members I apologize but following your example, the RR works as configured as R3 does learn about the 18.104.22.168/32 prefix but its not being installed in the routing table because it can not reach the next hop address of 192.168.12.1. To resolve this I added the next-hop-self command on R1 and reset the BGP peerings. That still did not resolve this.
My question is once a RR is configured should all the clients update their next hop to the RR or should the originator of the prefix have the next-hop-self configuration?
R3#sh ip bgp 22.214.171.124
BGP routing table entry for 126.96.36.199/32, version 0
Paths: (1 available, no best path)
Not advertised to any peer
Refresh Epoch 2
192.168.12.1 (inaccessible) from 192.168.23.2 (192.168.23.2)
Origin IGP, metric 0, localpref 100, valid, internal
Originator: 188.8.131.52, Cluster list: 192.168.23.2
rx pathid: 0, tx pathid: 0
R1#sh running-config | section router bgp
router bgp 123
network 184.108.40.206 mask 255.255.255.255
neighbor 192.168.12.2 remote-as 123
neighbor 192.168.12.2 next-hop-self