BGP - iBGP full-mesh peering

For the correct operation of Internal BGP (iBGP) , a full mesh of iBGP peerings must be established within the autonomous system. That means that each iBGP router must be peered with every other iBGP router within the AS. Unlike eBGP, iBGP peerings do not need to be directly connected. We often use loopbacks for the iBGP peerings. This is useful, because when one path fails the IGP can find another path to the loopback.

A full mesh iBGP peering is required within an AS because iBGP routers do not re-advertise routes learned via iBGP to other iBGP peers. This is called the split horizon rule and is a routing-loop-prevention mechanism. Thus, each iBGP router must learn about networks advertised within the AS directly from the originating iBGP router.

eBGP doesn't have this limitation because it uses the AS Path attribute to avoid routing loops.

A full mesh peering is not very scalable, so to resolve scalability in cases of very large ASes, you can use a BGP Route Reflector or BGP Confederations.

https://networklessons.com/bgp/internal-bgp-border-gateway-protocol-explained#IBGP_Neighbor_Adjacencies