会社の引越しがあり、何台かのサーバを移動した。
今までは、建物全体が一つのサブネットだったのだが、新しいところではフロア毎にサブネットが違う。
このため、NISのサーバとクライアントが別々のサブネットにいることになってしまった。
正しいアプローチとしては、サブネット毎にNISのスレーブサーバを立てるのだろうが、今回はそれも面倒だったのでサブネット越えをすることにした。
一番簡単だったのはLinux(RedHat 7.3 ふるっ!)で、/etc/yp.conf を書き換えるだけだった。
domain ドメイン名 broadcast
と書いてあったところを、
domain ドメイン名 server ypサーバホスト名
に変えて、service ypbind restart って感じ。

次は、FreeBSD。こいつは悩みました。ypset コマンドで設定すれば良さそうなんだけど、エラーになるばかり。
結局、ypset でサーバを設定するためには、ypbindの起動時に -ypset 又は -ypsetme オプションが必要だと言うことがわかった。で、/etc/rc.confを以下のように変更。
nis_client_enable="YES" ←もともと
nis_client_flags="-ypsetme"
nis_ypset_enable="YES"
nis_ypset_flags="ypサーバホスト名"
/etc/host.confでnisを見ないようにするか、bind を nis より優先にしておくこと。

一番悩んだのが Solaris8 で、/etc/の設定ファイルに該当しそうなものが見当たらない。
結局、/etc/rcから順に読んで行って、/usr/lib/netsvc/yp/ypstart と言うスクリプトでypbindが起動されていることを発見。
しかし、どう読んでもオプションなしで起動されるか、-broadcast オプションで起動されるかの2通りしかない。
悩んでもわからなかったので、設定ファイルでやるのはあきらめて、ypstartスクリプトを直接書き換えると言う暴挙に出た。
ypbind を起動しているところに、-ypsetmeオプションを追加し、次の行で ypset ypサーバホスト名を実行するようにした。
さらに、/etc/nsswitch.conf で、hostsの解決をnisよりもdnsを優先するように変更したら、なんとかなったっぽい。
めちゃくちゃ悩んでしまいましたわい。

こんなことするくらいなら、会社の管理者と相談して、スレーブサーバを立てた方が良かったかしらん。

カテゴリ

トラックバック(0)

このブログ記事を参照しているブログ一覧: NISでサブネット越え

このブログ記事に対するトラックバックURL: https://www.wizard-limit.net/cgi-bin/mt/mt-tb.cgi/1037

コメントする

このブログ記事について

このページは、falseが2006年4月22日 18:41に書いたブログ記事です。

ひとつ前のブログ記事は「coLinuxでFedora Core 5(2)」です。

次のブログ記事は「散財いろいろ」です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。

広告

Powered by Movable Type 6.1.1