Provided by: manpages-ja_0.5.0.0.20221215+dfsg-1_all
名前
rpc.ypxfrd - NIS マップ転送サーバー
書式
/usr/sbin/rpc.ypxfrd [ -d path ] [ -p port ] [ --debug ] /usr/sbin/rpc.ypxfrd --version
説明
rpc.ypxfrd は非常に大きな NIS マップを NIS マスターから NIS スレーブサーバーに 転送する際 に、転送を高速化するために用いられる。 NIS スレーブサーバーは、新しいマップがあるという メッセージを 受け取ると、そのマップを取得するために ypxfr を起動する。 ypxfr は yp_all() 関数を用いてマップの内容をマスターサーバーから 読み込もうとする。この情報はデーターベース ライブラリを 通して保存されるため、マップのサイズが非常に大きくなると、 このプロセスは数分 もかかってしまうことがある。 rpc.ypxfrd サーバーは、 NIS スレーブサーバーにマスターのマップファイルを 単純にコピーさ せ、転送プロセスを高速化する。スレーブサーバーが ゼロからマップを生成するのに比べ、これは ずっと短時間ですむ。 rpc.ypxfrd は RPC ベースの転送プロトコルを用いるので、新しいマップを 生成する必要はなくなる。 rpc.ypxfrd は inetd から起動することもできるが、起動には時間がかかるので、 ypserv の後に /etc/init.d/ypxfrd から起動するのが良い。
オプション
--debug サーバーをデバッグモードで起動する。 デバッグモードでは、サーバーはバックグラウンド へ待避せず、 アクセス要求を受けるたびに細かなステータスメッセージを 標準エラー出力 に表示する。 -d directory /var/yp の代わりに rpc.ypxfrd が用いるディレクトリを指定する。 -p port rpc.ypxfrd がバインドするポート番号を指定する。このオプションを用いると、 ルータに NIS ポートへのパケットをフィルタリングさせ、 インターネットからの NIS サーバーへの アクセスを制限できる。 --version バージョン番号を表示する。
セキュリティ
rpc.ypxfrd はホストのチェックに ypserv と同じ機能を用いる。まず rpc.ypxfrd は要求元のアド レスを /var/yp/securenets または tcp wrapper でチェックする。ホストのサーバーへの接続が 許 されている場合には、 rpc.ypxfrd は /etc/ypserv.conf から要求されたマップのルールをチェック する。マップの名前が ルールにマッチしない場合には、 rpc.ypxfrd はそのマップの YP_SECURE キーを調べる。キーが存在していると、 rpc.ypxfrd は特権ポートからの要求だけを許可する。
ファイル
/etc/ypserv.conf /var/yp/securenets
関連項目
ypserv(8), makedbm(8), yppush(8), ypxfr(8)
バグ
FreeBSD の ypxfrd プロトコルは SunOS のものとは互換性がない。これは残念なことではあるが、 不可避なものであった。 Sun のプロトコルはフリーに入手できるものでは なかったし、仮に入手が できたとしても有用なものにはなりえなかったろう。 後者の理由は、 SunOS NIS v2 の実装がマッ プのデーターベースにオリジナルの ndbm パッケージを用いているのに対し、他の実装では GNU DBM や Berkeley DB を用いているからである。これらのパッケージはまったく異なったファイル フォー マットを用いている上、 ndbm と gdbm ではバイトオーダーンの違いを 賢く扱うことができな い。したがって big endian なシステムで生成された gdbm や ndbm のデーターベースは、 little endian なシステムでは読むことが できないのである。 FreeBSD の ypxfrd プロトコルは、マス ターとスレーブの両方が同じデーターベースパッケージを 使っているかどうかを、また必要に応じ て、両システムでのバイトオーダーが等しいか どうかをチェックする。
作者
ypxfrd プロトコルと FreeBSD への実装: Bill Paul <wpaul@ctr.columbia.edu> Linux への実装: Thorsten Kukuk <kukuk@suse.de>