Coda File System

Re: Coda server trouble with multiple NIC's

From: Greg Troxel <>
Date: 03 Jun 2003 16:18:32 -0400
Jan Harkes <> writes:

> On Tue, Jun 03, 2003 at 09:47:20AM -0400, Greg Troxel wrote:
> >   The only solution right now is to bind the server explicitly to a single
> >   ip-address on your multi-homed machine. There should be a server_ip
> >   options in server.conf for that.
> > 
> > This would be a good thing to add.
> Nice, because it has been there for a while now ;)

I think you said server_ip in your mail, and I grepped for in in
server.conf.ex and didn't find it.

> On one hand you are saying that a server probably should have a single
> address, but when we introduce IPv6 the server will have at least 2
> already (v4 & v6), and as far as I can tell IPv6 also has these various
> link-local/site-local/etc. addresses.

Yes.  I think single address makes sense for v4, but v4/v6 can't be
single.  I think link-local is not relevant; coda shouldn't run over
that - it is more for routing etc.

> So basically we need to be able to pass a set of alternative addresses
> to reach a server down into RPC2, which is exactly what most of the
> stuff in the the IPv6 patch for RPC2 is doing.
> And we need to rely on something somewhere. I'm not going to maintain
> the authorative list of all Codaservers and their alternate addresses.
> getaddrinfo() should do fine.

If we listen on everything separately, that's fine.

> This already works fine if the multiple interfaces are hooked into
> different networks. We only have a problem when a host has all
> interfaces hooked up to the same network. This is typically a (failed)
> attempt at load balancing or channel bonding without actually doing so.

It works if routing is guaranteed that a packet for address x comes in
over interface with x.  But in my world that isn't true, because I
have a machine that could be a server with 3 addresses (and that is a
router).  The primary address is on the normal lan, and there is a
second lan and a ppp link.  If my notebook is on the other lan (for
802.11), or at home, so it comes over ppp, packets arrive for the
primary address on the other interface.  My client changes address all
the time depending on where it is.  So I am not trying to do any such
load balancing and I am pretty sure there is still a problem.

> I think that binding to specific interfaces introduces too much
> complexity and doesn't really help except the few cases where the
> network routing is IMHO broken.

See above - I have not wanted to have a multihomed server but perhaps
I'll try it.

> IPv6 support is pretty much ready and jumping in it's own branch in
> RPC2. My laptop has a post-6.0 Coda tree where auth2, clog, cunlog, au,
> rpc2portmap, updateclnt, and updatesrv are working nicely and
> successfully bind to both IPv4 and IPv6. Venus and codasrv will take
> some more work, because they currently track their peers based on the
> IPv4-address.


        Greg Troxel <>
Received on 2003-06-03 16:21:18