Hello, I am trying to import 'local' routes from the kernel into Bird without any success... The route is installed as: "/sbin/ip -6 route add local 2001:db8:cafe:babe::/64 dev lo" (it allows the host to reply/answer to any address in this prefix :-)) My bird6.conf is: protocol direct { interface "lo"; } # Table main is 254 # Table local is 255 protocol kernel { debug all; learn; persist; scan time 10; import all; export all; kernel table 255; } The log shows an attempt to import a connected route but not the 'local' one 2016-11-25 11:37:59 <TRACE> kernel1 < interface lo goes up 2016-11-25 11:37:59 <TRACE> kernel1 < interface eth0 goes up 2016-11-25 11:37:59 <TRACE> kernel1 < interface eth1 goes up 2016-11-25 11:37:59 <TRACE> kernel1: State changed to up 2016-11-25 11:37:59 <TRACE> kernel1: Scanning routing table 2016-11-25 11:37:59 <TRACE> kernel1: Pruning table master 2016-11-25 11:37:59 <TRACE> kernel1: Pruning inherited routes 2016-11-25 11:38:00 <TRACE> kernel1 < rejected by protocol 2001:db8:f00:beef::/64 dev eth1 2016-11-25 11:38:05 <TRACE> kernel1 < rejected by protocol 2001:db8:f00:beef::/64 dev eth1 2016-11-25 11:38:09 <TRACE> kernel1: Scanning routing table 2016-11-25 11:38:09 <TRACE> kernel1: Pruning table master 2016-11-25 11:38:09 <TRACE> kernel1: Pruning inherited routes Assistance will be welcome (and I did google a lot) -éric
Hi Eric, have you tried "device routes yes" ? http://bird.network.cz/?get_doc&f=bird-6.html#ss6.6 On 11/25/2016 01:39 PM, Eric Vyncke (evyncke) wrote:
Hello,
I am trying to import 'local' routes from the kernel into Bird without any success...
The route is installed as: "/sbin/ip -6 route add local 2001:db8:cafe:babe::/64 dev lo" (it allows the host to reply/answer to any address in this prefix :-))
My bird6.conf is:
protocol direct {
interface "lo";
}
# Table main is 254
# Table local is 255
protocol kernel {
debug all;
learn;
persist;
scan time 10;
import all;
export all;
kernel table 255;
}
The log shows an attempt to import a connected route but not the 'local' one
2016-11-25 11:37:59 <TRACE> kernel1 < interface lo goes up
2016-11-25 11:37:59 <TRACE> kernel1 < interface eth0 goes up
2016-11-25 11:37:59 <TRACE> kernel1 < interface eth1 goes up
2016-11-25 11:37:59 <TRACE> kernel1: State changed to up
2016-11-25 11:37:59 <TRACE> kernel1: Scanning routing table
2016-11-25 11:37:59 <TRACE> kernel1: Pruning table master
2016-11-25 11:37:59 <TRACE> kernel1: Pruning inherited routes
2016-11-25 11:38:00 <TRACE> kernel1 < rejected by protocol 2001:db8:f00:beef::/64 dev eth1
2016-11-25 11:38:05 <TRACE> kernel1 < rejected by protocol 2001:db8:f00:beef::/64 dev eth1
2016-11-25 11:38:09 <TRACE> kernel1: Scanning routing table
2016-11-25 11:38:09 <TRACE> kernel1: Pruning table master
2016-11-25 11:38:09 <TRACE> kernel1: Pruning inherited routes
Assistance will be welcome (and I did google a lot)
-éric
Hi Volodymyr, Thanks for your suggestion, but, already tried without any success :-( -éric On 25/11/16 13:21, "Volodymyr Samodid" <vladimir.samoded@onat.edu.ua> wrote: Hi Eric, have you tried "device routes yes" ? http://bird.network.cz/?get_doc&f=bird-6.html#ss6.6 On 11/25/2016 01:39 PM, Eric Vyncke (evyncke) wrote: > Hello, > > > > I am trying to import 'local' routes from the kernel into Bird without > any success... > > > > The route is installed as: "/sbin/ip -6 route add local > 2001:db8:cafe:babe::/64 dev lo" (it allows the host to reply/answer to > any address in this prefix :-)) > > > > My bird6.conf is: > > > > protocol direct { > > interface "lo"; > > } > > > > # Table main is 254 > > # Table local is 255 > > protocol kernel { > > debug all; > > learn; > > persist; > > scan time 10; > > import all; > > export all; > > kernel table 255; > > } > > > > The log shows an attempt to import a connected route but not the 'local' one > > > > 2016-11-25 11:37:59 <TRACE> kernel1 < interface lo goes up > > 2016-11-25 11:37:59 <TRACE> kernel1 < interface eth0 goes up > > 2016-11-25 11:37:59 <TRACE> kernel1 < interface eth1 goes up > > 2016-11-25 11:37:59 <TRACE> kernel1: State changed to up > > 2016-11-25 11:37:59 <TRACE> kernel1: Scanning routing table > > 2016-11-25 11:37:59 <TRACE> kernel1: Pruning table master > > 2016-11-25 11:37:59 <TRACE> kernel1: Pruning inherited routes > > 2016-11-25 11:38:00 <TRACE> kernel1 < rejected by protocol > 2001:db8:f00:beef::/64 dev eth1 > > 2016-11-25 11:38:05 <TRACE> kernel1 < rejected by protocol > 2001:db8:f00:beef::/64 dev eth1 > > 2016-11-25 11:38:09 <TRACE> kernel1: Scanning routing table > > 2016-11-25 11:38:09 <TRACE> kernel1: Pruning table master > > 2016-11-25 11:38:09 <TRACE> kernel1: Pruning inherited routes > > > > Assistance will be welcome (and I did google a lot) > > > > -éric > > > > >
Sorry, I've not read your email carefully. I saw errors "kernel1 < rejected by protocol" in log and lack of "device routes yes" in config and suggest my solution. local table has special meaning in Linux, and I've never try do some trick with it. I can suggest use ip monitor and read bird source. On 11/25/2016 04:32 PM, Eric Vyncke (evyncke) wrote:
Hi Volodymyr,
Thanks for your suggestion, but, already tried without any success :-(
-éric
On 25/11/16 13:21, "Volodymyr Samodid" <vladimir.samoded@onat.edu.ua> wrote:
Hi Eric, have you tried "device routes yes" ?
http://bird.network.cz/?get_doc&f=bird-6.html#ss6.6
On 11/25/2016 01:39 PM, Eric Vyncke (evyncke) wrote: > Hello, > > > > I am trying to import 'local' routes from the kernel into Bird without > any success... > > > > The route is installed as: "/sbin/ip -6 route add local > 2001:db8:cafe:babe::/64 dev lo" (it allows the host to reply/answer to > any address in this prefix :-)) > > > > My bird6.conf is: > > > > protocol direct { > > interface "lo"; > > } > > > > # Table main is 254 > > # Table local is 255 > > protocol kernel { > > debug all; > > learn; > > persist; > > scan time 10; > > import all; > > export all; > > kernel table 255; > > } > > > > The log shows an attempt to import a connected route but not the 'local' one > > > > 2016-11-25 11:37:59 <TRACE> kernel1 < interface lo goes up > > 2016-11-25 11:37:59 <TRACE> kernel1 < interface eth0 goes up > > 2016-11-25 11:37:59 <TRACE> kernel1 < interface eth1 goes up > > 2016-11-25 11:37:59 <TRACE> kernel1: State changed to up > > 2016-11-25 11:37:59 <TRACE> kernel1: Scanning routing table > > 2016-11-25 11:37:59 <TRACE> kernel1: Pruning table master > > 2016-11-25 11:37:59 <TRACE> kernel1: Pruning inherited routes > > 2016-11-25 11:38:00 <TRACE> kernel1 < rejected by protocol > 2001:db8:f00:beef::/64 dev eth1 > > 2016-11-25 11:38:05 <TRACE> kernel1 < rejected by protocol > 2001:db8:f00:beef::/64 dev eth1 > > 2016-11-25 11:38:09 <TRACE> kernel1: Scanning routing table > > 2016-11-25 11:38:09 <TRACE> kernel1: Pruning table master > > 2016-11-25 11:38:09 <TRACE> kernel1: Pruning inherited routes > > > > Assistance will be welcome (and I did google a lot) > > > > -éric > > > > >
On Fri, Nov 25, 2016 at 11:39:32AM +0000, Eric Vyncke (evyncke) wrote:
Hello,
I am trying to import 'local' routes from the kernel into Bird without any success...
The route is installed as: "/sbin/ip -6 route add local 2001:db8:cafe:babe::/64 dev lo" (it allows the host to reply/answer to any address in this prefix :-))
Hello Routes in table 255 have special type (RTN_LOCAL, RTN_BROADCAST ...) and these route types are unsupported by BIRD. You could import them as unreachable routes by compiling BIRD with attached patch. Also note that routes with 'proto kernel' are ignored, byt that is probably not relevant to your case, just to other routes in table 255. -- Elen sila lumenn' omentielvo Ondrej 'Santiago' Zajicek (email: santiago@crfreenet.org) OpenPGP encrypted e-mails preferred (KeyID 0x11DEADC3, wwwkeys.pgp.net) "To err is human -- to blame it on a computer is even more so."
Ondrej, But grep'ing for RTN_LOCAL in the code, I have also tried this but then the route is marked 'unreachable' and I cannot import it to be exporting in OSPFv3 (which is my goal actually). Thanks for confirming that I was looking in the right direction ;-) -éric On 25/11/16 15:46, "Ondrej Zajicek" <santiago@crfreenet.org> wrote: On Fri, Nov 25, 2016 at 11:39:32AM +0000, Eric Vyncke (evyncke) wrote: > Hello, > > I am trying to import 'local' routes from the kernel into Bird without any success... > > The route is installed as: "/sbin/ip -6 route add local 2001:db8:cafe:babe::/64 dev lo" (it allows the host to reply/answer to any address in this prefix :-)) Hello Routes in table 255 have special type (RTN_LOCAL, RTN_BROADCAST ...) and these route types are unsupported by BIRD. You could import them as unreachable routes by compiling BIRD with attached patch. Also note that routes with 'proto kernel' are ignored, byt that is probably not relevant to your case, just to other routes in table 255. -- Elen sila lumenn' omentielvo Ondrej 'Santiago' Zajicek (email: santiago@crfreenet.org) OpenPGP encrypted e-mails preferred (KeyID 0x11DEADC3, wwwkeys.pgp.net) "To err is human -- to blame it on a computer is even more so."
Hello! If you want to export these routes via OSPF3, it should be enough to add the interfaces as stub: interface "eth5" { stub; } where "eth5" is the interface that creates the route you need to export via OSPF3. (Writing without looking into doc, the syntax may be slightly different.) MQ On 11/25/2016 04:24 PM, Eric Vyncke (evyncke) wrote:
Ondrej,
But grep'ing for RTN_LOCAL in the code, I have also tried this but then the route is marked 'unreachable' and I cannot import it to be exporting in OSPFv3 (which is my goal actually).
Thanks for confirming that I was looking in the right direction ;-)
-éric
On 25/11/16 15:46, "Ondrej Zajicek" <santiago@crfreenet.org> wrote:
On Fri, Nov 25, 2016 at 11:39:32AM +0000, Eric Vyncke (evyncke) wrote: > Hello, > > I am trying to import 'local' routes from the kernel into Bird without any success... > > The route is installed as: "/sbin/ip -6 route add local 2001:db8:cafe:babe::/64 dev lo" (it allows the host to reply/answer to any address in this prefix :-))
Hello
Routes in table 255 have special type (RTN_LOCAL, RTN_BROADCAST ...) and these route types are unsupported by BIRD.
You could import them as unreachable routes by compiling BIRD with attached patch.
Also note that routes with 'proto kernel' are ignored, byt that is probably not relevant to your case, just to other routes in table 255.
-- Elen sila lumenn' omentielvo
Ondrej 'Santiago' Zajicek (email: santiago@crfreenet.org) OpenPGP encrypted e-mails preferred (KeyID 0x11DEADC3, wwwkeys.pgp.net) "To err is human -- to blame it on a computer is even more so."
participants (4)
-
Eric Vyncke (evyncke) -
Jan Matejka -
Ondrej Zajicek -
Volodymyr Samodid