一般に NIS クライアントは、マシン名とアドレスの検索に NIS だけが使用されるように、nsswitch.conf ファイルで構成されます。このような検索が失敗した場合は、NIS サーバーはこれらの結果を DNS に転送します。
マシンにログインして、スーパーユーザーになります。
hosts.byname と hosts.byaddr という 2 つのマップファイルには、YP_INTERDOMAIN キーが必要です。このキーを検査するために、Makefile を編集し、次の行を変更します。
#B=-b B= |
上記の行を、次のように変更します。
B=-b #B= |
これで、マップの作成時に makedbm が -b フラグで起動され、YP_INTERDOMAIN キーが ndbm ファイルに挿入されます。
make を実行してマップを作成し直します。
# /usr/ccs/bin/make hosts
NIS サーバーのすべての /etc/resolv.conf ファイルが有効なネームサーバーを指していることを確認します。
Solaris リリース 2 を実行していない NIS サーバーがある場合は、YP_INTERDOMAIN キーがホストマップに存在することを確認してください。
DNS 転送を有効にするために、各サーバーを停止します。
# /usr/lib/netsvc/yp/ypstop
各サーバーを再起動します。
# /usr/lib/netsvc/yp/ypstart
この NIS 実装では、ypstart が -d オプションを使って ypserv を自動的に起動して、DNS に要求を転送します。
マスターサーバーとスレーブサーバーのどちらも Solaris リリース 2 を実行していない場合は、次の表を参考にして問題が発生しないように対処してください。「4.0.3+」という表記は、「SunOS のリリース 4.0.3 以降」であることを意味します。makedm -b は、Makefile の -B 変数への参照です。
表 9–1 異機種システムが混在する NIS ドメインにおける NIS/DNS
スレーブサーバー |
|
マスターサーバー |
|
|
4.0.3+ |
|
Solaris |
4.0.3+ |
マスターサーバー: makedbm —b スレーブサーバー: ypxfr |
マスターサーバー: makedbm —b スレーブサーバー: ypxfr |
マスターサーバー: ypserv —d スレーブサーバー: ypxrf —b |
Solaris NIS |
マスターサーバー: makedbm —b スレーブサーバー: ypxfr |
マスターサーバー: makedbm —b スレーブサーバー: ypxfr |
マスターサーバー: ypserv —d スレーブサーバー: resolve.confが存在する ypxfr または ypxfr -b |