Linux IPv6 router table size.

Richard Hartmann richih.mailinglist at gmail.com
Sun Jan 16 16:24:20 CET 2011


On Sun, Jan 16, 2011 at 06:41, Ted Mittelstaedt <tedm at ipinc.net> wrote:

> Then why are you letting quagga off the hook here?  Why allow the
> quagga program get away with failing to add the 4097th route
> when quagga could easily have used the sysctl to see that the
> max route size had been hit and then proceeded to adjust it to add
> the route?

Unless I am telling any user-space daemon _specifically_ that it's
allowed to touch sysctl, it better not do anything to it. George's
suggestion sounds sane, though.


>> why they are put in there is of no concern to the anyone. This view is
>> supported by the fact that there is no such limit for IPv4 routes.
>
> That is incorrect.  There is a limit on IPv4 routes, it is dependent on
> total system memory.

By "such", I meant "hard, non-dynamic". I could have worded that more
precisely, agreed.


> I think your still completely missing the point.

Why?


> First, when it started, it could have checked out the
> system and issued a message to the user for any system parameters that
> appear to be too low - such as the max route limit, or buffers, etc.

Agreed. But that does not actually fix anything.


> Second
> it could have raised the parameter itself

Unless it's been given explicit permission to do this, no user=space
program may do this. Ever.


> unless on
> Linux the limit isn't settable after the system is booted.

As per the initial email by Jan, it's trivial to change during runtime:

adamantium ~ # cat /proc/sys/net/ipv6/route/max_size
4096
adamantium ~ # echo "10000" >! /proc/sys/net/ipv6/route/max_size
adamantium ~ # cat /proc/sys/net/ipv6/route/max_size
10000
adamantium ~ #

sysctl works the same. As do /etc/sysctl.conf & /etc/sysctl.d


Richard


More information about the ipv6-ops mailing list