Source Address Dependent Routing patch

Toke Høiland-Jørgensen toke at toke.dk
Mon May 22 12:07:05 CEST 2017


Dean Luga <dluga93 at gmail.com> writes:

> On 22 May 2017 11:28, "Toke Høiland-Jørgensen" <toke at toke.dk> wrote:
>
>  Dean <dluga93 at gmail.com> writes:
>
>  > Hello,
>  >
>  > This is another try at extending the static and OSPFv3 protocols to
>  > support Source Address Dependent Routing (SADR), also called Source
>  > Specific Routing. This basically means that routing will take into
>  > account not only the destination address, but the source address as
>  > well.
>
>  Nice work! After a quick look at this (I'll go through it in more detail
>  later), it looks like I can use the core parts of this for Babel as
>  well. :)
>
>  It looks like a separate channel is needed for SADR routes; (right?) but
>  can SADR and non-SADR ipv6 routes co-exist in the same FIB?
>
>  -Token
>
> Yes, they can. You can use two kernel protocols, one with the SADR
> channel  and the other with ipv6. Both sets of routes are stored in
> the same kernel table.

Ah, yes, but I meant inside Bird in this instance. Can the bird 'struct
fib' hold both types of routes, or do you need a separate one for each?

> But the kernel bug is still present. Using both types of routes in the
> same table gives undefined behavior. A hacky workaround would be to
> replace ::/0 sources with 2000::/3 in netlink, but it would reduce the
> set of accepted prefixes.

Do you have a quick howto on triggering this bug?

-Toke



More information about the Bird-users mailing list