From owner-freebsd-questions Tue Jul 18 08:18:06 1995 Return-Path: questions-owner Received: (from majordom@localhost) by freefall.cdrom.com (8.6.10/8.6.6) id IAA25479 for questions-outgoing; Tue, 18 Jul 1995 08:18:06 -0700 Received: from devnull (devnull.mpd.tandem.com [131.124.4.29]) by freefall.cdrom.com (8.6.10/8.6.6) with ESMTP id IAA25460 for ; Tue, 18 Jul 1995 08:18:01 -0700 Received: from olympus by devnull (8.6.8/8.6.6) id KAA18596; Tue, 18 Jul 1995 10:17:46 -0500 Received: by olympus (4.1/TSS2.1) id AA28706; Tue, 18 Jul 95 10:17:50 CDT From: faulkner@mpd.tandem.com (Boyd Faulkner) Message-Id: <9507181517.AA28706@olympus> Subject: Re: FBSD v2.0.5: NFS to multi-homed server broken? To: mikebo@tellabs.com (Mike Borowiec) Date: Tue, 18 Jul 1995 10:17:49 -0500 (CDT) Cc: questions@freebsd.org In-Reply-To: from "Mike Borowiec" at Jul 17, 95 06:00:23 pm X-Mailer: ELM [version 2.4 PL17] Content-Type: text Content-Length: 5930 Sender: questions-owner@freebsd.org Precedence: bulk > > Greetings - > I have found some anomolous NFS behaviour in FreeBSD 2.0.5R. > > Problem 1: > FreeBSD attempts to NFS mount a partition from a multi-homed server not > on the same ethernet, and the return route from the server to the FreeBSD > client is via another interface (with a different hostname and IP address). > If done manually, the mount command can be killed. If the mount is in the > /etc/fstab file, the machine hangs on startup and must be reset. Been there, done that. You need the noconn option. This way, when it comes back along a different route, there is not a connnection already in force. I think this is the -c option if you use mount_nfs directly. Anyway, -o noconn solved the problem for me. > > Problem 2: > Worse yet, the mount succeeds and the route from the server to the FreeBSD > client is subsequently changed when the server receives a RIP update from > its router. In this case, any session accessing the affected partition > hangs and can't be recovered. In some cases, the whole OS runs off into > the bushes and there's no keyboard response at all... big, red switch time! I got a session hang if I attempted to access the partition. > > On comp.os.bsd.freebsd.misc I've had people suggest that I not run routed > on the server. Unfortunately, it will not always be possible for a FreeBSD > user to dictate this to admin staff, especially when local SunOS machines > flawlessly handle both of the situations listed above. > > Questions refering to the Sniffer data below: > o Trace 1 shows everything works fine if you're sure which interface > the server will use to talk to the client... if not... > o Trace 2 shows that the SunOS 4.1.3 portmapper returns the proper port > number for NFS (2049), but FreeBSD complains that Port 797 is > unreachable. How did it get 797 from 2049? > o Trace 3 shows that SunOS NFS clients don't bother to portmap the NFS > port number which is already well known to be 2049. Why does FreeBSD > bother to do this apparently useless step? > o Trace 3 shows that SunOS is not bothered by the fact that the responses > are from another IP address. It seems to know that the two addresses are > in fact the same machine. How, and why doesn't FreeBSD do the same? > o Trace 3 shows that SunOS does an apparently useless "Null command" > which is ackowledged by the server... why? > o SunOS is apparently unbothered when the route from server to client > changes, while FreeBSD hangs. How does SunOS handle this and can a > similar method be enployed in FreeBSD? > > Anyone have any info on these problems and whether they will be resolved > in 2.1R? Thanks... > - Mike > > Sniffer Network Analyzer data: > Note that TELLABK and SUNK are different interfaces on the same SunOS > 4.1.3 server... both of these networks are connected to a router. Both > TOYBOX and GENESIS are on the same ethernet, which is also connected > to the same router... > > +---------------+ > |TELLABK / SUNK | > +---+--------+--+ > | | > ======= ==== > | | > +-----------+--+ > | ROUTER | > +-----+--------+ > | > ================ > | | > +--+----+ +-+----+ > |genesis| |toybox| > +-------+ +------+ > > Successful mount by FBSD 2.0.5 client of SunOS 4.1.3 server: > toybox# mount sunk:/export/home/tellabk-4 /home/tellabk-4 > > Destination Source Summary > tellabs toybox DNS C ID=1 OP=QUERY NAME=sunk > toybox tellabs DNS R ID=1 STAT=OK NAME=sunk > sunk toybox PMAP C Get port PROG=100003, VERS=2, IP=17 > toybox sunk PMAP R PORT=2049 > sunk toybox PMAP C Get port PROG=100005, VERS=1, IP=17 > toybox sunk PMAP R PORT=733 > sunk toybox MOUNT C Mount /export/home/tellabk-4 > toybox sunk MOUNT R Mount OK F=075B > > > Unsuccessful mount by FBSD 2.0.5 client of SunOS 4.1.3 server: > toybox# mount tellabk:/export/home/tellabk-4 /home/tellabk-4 > > Destination Source Summary > tellabs toybox DNS C ID=1 OP=QUERY NAME=tellabk > toybox tellabs DNS R ID=1 STAT=OK NAME=tellabk > tellabk toybox PMAP C Get port PROG=100003, VERS=2, IP=17 > toybox sunk PMAP R PORT=2049 > sunk toybox Port 797 unreachable > ICMP Destination unreachable (Port unreachable) > tellabk toybox PMAP C Get port PROG=100003, VERS=2, IP=17 > toybox sunk PMAP R PORT=2049 > sunk toybox Port 797 unreachable > ICMP Destination unreachable (Port unreachable) > ... ad infinitum ... > > Successful mount by SunOS 4.1.4 client of SunOS 4.1.3 server: > genesis# mount tellabk:/export/home/tellabk-4 /home/tellabk-4 > > Destination Source Summary > tellabs genesis NIS C Lookup key suntell.hosts.byname > genesis tellabs NIS R OK > tellabs genesis NIS C Lookup key suntell.protocols.byname > genesis tellabs NIS R OK > tellabk genesis PMAP C Get port PROG=100005, VERS=2, IP=17 > genesis sunk PMAP R PORT=733 > tellabk genesis MOUNT C Null Command > genesis sunk MOUNT R Null Command OK > tellabk genesis MOUNT C Mount /export/home/tellabk-4 > genesis sunk MOUNT R Mount OK F=0733 > > -- > -------------------------------------------------------------------------- > Michael Borowiec Network Operations Tellabs Operations, Inc. > mikebo@tellabs.com 1000 Remington Blvd./MS109 > 708-378-6007 FAX: 708-378-6714 Bolingbrook, IL, USA 60440 > -------------------------------------------------------------------------- > -- _______________________________________________________________________ Boyd Faulkner - faulkner@isd.tandem.com - http://cactus.org/~faulkner _______________________________________________________________________