FortiGate
FortiGate Next Generation Firewall utilizes purpose-built security processors and threat intelligence security services from FortiGuard labs to deliver top-rated protection and high performance, including encrypted traffic.
Rosalyn
Staff
Staff
Article Id 191461

Description


This article describes about ECMP routes for recursive BGP next hop resolution.

When there are multiple ECMP routes to a BGP next hop, all of these are considered for the next hop recursive resolution.
This ensures that the outgoing traffic can be load balanced.


To support multipath, either EGBP or IGBP multipath have to be enabled:

# config router bgp
    set ebgp-multipath enable
    set ibgp-multipath enable
end


Solution

 

 
 
In this example, there are two static routes.
 
The FortiGate has learned two BGP routes from Router 1 that have the same next hop at 10.100.100.1.
The next hop is resolved by the two static routes.
 
To verify that the routes are added to the BGP routing table:
 
1) Check the two static routes:
# get router info routing-table static
Routing table for VRF=0
S       10.100.100.0/24 [10/0] via 172.16.200.55, port9
                        [10/0] via 172.16.203.2, agg1
2) For FortiOS v7.0.0 and Later, Confirm that both routes are in the BGP routing table.
# get router info routing-table bgp
Routing table for VRF=0
B       10.100.10.0/24 [20/200] via 10.100.100.1 (recursive via 172.16.200.55, port9), 00:00:07
                                                 (recursive via 172.16.203.2, agg1), 00:00:07
B       10.100.11.0/24 [20/200] via 10.100.100.1 (recursive via 172.16.200.55, port9), 00:00:07
                                                 (recursive via 172.16.203.2, agg1), 00:00:07

 

Note that for FortiOS v6.4 and earlier, When there are multiple ECMP routes to a BGP next hop which require recursive resolution, then BGP selects only the first ECMP route for the resolution.
So in the above example, the subnet 10.100.100.0/24 could be reached via both port9 and agg1, because BGP next-hop 10.100.100.1 is reachable via both of them. However, BGP installs route 10.100.10.0/24 only against port9 as BGP selects only the first ECMP route for the resolution.

This not only means that the outgoing traffic won't be load-balanced, but it also means that the traffic that arrives on agg1 will be potentially dropped by RPF check.

 

In FortiOS v7.0.0 and later, all ECMP routes are considered for the next hop recursive resolution.

Contributors