Date: Thu, 8 Jul 2004 17:29:01 -0700 From: Doug Hardie <bc979@lafn.org> To: FreeBSD Question List <freebsd-questions@freebsd.org> Subject: Re: NIS server selection Message-ID: <F9CEE425-D13E-11D8-A27F-000393681B06@lafn.org> In-Reply-To: <20040708204417.GB58856@dan.emsphone.com> References: <200407081559.i68FxZfO043201@whoweb.com> <20040708164237.GH57155@dan.emsphone.com> <A4E63CF0-D11B-11D8-A27F-000393681B06@lafn.org> <20040708204417.GB58856@dan.emsphone.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On Jul 8, 2004, at 13:44, Dan Nelson wrote: > In the last episode (Jul 08), Doug Hardie said: >> I have NIS running on a few servers. I have had them configured with >> the -S option with only their host name so they would use the local >> resolver. However, after a few problems with ypserv dying I tried >> adding additional servers to the -S list. Everything was as normal >> till I killed ypserv on the local machine. Then it switched to the >> first host listed after the local name in the -S list. Access to NIS >> records worked fine. >> >> Then I tried to revert back to the local server. Restarting ypserv >> had no effect. NIS requests were still sent to the other server. I >> killed ypbind and restarted it with the full list. All requests were >> still sent to the other server. I killed ypbind again and restarted >> it with just the local server in the -S list. The request then were >> split about half and half with the local server and other server. >> How does ypbind know about the other server anymore? > > Running processes will talk to the server they originally made a > connection to, until that connection fails. Only then will they > contact their local ypbind and ask for another server. ypbind is not > contacted on every lookup. > >> I had to kill ypserv on the other server, wait for some requests to >> timeout (ypbind is a persistent bugger) and then it switched. Surely >> there has to be an easier way to do this. I am trying to have ypbind >> use the local server if its working and otherwise one of the other >> servers. If the local ypbind gets restarted i would like it to revert >> back to using it. > > The best you can do is make sure "ypwhich" points to the local machine > so that subsequent processes will use it. You can't force existing > processes to switch. Thanks. I have now set 3 servers in the -S list. ypwhich shows the one currently being used. I need to be able to change that. It appears that ypset is the way to do that. However, when I start ypbind with the -ypsetme argument I still get "sorry, cannot ypset for domain NAME on host". I am running ypset on that server. That message comes from a request to rpc prog 100004 which is registered to rpserv so I don't see how an argument to ypbind would help this. I don't find any similar arguments to ypserv. How do you make ypset work without opening it up to the entire world?
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?F9CEE425-D13E-11D8-A27F-000393681B06>