Source Address Dependent Routing patch
Dean
dluga93 at gmail.com
Mon May 22 12:36:47 CEST 2017
On 05/22/2017 12:07 PM, Toke Høiland-Jørgensen wrote:
>> 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?
No, the fib structure holds only one address type. But depending on how
you plan to use it, maybe you can simulate non-sadr entries using ::/0
source prefix?
>> 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?
If you insert two routes with the same destination in the routing table,
one of them being SADR, the dst-only route is ignored.
2001:db9:1::3 from 2001:db9:1::4 dev v0 metric 1024
2001:db9:1::3 dev v0 metric 1024
Pinging to 2001:db9:1::3 using a source address that's not 2001:db9:1::4
gives a network unreachable error. Though if you remove the SADR route,
or if you add another SADR route with the correct source address, it
works fine.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://trubka.network.cz/pipermail/bird-users/attachments/20170522/0543e12b/attachment.html>
More information about the Bird-users
mailing list