In Rene’s BGP Weight labon GNS3VAULT, he made a comment about not using the loopbacks on the iBGP because there were only two routers in the AS. This comment made me wonder, what about using loopbacks on eBGP? Should you configure eBGP neighbors with physical interfaces and iBGP with loopbacks or can you also use loopbacks in eBGP?
In my humble opinion, you should use loopback whenever you have more than one physical interfaces that can reach that loopback. This is applicable for both iBGP and BGP.
I agree with @rshummoo. Best practice is to use a loopback interface whenever you have more than one physical interface connecting to the edge for both eBGP and iBGP. Loopbacks will not go down even if one of the physical links goes down, so the BGP neighbour relationship will not fail.
If you only have a single link, it will make no difference, so using the physical interface IP for peering is sufficient.
I hope this has been helpful!