Date: Tue, 15 Dec 1998 16:39:49 +0000 From: "Duncan Barclay" <dmlb@ragnet.demon.co.uk> To: spork <spork@super-g.com>, Robert Withrow <witr@rwwa.com>, Bernd Walter <ticso@cicely.de>, dmlb@ragnet.demon.co.uk, hackers@FreeBSD.ORG Subject: Re: NFS thoughts Message-ID: <199812151640.IAA03516@mailgate.cadence.com> In-Reply-To: <Pine.BSF.4.00.9812151100500.23031-100000@super-g.inch.com> References: <199812150156.UAA28685@spooky.rwwa.com>
next in thread | previous in thread | raw e-mail | index | archive | help
> > On Mon, 14 Dec 1998, Robert Withrow wrote: > > How about this one. I have two servers with two nics each. One nic > on each machine has a 'public' IP and the other has a 'private' IP. > All nfs mounts happen on the private side. Both machines are nfs > servers and clients. If I take one out of service, I see these > messages from the portmapper (this is Wietse's portmapper w/ACLs): > > Dec 15 10:36:59 newshell portmap[295]: connect from 207.240.xxx.xxx > to callit(mountd): request from unauthorized host. > > So even though the mount it's trying is on 10.0.0.x, it tries > connecting out the public side... Any ideas why? > Yes, the portmapper binds to the first interface it finds that is up. Poul-Henning-Kamp raised this in 1995 http://www.freebsd.org/cgi/mid.cgi?db=irt&id=199505212052.NAA12453@re f.tfs.com in src/lib/libc/rpc/get_myaddress.c determines it's own address by finding the first "UP" interface. I have a setup where my point-to-point interface lp0 is always up, but there may be nothing in the other end. Since our p-to-p if's do not register a route for their local address, you can only contact the local-end address when there is a machine in the other end. This means that mountd (for instance) will fail to contact the portmapper... Why on earth does the rpc code not use 127.0.0.1 ??? along with Dmitry Kohmanyuk, in 1996 http://www.freebsd.org/cgi/mid.cgi?db=irt&id=199607240543.BAA00994@dog .farm.org also, it appears that portmapper is broken at least twice in this snap: first, it cannot get list of all addresses (including aliases) -I have resorted to hack on from_local.c:from_local() to return TRUE always ;-( second, mountd doesn't work if hostname is bound to alias or to nearest end of slip interface, and myself in 1997 http://www.freebsd.org/cgi/mid.cgi?db=irt&id=XFMail.971012125949.dmlb@ ragnet.demon.co.uk with Terry's reply http://www.freebsd.org/cgi/mid.cgi?db=irt&id=199710121949.MAA24364@us r08.primenet.com > Mountd doesn't start; it can't register it's RPC and fails with a > "no route to host" error. > Chasing through mountd and the RPC code in libc I found the >problem in > /usr/src/lib/libc/rpc/get_myaddress.c, which returns the IP > address > of the first configured and running network interface that it > finds. Is the link "up"? It's probably arguable that it should return the default route's interface, at best, or not return interfaces that aren't UP,RUNNING", at worst. Duncan To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-hackers" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199812151640.IAA03516>
