On Mon, 2007-08-20 at 13:29 +0200, Sven-Ola Tuecke wrote:
[....]
> mmh. I will investigate once more the old routing code. If it's supposed to 
> work withouth the kernel net route, maybe the "routing-cleanup" needs some 
> tweaks.

Well, in an ideal world all ioctl()s/netlink operations return without
error (so that erroneous ones can easily be identified).
That's actually the reason for investigating the failing route-add/del
operations. Guess I have to dump all of them (+ result) and see if it
can find the reason for the failing.

> If the error is ignored by the kernel with ioctl(), the routes may show up 

Is it really?
This was meant more as a question than a statement to verify my
conclusions.

> after a while because they're contantly updated ([...] because of metric 
> changes). So the first "ip route add 12.1.3.4 via 12.3.2.1 dev eth0" may 
> fail. Then after a while a "ip route add 12.3.2.1 dev eth0" happens. And 
> some time after startup one of the successive "ip route add 12.1.3.4 via 
> 12.3.2.1 dev eth0" commands will succeed.

Yes, maybe.

> Not sure about the implications. E.g. to remove a route. Is the "via" route 
> deleted automatically if the dependend route is removed? Or does this 
> produce errors (and hence some stray routes after olsrd exits?). Need to 

I didn't saw any stray routes in the last time where I was constantly
stopping/starting some olsrd (only once after a "kill -9";-).
But I can't remember seeing one before (but that's just my node and that
is as peripheral as it can be ...).

> dive in...

OK.

> P.P.S. to remove the auto network route is probably a workaround for 
> multiple ifaces with same ip range in the system (to force ARP + 
> non-hostroute-pings for a particular iface, e.g. the wifi NIC). I would 

ACK. Now that you mentioned it I remember that we actually had a
discussion years ago ....

> prefer a more narrow netmask for tunnel-IP's instead. This is more clean...

First that issue must be discussed and decided elsewhere (and with other
people) IMHO - it is probably not enough to change only one side of the
tunnel.

Second, IIUC this actually applies to each host with more than one
interface (be it tap, tun, eth, wlan, ...) in the same network (and I'm
not proprosing to define 10 different networks to support 10 interfaces
on one host).
Or I'm missing something?

BTW I would prefer using TUN interfaces (or any other point-to-point
interface), with and without any IP-address, and I can't see a reason
why this couldn't work.

[ Fullquote deleted ]

	Bernd
-- 
Firmix Software GmbH                   http://www.firmix.at/
mobil: +43 664 4416156                 fax: +43 1 7890849-55
          Embedded Linux Development and Services




