Hello David
There seems to be some discrepancy about the use of the IGP metric as part of the prerequisites for multipath load sharing in BGP. The official Cisco BGP Configuration Guide agrees with the lesson that the IGP distance for the multiple candidate routes must be the same. Although it doesn’t state it explicitly, this is assumed to be the IGP metric to the next hop of each candidate route, as you too have assumed.
Now looking at some other Cisco documentation, specifically Cisco’s official description of the BGP Best Path Algorithm, we can see that the IGP distance is not always used. It agrees on the first five attributes, but when it comes to the next step, it has some additional details that you can read for yourself. But one thing it does state is:
Some BGP Multipath features put additional requirements on multipath candidates.
These are the additional requirements for eBGP multipath:
- The path must be learned from an external or confederation-external neighbor (eBGP).
- The IGP metric to the BGP next hop must be equal to the best-path IGP metric.
Based on this wording, I am led to believe that the IGP prerequisite is not always implemented, and I would assume that this is the case in your lab. I was also unable to find any specifics in any RFCs referring to BGP multipath concerning which attributes must be the same for routes to be considered for BGP multipath. From my research, I have concluded that this feature is highly vendor-specific and implementation-specific.
But this is definitely a very interesting topic to delve into and to see how various platforms behave.
I hope this has been helpful!
Laz