On Wed, 2019-10-23 at 13:38 +0200, Ondrej Zajicek wrote:
CAUTION: This email originated from outside of the organization. Do not click links or open attachments unless you recognize the sender and know the content is safe.
On Wed, Oct 23, 2019 at 09:11:31AM +0000, Kenth Eriksson wrote:
Hi!
When showing routing table, the output can have '*', '!' or empty depending on the route. I thought that the asterisk ('*') meant that the route is a primary route installed into the kernel. But this does not seem to always be true, e.g.
Hi
The asterisk means the route is selected as best (i.e. is the first of routes for the same network). This does not mean that the route is exported to kernel. For example in route reflectors / route servers, a route is selected as best and propagated to BGP peers, but no Kernel protocol is configured.
But i do not understand the cases below, where there is no other route for that network and the only route does not have asterisk.
Simplest of use case, its a default route from the kernel. But still no asterisk. Below is a gdb trace in function rt_show_rte gdb) print ia $1 = (byte *) 0xffc6c3ab "0.0.0.0/0" (gdb) print e $2 = (rte *) 0x56939d14 (gdb) print e->net->routes $3 = (struct rte *) 0x56939c54 (gdb) print e->next $4 = (struct rte *) 0x0 Obviously e->net->routes is not equal to e, thus no asterisk. /k
consider the following:
bird> show route 0.0.0.0/0 Table master4: 0.0.0.0/0 unicast [kernel1 2019-10-22] (215) via 10.210.137.1 on eth1
-- 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."