ypserv(1M) ypserv(1M)
NAME
ypserv, ypbind - NIS server and binder processes
SYNOPSIS
/usr/lib/netsvc/yp/ypserv
/usr/lib/netsvc/yp/ypbind [-ypset | -ypsetme]
DESCRIPTION
The NIS provides a simple network lookup service consisting of data-
bases and processes. The databases are dbm(3C) files in a directory
tree rooted at /var/yp. These files are described in ypfiles(4). The
processes are /usr/sbin/ypserv, the NIS database lookup server, and
/usr/sbin/ypbind, the NIS binder. The programmatic interface to NIS is
described in ypclnt(3N). Administrative tools are described in
yppush(1M), ypxfr(1M), yppoll(1M), ypwhich(1), and ypset(1M). Tools to
view the contents of NIS maps are described in ypcat(1), and
ypmatch(1). Database generation and maintenance tools are described in
ypinit(1M), ypmake(1M), and makedbm(1M).
Both ypserv and ypbind are daemon processes, which are activated with
ypinit(1M) when the NIS host is set up and with /etc/init.d/yp for
every system start.
The ypserv daemon's primary function is to look up information in its
local database of NIS maps. Communication to and from ypserv is by
means of RPC calls. Lookup functions are described in ypclnt(3N), and
are supplied as C-callable functions in the NIS library. There are
four lookup functions, all of which are performed on a specified map
within some NIS domain: Match, "Getfirst", "Getnext", and "Getall".
The Match operation takes a key, and returns the associated value. The
"Getfirst" operation returns the first key-value pair from the map,
and "Getnext" can be used to enumerate the remainder. "Getall" ships
the entire map to the requester as the response to a single RPC
request.
Two other functions supply information about the map, rather than map
entries: "Getordernumber", and "Getmastername". In fact, both
order number and master name exist in the map as key-value pairs, but
the server will not return either through the normal lookup functions.
If you examine the map with makedbm(1M), however, they will be visi-
ble.
The function of ypbind is to remember information that lets client
processes on a single machine communicate with some ypserv process.
ypbind must run on every NIS client.
The information ypbind remembers is called a binding - the association
of a domain name with a NIS server.
Page 1 Reliant UNIX 5.44 Printed 11/98
ypserv(1M) ypserv(1M)
The process of binding is driven by client requests. As a request for
an unbound domain comes in, the ypbind process steps through the
ypservers list trying to find a ypserv process that serves maps within
that domain. There must be an active ypserv process on at least one of
the machines in the ypservers file. Once a domain is bound by a
ypbind, that same binding is made known to the client process. The
binding of a particular domain can be queried by the ypbind process of
the local or remote system using the ypwhich(1) command.
If ypbind is unable to speak to the ypserv process it is bound to, it
marks the domain as unbound, tells the client process that the domain
is unbound, and tries to bind the domain once again. Requests received
for an unbound domain will wait until the domain requested is bound.
In general, a bound domain is marked as unbound when the node running
ypserv crashes or gets overloaded. In such a case, ypbind will want to
bind another NIS server listed in
/var/yp/binding/domainname/ypservers.
ypbind also accepts requests to set its binding for a particular
domain. The request is usually generated by the NIS subsystem itself.
ypset(1M) is a command to access the "Setdomain" facility. Note: The
Set Domain procedure only accepts requests from processes running as
root, and the -ypset or -ypsetme flags must have been set for ypbind.
The following options are available for the ypbind command only:
-ypset Allow any user to call ypset(1M). By default, no one can
call ypset(1M).
-ypsetme Only allow root on local machines to call ypset(1M). By
default, no one can call ypset(1M).
NOTES
Both ypbind and ypserv support multiple domains. The ypserv process
determines the domains it serves by looking for directories of the
same name in the directory /var/yp. Additionally, the ypbind process
can maintain bindings to several domains and their servers.
FILES
If the /var/yp/ypserv.log file exists when ypserv starts up, log
information will be written to this file when error conditions arise.
/var/yp
/var/yp/binding/ypdomain/ypservers
SEE ALSO
ypcat(1), ypmatch(1), ypwhich(1), makedbm(1M), ypinit(1M), ypmake(1M),
yppoll(1M), yppush(1M), ypset(1M), ypxfr(1M), dbm(3C), ypclnt(3N),
ypfiles(4).
Page 2 Reliant UNIX 5.44 Printed 11/98