[2.14] show route not showing all tables (rpki)
Hello folks, we're running 2.14 on FreeBSD 13.3 (out of the current bird2-2.14 pkg). A long time ago we set up RPKI feeds that put their routes into tables r4 and r6. I've just added a second RPKI source that feeds into table r44 and r66. "show route count" does NOT include these tables: --------------- bird> show route count 25524 of 25524 routes for 14191 networks in table master4 2775 of 2775 routes for 1808 networks in table master6 421637 of 421637 routes for 421637 networks in table r4 101571 of 101571 routes for 101571 networks in table r6 Total: 551507 of 551507 routes for 539207 networks in 4 tables bird> show route table r44 count 401463 of 401463 routes for 401463 networks in table r44 bird> shor route table r66 count No such command. Press `?' for help. --------------- (yeeees, birdc has been fully restarted, just in case something was hanging). Any idea why? Is this intentional, an oversight, or a bug? I'd like all my tables to show please. Elmar.
On Thu, Mar 21, 2024 at 09:05:04PM +0000, Elmar K. Bins via Bird-users wrote:
Hello folks,
we're running 2.14 on FreeBSD 13.3 (out of the current bird2-2.14 pkg).
A long time ago we set up RPKI feeds that put their routes into tables r4 and r6.
I've just added a second RPKI source that feeds into table r44 and r66. "show route count" does NOT include these tables:
--------------- bird> show route count 25524 of 25524 routes for 14191 networks in table master4 2775 of 2775 routes for 1808 networks in table master6 421637 of 421637 routes for 421637 networks in table r4 101571 of 101571 routes for 101571 networks in table r6 Total: 551507 of 551507 routes for 539207 networks in 4 tables
bird> show route table r44 count 401463 of 401463 routes for 401463 networks in table r44
bird> shor route table r66 count No such command. Press `?' for help. ---------------
(yeeees, birdc has been fully restarted, just in case something was hanging).
Any idea why? Is this intentional, an oversight, or a bug?
Hi The command 'show route' by default shows the first table for each network type. Use 'show route table all' if you want all tables. -- Elen sila lumenn' omentielvo Ondrej 'Santiago' Zajicek (email: santiago@crfreenet.org) "To err is human -- to blame it on a computer is even more so."
Good morning Ondrej, thanks for the quick reply. santiago@crfreenet.org (Ondrej Zajicek) wrote:
The command 'show route' by default shows the first table for each network type. Use 'show route table all' if you want all tables.
Yes, this works, thanks. I tried to insert an "all" too, but due to the weird syntax I couldn't get it into the right spot it seems. Nonetheless, this is bizarre and unexpected behaviour. I suppose there is a good reason for it? Elmar.
Hello Elmar, On 2024-03-22 08:40, Elmar K. Bins via Bird-users wrote:
santiago@crfreenet.org (Ondrej Zajicek) wrote:
The command 'show route' by default shows the first table for each network type. Use 'show route table all' if you want all tables. Nonetheless, this is bizarre and unexpected behaviour. I suppose there is a good reason for it?
The original reasons for this are historical, carried from BIRD 1 where show routewithout tableoption showed only the mastertable. For BIRD 2, we extrapolated that to show at most one table per network type. These design choices are always some kind of looking for equilibrium – if you have 1K+ tables, you typically don'ŧ want to dump them all. OTOH, in your case, it would make better sense to show all of them. Where is the boundary? While writing this and thinking about it, what if we made it configurable, to let you say for each table whether show by defaultor not? Best regards, Maria -- Maria Matejka (she/her) | BIRD Team Leader | CZ.NIC, z.s.p.o.
On Fri, Mar 22, 2024 at 03:57:23PM +0100, Maria Matejka via Bird-users wrote:
For BIRD 2, we extrapolated that to show at most one table per network type. These design choices are always some kind of looking for equilibrium – if you have 1K+ tables, you typically don'ŧ want to dump them all. OTOH, in your case, it would make better sense to show all of them. Where is the boundary?
While writing this and thinking about it, what if we made it configurable, to let you say for each table whether show by defaultor not?
Yes, i also thought about this and per-table option seems to me like a reasonable approach. -- Elen sila lumenn' omentielvo Ondrej 'Santiago' Zajicek (email: santiago@crfreenet.org) "To err is human -- to blame it on a computer is even more so."
Re folks, so I understand the history. Thanks. santiago@crfreenet.org (Ondrej Zajicek) wrote:
While writing this and thinking about it, what if we made it configurable, to let you say for each table whether show by defaultor not?
Yes, i also thought about this and per-table option seems to me like a reasonable approach.
I believe this would make it even more obscure - what's the default if I don't set it, which tables are enabled from the get-go (does it depend on naming? Ordering?), etc. etc. I would (if I were to decide) keep the setting as it is, BUT PRINT A WARNING. To solve the "hundreds of tables" thing - instead of "all", the command would take a regexp, plus *maybe* an IP family filter (only show v4/v6 tables). My 0.05 of your preferred currency. Elmar.
participants (3)
-
Elmar K. Bins -
Maria Matejka -
Ondrej Zajicek