Fix IPv6 ECMP handling with 4.11+ kernel

Vincent Bernat bernat at luffy.cx
Fri Sep 1 11:59:19 CEST 2017


 ❦  1 septembre 2017 12:53 +0300, Lennert Buytenhek <buytenh at wantstofly.org> :

>> > Starting from kernel 4.11 (commit beb1afac518d), IPv6 are now notified
>> > using RTA_MULTIPATH, like IPv4 routes. Those routes are not handled
>> > correctly by BIRD. We handle them correctly. This also enable to parse
>> > alien routes correctly. Route modifications is still done in the old
>> > way as for insertion/deletion, this is not helpful to optimize in those
>> > cases and for replace, IPv4 case is not optimized either. It should be
>> > possible to detect appropriate support for RTA_MULTIPATH when receiving
>> > an IPv6 route with this attribute, but I don't see how it would be
>> > helpful, so I didn't do it (simpler code this way).
>> 
>> Hi
>> 
>> Thanks for the patch, it looks OK. I will try it and merge it.
>> 
>> We plan to simplify the multipath processing code in 2.x branch so that
>> it will depend on the new kernel behavior (and therefore will require
>> Linux 4.0.11 for IPv6 multipath), but we keep the current code in 1.6.x.
>
> We have lots of kit (e.g. https://www.arista.com/en/products/7280r-series)
> that comes with:
>
> 	Linux labtest 3.4.43.Ar-3964936.4173F #1 SMP PREEMPT Mon Dec 19 14:31:21 PST 2016 x86_64 x86_64 x86_64 GNU/Linux
>
> And which is impossible for us to upgrade to newer kernel versions.
> If bird 2.0 will require Linux >= 4.11 for IPv6 multipath, then
> upgrading to bird 2.0 would not be an option for us.

I agree with you. Currently, there is no distro with a 4.11+ kernel
(Ubuntu LTS is 4.4, Debian is 4.9, CentOS is 3.13). It seems a bit early
to require such a recent kernel.
-- 
In the first place, God made idiots; this was for practice; then he made
school boards.
		-- Mark Twain



More information about the Bird-users mailing list