[comp.sys.sun] YP: binding client to server not on same broadcast net

barad@bourbon.ee.tulane.edu (Herb Barad) (01/09/90)

I need some help.  I have a collection of Sun clients all in the same
domain.  One of the machines is in another physical building, and thus is
not on the same broadcast net.  When I run ypbind on this client, it
hangs.  How do I make use of YP in this situation.  I cannot seem to even
make this machine a slave server and pull in the maps using "ypinit -s
master_server" on the client machine.

Herb Barad	[Signal & Image Processing Laboratory]
		[Electrical Engineering Dept. - Tulane Univ.]
INTERNET:	barad@bourbon.ee.tulane.edu
USENET:		barad@bourbon.uucp

David.Maynard@K.GP.CS.CMU.EDU (01/28/90)

> I need some help.  I have a collection of Sun clients all in the same
> domain.  One of the machines is in another physical building, and thus is
> not on the same broadcast net.  When I run ypbind on this client, it
> hangs.  How do I make use of YP in this situation.  I cannot seem to even
> make this machine a slave server and pull in the maps using "ypinit -s
> master_server" on the client machine.

A partial solution is to do a 'ypset <server_ip_addr>' immediately after
starting ypbind.  The appropriate lines in /etc/rc.local (for SunOS 3.5)
are:

if [ -f /etc/ypbind ]; then
        /etc/ypbind; (echo -n ' ypbind')			>/dev/console
fi
# Force yp server to 128.2.XXX.XXX (broadcasts won't work across gateway)
if [ -f /usr/etc/yp/ypset ]; then
        /usr/etc/yp/ypset 128.2.XXX.XXX; (echo -n ' ypset')	>/dev/console
fi

This works as long as the gateway between the two networks stays up.  If
the client loses contact with the YP server (e.g. the gateway goes down
for a few minutes) then ypbind starts broadcasting for a new server (which
it will never find).  I wrote a custom version of ypbind that "strongly"
binds the server (i.e. it will sit and wait forever for its original
server to come back).  I only run "ypbind_stong" on non-broadcastable
clients since you lose the benefit of having multiple YP servers.

-David

aklietz@occam.ncsa.uiuc.edu (Alan Klietz) (02/12/90)

In article <4557@brazos.Rice.edu> David.Maynard@K.GP.CS.CMU.EDU writes:
[about how to bind a client to a YP server on a remote subnet.]

I modified ypbind to consult a file containing a list of potential YP
servers in a manner similar to the /etc/resolv.conf file that BIND uses.
My /etc/ypserv.conf file looks like this,

domain ncsa
ypserver 128.174.23.1
ypserver 128.174.20.10

Each potential ypserver is polled.  If none is found, the first candidate
is polled again and so on round-robin.  A backoff algorithm is used to
reduce the number of polls after a given amount of time.  Works great.

Alan E. Klietz
Internet:  aklietz@ncsa.uiuc.edu