[OLSR-users] Re: Urgent! Neighbor node disappears and routing table not updated.
Thomas Lopatic
(spam-protected)
Wed Jul 27 12:55:06 CEST 2005
Hi Xia Yang,
Thanks for the additional information!
And something else just came to my mind. Geez, how could I forget about
this! We bind the OLSR UDP socket to a null (::) IP address. Otherwise,
i.e. if we bind the the interface IP address, we won't receive any
broadcasts and, hence, no OLSR packets. So, it looks like the kernel
that breaks OLSR uses the null address that we bind to for sending UDP
packets and the kernel that works with OLSR uses the interface's IP
address instead.
To me this looks as if the only solution for this problem is to use two
sockets for each interface - one bound to the interface's IP address and
one bound to a :: null IP address. We would send packets via the former
and thus make sure that the interface's IP address is always used. We
would receive packets via the latter and thus make sure that we received
broadcasts. I wonder whether this would work.
I'll look into all this on the "What The Hack" conference. Sounds like a
cleaner and more portable solution to me anyway. I think that Samba does
the same thing. At least you can see UDP sockets bound to each
interface's IP address and one UDP socket bound to the null IP address.
I'd like to discuss this with Andreas first, though. Maybe I am missing
something here.
-Thomas
More information about the Olsr-users
mailing list