EBGP Multihop

Hi Jason,

R1(config-router)# neighbor 2.2.2.2 remote-as 2

That command instructs R1 to establish a neighbor relationship with 2.2.2.2. It does not, however, tell R1 to use any specific interface as source or “from” address when establishing the relationship. By default, BGP will try to use the closest interface to the neighbor to establish the relationship. Knowing this, what do you suppose would happen if we just used the command above to try to establish a BGP neighbor relationship with R2?

From R2’s perspective it would be receiving packets from R1, but the source address would be R1’s closest inteface–in this case either 192.168.12.1 or 192.168.21.1. Now, assuming that the administrator correctly setup R2 ahead of time, R2 is expecting a relationship with R1, but only from the source address of 1.1.1.1 (R1’s loopback). The reason for this is because the R2 administrator has already typed in “neighbor 1.1.1.1 remote-as 1” on his side.

When the BGP Open packet arrives from R1, but not from 1.1.1.1, R2 will ignore it, so a relationship will never be formed! This is why the additional command of: “neighbor 2.2.2.2 update source loopback0” is necessary. R1 is being told, “Whenever you talk to R2 at 2.2.2.2, be sure to use the loopback interface as the packet source.”

--Andrew

5 Likes