Messages in this thread | | | Date | Wed, 23 Jul 1997 04:48:18 -0400 (EDT) | From | Ion Badulescu <> | Subject | NFS troubles when mounting multihomed server |
| |
Hi,
I'm having some problems mounting an NFS share from a multihomed server: if the hostname resolves to a different interface than the one on the route to the server (due to DNS RR for example), the mount call just hangs. Tcpdump shows that linux is sending requests to the resolved address, receives replies from the other address, doesn't grok them and sends back ICMP port unreachable.. This goes on for ever, until the client is rebooted.
I know this is an old problem with "connected" UDP sockets, when the sender receives packets from a different address it sent requests to. Now, from looking through various nfs and net stuff, it looks like udp_connect is trying to guess the right address by using ip_rt_route (this is just a guess, btw). However, the only code in nfs that hints at calling udp_connect is in nfsroot.c - certainly not what I'm looking for.
Is there any fix for this, short of playing dirty tricks with /etc/hosts? Solaris doesn't appear to have this problem (it's a Solaris server I'm trying to mount btw), NetBSD allegedly has a NFSMNT_NOCONN flag that solves it...
[part of the problem might be that the all the routes to the server's interface have the same metric, but personally I doubt it]
Thanks, Ionut
-- It is better to keep your mouth shut and be thought a fool, than to open it and remove all doubt.
| |