cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
30530
Views
18
Helpful
3
Replies

Clarification required on use of BGP update-source command?

mitchen
Level 2
Level 2

Can someone clarify on the use of BGP update-source?

My understanding was that BGP uses the IP address configured on the physical interface directly connected to the BGP peer as the source address when it establishes a BGP peering session.

You would therefore typically use the "update-source" command, for example, in a case where you may have multiple paths to the peer and wish to use the loopback address as the source so that the loss of the physical link does not affect your peering.

But if I have one physical link to my provider (ISP2) and peer with his BGP devices, the update-source by default would be this particular physical link to them?  And if that link went down, so too would my BGP peering with them? (no matter if I have another BGP router with a peering session to a different provider, ISP1) i.e. I don't need to explicitly define this physical link as an "update-source", that would be the default behaviour anyway?

Do I have that correct?

The reason I ask is that my provider (while looking into an issue which I believe is unrelated anyway) states that I SHOULD explicitly define the physical interface as an "update source" because, he states: "If the circuit between you and I goes down but the peering loopback address is still reachable via your other transit providers then the bgp peering will attempt to come up. (it will then go down again because our side will have a different peering address to your update source)

In this case you have not defined an "update source" so you will attempt to reach our loopback by following the route to our loopback in the routing table. The update source will therefore change from the direct connection to an internal interface.

For example if the interface is down, any static will go down, and the default route will be followed"

I was previously under the impression that it wouldn't make any difference whether I define the "update-source" as the physical interface or not - can someone clarify?

e.g. if I have a router config something like this with my router (physical interface 1.1.1.2) peering with ISP2's peers (7.7.7.3 and 7.7.7.4) over the one physical link (gig0/0) and static routes to those peer addresses:

interface Loopback0

ip address 5.5.5.100 255.255.255.255

!

interface GigabitEthernet0/0

description *** Physical connection to ISP ***

ip address 1.1.1.2 255.255.255.252

!

interface GigabitEthernet0/1

description *** internal interface 1 ***

ip address 5.5.5.181 255.255.255.252

!

interface GigabitEthernet0/2

description *** internal interface 2 ***

ip address 5.5.5.197 255.255.255.252

!

router bgp 65001

no bgp fast-external-fallover

network 5.5.5.0 mask 255.255.255.0

network 1.1.1.0 mask 255.255.255.252

!

neighbor 7.7.7.3 remote-as 65004

neighbor 7.7.7.3 ebgp-multihop 5

neighbor 7.7.7.4 remote-as 65004

neighbor 7.7.7.4 ebgp-multihop 5

!

ip route 0.0.0.0 0.0.0.0 1.1.1.1

ip route 7.7.7.3 255.255.255.255 1.1.1.1

ip route 7.7.7.4 255.255.255.255 1.1.1.1

!

Then my provider would say I should add the lines:

neighbor 7.7.7.3 update-source gi0/0

neighbor 7.7.7.4 update-source gi0/0

Whereas my understanding would be that this is what would happen in any case so there isn't actually a need to specify the "update-source gi0/0" and it wouldn't make any difference operationally in this scenario?  (I appreciate there is no harm in specifying it but just wondered if it would indeed make any difference?)

3 Replies 3

John Blakley
VIP Alumni
VIP Alumni

The only time that I've ever used update-source is when I'm sending peering information with a different address than what's configured on my physical interface. I'm not sure what benefit you'd get from specifying the interface that your packet is definitely going to be going out on. It doesn't look like the router is multihomed.

What do they have set up as your peering address on their end? If it's the address for g0/0, I wouldn't think specifying it would make a difference.

HTH,
John

*** Please rate all useful posts ***

HTH, John *** Please rate all useful posts ***

Harold Ritter
Level 12
Level 12

Hi,

You are correct update-source is typically used on iBGP sessions, that are generally multihop and between router's loopback addresses. I often see people configuring update-source on directly connected eBGP session but this is by no mean needed.

For eBGP multihop session, it might be needed if you have multiple paths to destination. In your scenario, there appear to be only one path to destination.

Regarding the following statement:

"If  the circuit between you and I goes down but the peering loopback  address is still reachable via your other transit providers then the bgp  peering will attempt to come up. (it will then go down again because  our side will have a different peering address to your update source)

In  this case you have not defined an "update source" so you will attempt  to reach our loopback by following the route to our loopback in the  routing table. The update source will therefore change from the direct  connection to an internal interface.

For example if the interface is down, any static will go down, and the default route will be followed"

It would not be a good idea to allow the multihop eBGP session to be established via another SP if the direct link was to go down. It is very unlikely that the TTL of 5 ("ebgp-multihop 5") would allow the session to be established anyhow.

Regards

Harold Ritter
Sr Technical Leader
CCIE 4168 (R&S, SP)
harold@cisco.com
México móvil: +52 1 55 8312 4915
Cisco México
Paseo de la Reforma 222
Piso 19
Cuauhtémoc, Juárez
Ciudad de México, 06600
México

Hi John/Harold,

thanks - that's what I was thinking but it is nice to have some confirmation!  

The address they have for us is our physical address of Gi0/0 (so in the example I gave it would be 1.1.1.2) though I believe the peer addresses that they have given us to peer with at their end are their loopback addresses.

The router itself isn't multihomed but the "Internal interfaces" I have shown connect to a couple of switches and then to another router which is peering with another provider, ISP1

I think ISP2's argument seems to be that, since we haven't specified the physical interface as the "update-source" it would be theoretically possible for ISP2's BGP peer loopback addresses to be available via our other provider (ISP1) and we might thus attempt to peer with them via that route if the physical interface to them went down. My view is that this is either highly unlikely or simply not possible, even with the existing configuration and therefore specifying the "update-source" is irrelevant.

As I say, this came up during discussions over another problem with our provider and my belief is that this sort of thing they are mentioning is just "noise" which is getting in the way of dealing with the core issue we are having with them rather than actually helping to resolve anything! I guess that's all part of the fun in working with service providers though!

Review Cisco Networking for a $25 gift card