Internal BGP (Border Gateway Protocol) explained

Hello Xinran

If you don’t use the update-source command, then the BGP process will use the exit interface to reach the neighbor as the source. In other words, the neighbor remote-as 2 command will examine the neighbor address and determine the exit interface that must be used to reach it (from the routing table). The exit interface is Fa0/0 which has an IP address of, so that will be used as the source for all BGP exchanges with that neighbor. If you want to change this behavior, to use a loopback address or another interface, then you must use the update-source command. An example of how this command is used can be found in the iBGP update source section of the Troubleshooting BGP Neighbor Adjacency lesson.

In order to have iBGP function correctly within an AS, one of the prerequisites is that all iBGP routers within the AS are reachable to each other. This is generally achieved using an IGP like EIGRP or OSPF, or it can be done using static routing. Just as long as all iBGP routers can reach each other, iBGP will function. In the lesson, Rene used OSPF to ensure that R2 and R4 in AS2 are mutually reachable.

eBGP does not generally need this because eBGP routers are typically directly connected. They exist on the edge of an AS and interconnect multiple ASes as shown in the lesson. There are exceptions to this rule of course, but I won’t go into detail here.

I hope this has been helpful!