Log in to ask questions, share your expertise, or stay connected to content you value. Don’t have a login? Learn how to become a member.
set routing-instances ToISP3 instance-type forwarding set routing-instances ToISP4 instance-type forwarding set routing-options rib-groups fbf-rib import-rib inet6.0 set routing-options rib-groups fbf-rib import-rib ToISP3.inet6.0 set routing-options rib-groups fbf-rib import-rib ToISP4.inet6.0 set protocols bgp group ToISP4 type external set protocols bgp group ToISP4 advertise-inactive set protocols bgp group ToISP4 family inet6 unicast rib-group fbf-rib set protocols bgp group ToISP4 neighbor 2004:aaaa:bbbb:cccc::6 peer-as 30987 set protocols bgp group ToISP3 type external set protocols bgp group ToISP3 advertise-inactive set protocols bgp group ToISP3 family inet6 unicast rib-group fbf-rib set protocols bgp group ToISP3 neighbor 2004:aaaa:bbbb:cccc::2 peer-as 16535
I like to know why the three routing tables select different next hop. I thought they would select the same next hop.
root@SRX4# run show route 2008:8:8:8::8 inet6.0: 18 destinations, 23 routes (18 active, 0 holddown, 0 hidden) + = Active Route, - = Last Active, * = Both 2008:8:8:8::/64 *[BGP/170] 00:27:40, localpref 100 AS path: 16535 8888 I, validation-state: unverified > to 2004:aaaa:bbbb:cccc::2 via ge-0/0/0.0 [BGP/170] 00:23:36, localpref 100 AS path: 30987 8888 I, validation-state: unverified > to 2004:aaaa:bbbb:cccc::6 via ge-0/0/1.0 ToISP3.inet6.0: 1 destinations, 2 routes (1 active, 0 holddown, 0 hidden) + = Active Route, - = Last Active, * = Both 2008:8:8:8::/64 *[BGP/170] 00:06:17, localpref 100 AS path: 30987 8888 I, validation-state: unverified > to 2004:aaaa:bbbb:cccc::6 via ge-0/0/1.0 [BGP/170] 00:04:56, localpref 100 AS path: 16535 8888 I, validation-state: unverified > to 2004:aaaa:bbbb:cccc::2 via ge-0/0/0.0 ToISP4.inet6.0: 1 destinations, 2 routes (1 active, 0 holddown, 0 hidden) + = Active Route, - = Last Active, * = Both 2008:8:8:8::/64 *[BGP/170] 00:06:17, localpref 100 AS path: 30987 8888 I, validation-state: unverified > to 2004:aaaa:bbbb:cccc::6 via ge-0/0/1.0 [BGP/170] 00:04:56, localpref 100 AS path: 16535 8888 I, validation-state: unverified > to 2004:aaaa:bbbb:cccc::2 via ge-0/0/0.0
Hello,I would assume this is due to the fact that the forwarding instances learned the route from each external AS at a different time, my guess is the rib-group was applied to each neighbor at separate commit. Based on the outputs shared, ISP4 (neighbor 2004:aaaa:bbbb:cccc::6) had the rib-group applied first and as such the route uptime is higher than the route coming from ISP3.This would then result in the ISP4 route being selected as the best path since it was learned first and to minimize route flapping, path from ISP3 is not selected (step #11 of the BGP path selection algorithm ).You can always check the extensive output of the show route command to confirm why a certain route was not selected as the best by looking for the "Inactive reason".
set routing-instances ToISP3 instance-type forwardingset routing-instances ToISP4 instance-type forwardingset routing-options rib-groups fbf-rib import-rib inet6.0set routing-options rib-groups fbf-rib import-rib ToISP3.inet6.0set routing-options rib-groups fbf-rib import-rib ToISP4.inet6.0set protocols bgp group ToISP4 type externalset protocols bgp group ToISP4 advertise-inactiveset protocols bgp group ToISP4 family inet6 unicast rib-group fbf-ribset protocols bgp group ToISP4 neighbor 2004:aaaa:bbbb:cccc::6 peer-as 30987set protocols bgp group ToISP3 type externalset protocols bgp group ToISP3 advertise-inactiveset protocols bgp group ToISP3 family inet6 unicast rib-group fbf-ribset protocols bgp group ToISP3 neighbor 2004:aaaa:bbbb:cccc::2 peer-as 16535
root@SRX4# run show route 2008:8:8:8::8 inet6.0: 18 destinations, 23 routes (18 active, 0 holddown, 0 hidden)+ = Active Route, - = Last Active, * = Both2008:8:8:8::/64 *[BGP/170] 00:27:40, localpref 100 AS path: 16535 8888 I, validation-state: unverified > to 2004:aaaa:bbbb:cccc::2 via ge-0/0/0.0 [BGP/170] 00:23:36, localpref 100 AS path: 30987 8888 I, validation-state: unverified > to 2004:aaaa:bbbb:cccc::6 via ge-0/0/1.0ToISP3.inet6.0: 1 destinations, 2 routes (1 active, 0 holddown, 0 hidden)+ = Active Route, - = Last Active, * = Both2008:8:8:8::/64 *[BGP/170] 00:06:17, localpref 100 AS path: 30987 8888 I, validation-state: unverified > to 2004:aaaa:bbbb:cccc::6 via ge-0/0/1.0 [BGP/170] 00:04:56, localpref 100 AS path: 16535 8888 I, validation-state: unverified > to 2004:aaaa:bbbb:cccc::2 via ge-0/0/0.0ToISP4.inet6.0: 1 destinations, 2 routes (1 active, 0 holddown, 0 hidden)+ = Active Route, - = Last Active, * = Both2008:8:8:8::/64 *[BGP/170] 00:06:17, localpref 100 AS path: 30987 8888 I, validation-state: unverified > to 2004:aaaa:bbbb:cccc::6 via ge-0/0/1.0 [BGP/170] 00:04:56, localpref 100 AS path: 16535 8888 I, validation-state: unverified > to 2004:aaaa:bbbb:cccc::2 via ge-0/0/0.0