RPC.YPXFRD(8) NIS Reference Manual RPC.YPXFRD(8)NAME
rpc.ypxfrd - NIS map transfer server
SYNOPSIS
/usr/sbin/rpc.ypxfrd [-d path] [-p port] [--debug] [-f|--foreground]
/usr/sbin/rpc.ypxfrd --version
DESCRIPTION
rpc.ypxfrd is used for speed up the transfer of very large NIS maps
from a NIS master to the NIS slave server. If a NIS slave server
receives a message that there is a new map, it will start ypxfr for
transfering the new map. ypxfr will read the contents of a map from
the master server using the yp_all() function.
The rpc.ypxfrd server speeds up the transfer process by allowing NIS
slave servers to simply copy the master servers map files rather than
building their own from scratch. rpc.ypxfrd uses an RPC-based file
transfer protocol.
If the on-disk format of the database on both machines is not the same,
rpc.ypxfrd will refuse to send the data and ypxfr will fallback to
yp_all() and fetch every single entry alone.
rpc.ypxfrd could be started by inetd. But since it starts very slowly,
it should be started after ypserv from /etc/init.d/ypxfrd.
OPTIONS--debug
Causes the server to run in debugging mode. In debug mode, the
server does not background itself and prints extra status messages
to stderr for each request that it revceives.
-d path
rpc.ypxfrd is using this directory instead of /var/yp.
-p port
rpc.ypxfrd will bind itself to this port, which makes it possible
to have a router filter packets to the NIS ports. This can
restricted the access to the NIS server from hosts on the Internet.
--version
Prints the version number
-f, --foreground
will not put itself into background.
SECURITY
rpc.ypxfrd uses the same functions for checking a host as ypserv. At
first, rpc.ypxfrd will check a request from an address with
/var/yp/securenets or the tcp wrapper. If the host is allowed to
connect to the server, rpc.ypxfrd will uses the rules from
/etc/ypserv.conf to check the requested map. If a mapname doesn´t match
a rule, rpc.ypxfrd will look for the YP_SECURE key in the map. If it
exists, rpc.ypxfrd will only allow requests on a reserved port.
NOTES
The FreeBSD ypxfrd protocol is not compatible with that used by SunOS.
This is unfortunate but unavoidable: SUNs protocol is not freely
available, and even if it were it would probably not be useful since
the SunOS NIS v2 implementation uses the original ndbm package for its
map databases whereas the other implementation uses GNU DBM or Berkeley
DB. These packages uses vastly different file formats. Furthermore,
ndbm and gdbm are byte-order and word width sensitive and not very
smart about it, meaning that a gdbm or ndbm database created on a big
endian or 64bit system cannot be read on a little endian or 32bit
system. The FreeBSD ypxfrd protocol checks, if both, master and slave,
uses the same database packages and, if necessary, the byte order of
the system.
FILES
/etc/ypserv.conf
Configuration file for options and access rights
/var/yp/securenets
Configuration file for access rights
SEE ALSOypserv(8), makedbm(8), yppush(8), ypxfr(8)AUTHORypxfrd protocol and FreeBSD Implementation: Bill Paul
<wpaul@ctr.columbia.edu>
Linux Implementation: Thorsten Kukuk <kukuk@linux-nis.org>
NIS Reference Manual 04/15/2008 RPC.YPXFRD(8)