Loopback Interfaces

in CCNA & CCENT
I realize that it is a BP to have loopback interfaces setup for routing. What I've been trying to figure out is exactly why? Can someone give me a brief rundown. I know I've read through that before, but can't remember the logic behind it.
Comments
Sample Configuration for iBGP and eBGP With or Without a Loopback Address [IP Routing] - Cisco Systems
as you can see here at the bottom of the page bgp forms relationships with the the loopback interfaces.
one benefit of loopbacks is that they never can go down like other interfaces, unless the whole device goes down.
Yes, they're good in labs. You can emulate a physical interface, thus representing a network.. so you can add them to a routing protocol so there's more routes that you're sending around. Also, they are used in part by a routing protocols selection of router-id (or you can hard code this using the "router-id" command under the routing protocol), but if the router-id is not specified, than the routing protocol will choose the highest loopback IP.
The best thing I've seen for using a Loopback is with BGP... BGP uses a TCP connection for its peerings. You can set up the peerings using physical interfaces on the routers, but then if that physical interface goes down, then the TCP connection is torn down, thus killing your BGP peer. However, its possible to establish the BGP peer using Loopback interfaces.. each router will need a route to the other routers Loopback interface though (going out one of its physcial interfaces). Bottom line is if one physical interface goes down, but you have multiples paths to reach the other router's Loopback, the TCP connection will stay up, keeping that peer alive. Since the peers are setup through logical interfaces, when a physical interface dies it won't bring down the peer (granted you have multiple paths). Hopefully that wasn't too long winded.
Preventing Duplicate EIGRP Router IDs [IP Routing] - Cisco Systems
yep similar to ospf, you can use loopbacks to determine the router id.