Merging multiple routes into a single multipath route

Alexander Zubkov green at qrator.net
Tue May 3 17:37:30 CEST 2022


Hi,

You can import them to bird, do some tricks to make multipath default
route and export them back to the kernel. But it should take
precedence over routes intalled by DHCP, so you have to alter them
somehow - put them in other table, increase metric, etc.
In bird you can for example take routes from one kernel table and put
it into another with "merge paths" option. If it is the same kernel
table, you can do something with them, to get routes not from the
kernel protocol, so that they could be exported back. You can make
some local bgp session from bird to itself or you can pipe this
defaults to other tables where you will make static recursive default
routes and export these recursive routes back to your table, from
which they will be exported to the kernel.
I only not sure that the trick with recursive routes will work
directly, because you will have same prefix in the separate table and
there may be conflict between original default route and a static
default route. In that case you may need 2 separate tables and 2
recursive routes (and another 2 tables & routes for another default
route). First, you export your default to the filrst table, there you
make static recursive route for example 0.0.0.1/32 via 0.0.0.0, then
you export 0.0.0.1/32 to the second table where you have static
recursive route 0.0.0.0/0 via 0.0.0.1 and then you export this default
route from the second table back to your original (usually master)
table.

On Tue, May 3, 2022 at 4:14 PM Johannes Erwerle <jo+bird at swagspace.org> wrote:
>
> Hello.
>
> I am running a setup with 2 uplinks which both have dynamic addresses
> (via DHCP) and NAT and a Linux router. So I get 2 default routes via DHCP.
>
> I would like to use both uplinks via the linux multipath routing and I
> am searching for a way to "merge" both default routes that I get into
> one route with multiple next hops.
>
> Is there a way to accomplish that with bird? (or any other tool?)
>
> All of this is only relevant for IPv4.
>
> Greetings
> Jo


More information about the Bird-users mailing list