12.5 SLP

OES 2では、LinuxおよびNetWareプラットフォーム用に別々の(互換性のある) SLPを搭載しています。

このセクションでは、次の項目について説明します。

12.5.1 SLPの必要性

OES 2 NetWare: 多くの他のアプリケーションおよびサーバタイプが、サービス検出の面でSLPに依存していますが、NetWare上のOES 2サービスは、事実上、eDirectoryに統合され、eDirectoryが正しく設定されている限り、SLPなしで機能します。しかし、SLPはインストールされるその他のサービスとしてNetWareに自動的に提供されます。

OES 2 Linux: 一方、OES 2 Linux上でOES 2サービスを実行するためには、サーバは次のいずれかを必要とします。

  • eDirectoryレプリカがインストール済み。

    1つのツリーに3個目のサーバをインストールした後、あるいは推奨ツリーに4個または5個のレプリカがある場合、これは自動では行われません。

  • サーバ上で実行しているOpenSLPサービスに登録されたeDirectoryがある。

    これは、OES 2 Linuxインストール中かまたは手動のいずれかで、SLPの設定を行う必要があります。

12.5.2 各プラットフォームのSLPソリューションの比較

プラットフォーム

NetWare

SLES 10 SP1

SLPソリューション

Novell SLP

OpenSLP

ソリューションについて

Novell版のSLPでは、より堅固なサービスアドバタイジング環境を提供するために、SLP標準の一部を採用しています。

Novell SLPでは、OES 2 NetWareサービス用にデフォルトの検出メカニズムを保持しています。しかし、Novell Client™を含む、検出に使用されるすべてのNetWareサービスコンポーネントでは、DNS、eDirectory、またはローカルホスト環境設定ファイルなどの、別のメカニズムを使用することもできます。

OpenSLPは、RFC 2614 (SLPバージョン2.0)を含む、さまざまなIETF仕様の実装です。OpenSLPは、SLES 10にインストールされるデフォルトのSLPサービスです。

OES 2 Linuxでは、OpenSLPを必要とするアプリケーションは、OpenSLPを使用できます。実際は、デフォルトの検出メカニズムはDNSですが、SLPはそれを必要とするアプリケーション用に存在する必要があります。特に、OES 2 Linuxサーバが1つのツリーに追加された4個目以降のサーバで、自動的にeDirectoryレプリカがインストールされていない場合に必要です。

違い

Novell SLPディレクトリエージェントでは、プロセスのネットワークセグメントの境界をまたいだeDirectoryを介す同一コンテキスト内で、他のディレクトリエージェントとの情報の共有が可能です。ただし、これは自動では行われず、Novell SLPは、ローカルモードではなく、ディレクトリモードで実行されている必要があります。

OpenSLPディレクトリエージェントはそれぞれが完全に独立し、同期されていません。

互換性

Novell SLPディレクトリエージェントは、OpenSLPディレクトリエージェントと同期しません。

Novell SLPベースのユーザエージェントまたはサービスエージェントは、OpenSLPベースディレクトリエージェントにアクセスできます(設定されている場合)。しかし、ディレクトリエージェントのタイプは、そのうちのいずれかである必要があります。SLP NLMは同一の設定で、Novell SLPおよびOpenSLP DAの両方にアクセスできません。

DA同期は、OpenSLPの一部ではありません。

OpenSLPベースのユーザエージェントまたはサービスエージェントは、Novell SLPベースのディレクトリエージェントにアクセスできます(設定されている場合)。しかし、ディレクトリエージェントのタイプは、そのうちのいずれかである必要があります。SLPデーモン(slpd)は同一の設定で、Novell SlpおよびOpenSLP DAの両方にはアクセスできません。

マニュアル

Novell eDirectory 8.8 Administration Guide』のImplementing the Service Location Protocol

Novell eDirectory 8.8 Administration Guide』のConfiguring OpenSLP for eDirectory

12.5.3 OES 2ネットワーク上のOpenSLPのセットアップ

SLPサービスは、常にNetWareおよびSLES 10 SP1 (OES 2 Linuxプラットフォームを基礎とする)の両方の一部としてインストールされます。NetWareでは、Novell SLPサービスは、eDirectoryおよび他のサービスと共に機能するように自動的に設定されます。OES 2 Linuxでは、OpenSLPは、eDirectoryおよび他のサービスと共に機能するように、手動で設定する必要があります。

OpenSLPが必要なときについて

次のいずれにも該当する場合は、OES 2 LinuxサーバにOpenSLPをセットアップする必要があります。

  • OES 2 Linuxサーバに作成中の新しいツリーに、4台以上のサーバをインストールする予定である。

  • 既存のNovell SLPサービスが存在しないか、またはNovell SLPサービスを今後使用しない。

重要:OpenSLPのセットアップが必要な場合、そのツリーに4番目のOES 2 Linuxをインストールする前、またはNetWareサーバを1台でもインストールする前に、OpenSLPの設定を行う必要があります。すべてのOES 2 LinuxサーバにSLPサービスをセットアップするよう推奨します。

OpenSLP DAサーバのセットアップ

OpenSLPが必要で、まだネットワークにOpenSLP ディレクトリエージェント(DA)が存在しない場合、操作上の利便性から、ツリー上の最初のOES 2 LinuxサーバをOpenSLP DAとしてセットアップするよう推奨します。SLPサービスはディレクトリエージェントがなくても管理できますが、その方法は堅固というには程遠く、マルチキャストが必要となり、またOES 2 Linuxではファイアウォールが無効になります。

DAの作成後は、その後にインストールするサーバすべてで、そのDAをポイントするかまたは後で作成する他のDAをポイントするように設定できます。

以下を実行します。

  1. DAとなるOES 2 Linuxサーバ上で、/etc/slp.confファイルをテキストエディタで開きます。

  2. slp.confで、次の行の先頭からセミコロン(;)を削除します。

    ;net.slp.isDA = true

    次のようになります。

    net.slp.isDA = true

  3. 次の行を見つけます。

    ;net.slp.useScopes = myScope1, myScope2, myScope3

    重要:環境設定ファイルの例で、各カンマの後にあるスペースは無視されません。見落としがちなため、注意が必要です。

    つまり、このステートメントで作成または設定されている最初のカンマの後のスコープ名には先頭にスペースが入ります。たとえば、最初のスコープ名はmyScope1ですが、その後のスコープ名には、 myScope2 myScope3と、先頭にスペースが入ります。特に、2番目以降の名前が、後続のSLPの設定で最初の名前となって、先頭のスペースが無視された場合に問題が発生します。

    例に示されたスコープ名を使用する場合は、エントリ間にあるスペースを削除してください。

  4. セミコロンを削除し、ネットワーク上のサービス情報を提供するために、このDAで使用するスコープ名を入力して、この行を変更します。たとえば、次のように行を変更します。

    net.slp.useScopes = Directory

    重要:スコープが指定されなかった場合、SLPはデフォルトのスコープを指定しますが、slp.confにnet.slp.useScopeパラメータを設定することによって、1つまたは複数のスコープを定義するのは、常に望ましい実践例と言えます。

    スコープはネットワーク上のサービスを論理カテゴリにグループ化および編成します。たとえば、アカウント管理グループで必要なサービスは、Accountingスコープにグループ化されます。

    スコープの計画に関する詳細については、『Novell eDirectory 8.8 Administration Guide』のSLP ScopesおよびOpenSLP Webサイトを参照してください。

    スコープが指定されなかった場合は、すべてのサービスは1つのスコープにDefaultという名前で登録されます。

  5. SLPデーモントラフィックを許可するように、DAサーバ上のファイアウォールを、次の手順で設定します。

    1. YaSTコントロールセンタで、[Security and Users (セキュリティおよびユーザ)]をクリックし、[Firewall (ファイアウォール)]を選択します。

    2. 左側のナビゲーションフレームで、[Allowed Services (許可済みサービス)]をクリックします。

    3. Services to Allow (許可するサービス)]ドロップダウンリストをクリックし、[SLP Deamon (SLPデーモン)]を選択します。

    4. Add (追加)]、[Next (次へ)]の順にクリックします。

    5. [承諾]をクリックします。

  6. コマンドプロンプトで、次のコマンドを入力してSLPデーモンを再始動します。

    rcslpd restart

  7. (条件により) OES 2およびeDirectoryのインストール後にこれを行った場合は、次のコマンドを入力してeDirectoryを再始動する必要があります。

    rcndsd restart

  8. 環境に合わせて、次の節に移ります。

OpenSLP DAにアクセスするためのOES 2 Linuxの設定

ツリーにインストールしたOES 2 LinuxサーバにOpenSLP DAを作成し、SLPがサーバ上で正しく設定された場合は、次の手順を実施する必要はありません。

eDirectoryツリーにインストールしたその他の全OES 2 Linuxサーバでは、次の中から環境に適した手順の1つを完了する必要があります。

OES 2 Linuxをインストール中のDAアクセスの設定

OES 2: Linux Installation Guide』のNovell eDirectory Servicesの節に記載された手順を使用してOES 2 Linuxをインストールする際には、次を実行します。

  1. インストールのSLPの場面に達したら、[既存のディレクトリエージェントを使用してSLPを設定]を選択します。

    最初のオプション[SLPを設定しない]は、これがツリー内にインストールされた4番目以降のサーバの場合、eDirectoryおよびその他のサービスで問題を引き起こします。2番目のオプション[SLPのアクセスにマルチキャストを使用]では、サーバのファイアウォールを無効にする必要があります。ファイアウォールは常に有効にしておくことを推奨します。

  2. サービスロケーションプロトコルスコープ]フィールドで、ステップ 4に定義したスコープを指定します。追加のスコープも、カンマで区切ってスペースなしで指定できます。

    たとえば、作成したDAに割り当てるスコープ名として、Directoryをフィールドに入力します。

  3. 設定済みSLPディレクトリエージェント]フィールドでは、OpenSLP DAサーバのセットアップに定義したDAサーバのIPアドレスを入力します。追加のDAアドレスも、カンマで区切って指定できます。

  4. OES 2: Linux Installation Guide』の Novell eDirectory Servicesの手順に戻ります。

OES 2 Linuxサーバのインストール前またはインストール後のDAアクセスの設定

SLES 10 SP1サーバ上のOES 2 Linuxをインストールする前にDAアクセスを設定しても、あるいはSLES 10 SP1およびOES 2の同時インストール後にDAアクセスを設定しても、手動による設定プロセスは同じです。

  1. テキストエディタで/etc/slp.confを開きます。

  2. 次の行を見つけます。

    ;net.slp.useScopes = myScope1, myScope2, myScope3

    重要:環境設定ファイルの例で、各カンマの後にあるスペースは無視されません。見落としがちなため、注意が必要です。

    つまり、このステートメントで作成または設定されている最初のカンマの後のスコープ名には先頭にスペースが入ります。たとえば、最初のスコープ名はmyScope1ですが、その後のスコープ名には、 myScope2 myScope3と、先頭にスペースが入ります。特に、2番目以降の名前が、後続のSLPの設定で最初の名前となって、先頭のスペースが無視された場合に問題が発生します。

    例に示されたスコープ名を使用する場合は、エントリ間にあるスペースを削除してください。

  3. セミコロンを削除し、このサーバからアクセスするスコープの名前を入力して、この行を変更します。ステップ 4に定義したスコープを含めてください。

    例えば、次のように行を変更します。

    net.slp.useScopes = Directory

  4. 次の行を見つけます。

    ;net.slp.DAAddresses = myDa1,myDa2,myDa3

  5. セミコロンを削除して、OpenSLP DAサーバのセットアップに定義したOpenSLP DAの実際のIPアドレスを入力して、行を変更します。

    net.slp.DAAddresses = IP_Address

  6. ファイルを保存して閉じます。

  7. Linuxのコマンドプロンプトで、次を入力して、SLPデーモンを再始動して設定をリセットします。

    rcslpd restart

OpenSLPサービスを使用するためのNetWareサーバの設定

重要:NetWareはデフォルトでNovell SLPを使用し、可能な場合、そのサービス用にサーバを設定します。NetWareサーバ用にNovell SLPではなく、OpenSLPを使用する場合にのみ、この後の節の手順にしたがいます。

環境に応じて、次のいずれか1つを完了します。

Netwareサーバをインストール中のDAアクセスの設定
  1. ネットワークボード用のIPアドレスを設定するダイアログで、[詳細]をクリックします。

  2. SLP]タブをクリックします。

  3. 最大で3個までのOES 2 Linux DAサーバのIPアドレスを指定します。

  4. NetWareサーバからアクセス可能な設定済みDAが対応するスコープのリストを入力します。

    重要:マルチキャストはファイアウォールを無効にするため、マルチキャストを使用するサーバの設定は推奨しません。ファイアーウォールは常に有効にしておくことを推奨します。

  5. [OK]をクリックします。

NetWareサーバをインストール中のDAアクセスの設定
  1. テキストエディタを使用して、NetWareサーバ上のSYS:ETC/slp.cfgファイルを開き、NetWareからアクセスするDAサーバごとに次の行を追加します。

    • DA IPV4, IP_Address1
    • DA IPV4, IP_Address2

    ここで、IP_AddressXは、OES 2 Linux DAサーバのIPアドレスです。

  2. インストールのときに作成された、NetWareサーバをポイントするすべての行を削除します。

  3. ファイルを保存して閉じます。

  4. NetWareコンソールプロンプトで、NetWareサーバからアクセスするスコープを指定し、レジストリにSLPキャッシュを書き込み、SLPサービスを再始動します。

    • set slp scope list = scope1,scope2,...
    • flush cdbe
    • set slp reset = on
  5. 次のコマンドを入力して、SLPが正しく機能していることを確認します。

    display slp services

12.5.4 OES 2ネットワーク上でのNovell SLPの使用

NetWareツリーがある場合は、ネットワーク上には自動的にNovell SLPが存在します。いずれのOES 2プラットフォームでも、SLPサービスとしてNovell SLPを継続して使用できます。

このセクションでは次のことについて説明します。

NetWareではデフォルトでNovell SLPが設定される

NetWareをインストールするときに、代替SLPの設定を指定しないと、サーバではほとんどのネットワークの要件を満たすNovell SLPを使用するよう自動的に設定されます。Novell SLPおよびカスタマイズの手順について詳細は、『Novell eDirectory 8.8 Administration Guide』のImplementing the Service Location Protocolを参照してください。

OES 2 LinuxをNovell SLP DAにアクセスするように設定

eDirectoryツリーにインストールした各OES 2 Linuxサーバに対し、状況に応じて、次のプロシージャのうちの1つを完了します。

OES 2 Linuxをインストール中のDAアクセスの設定

OES 2: Linux Installation Guide』のNovell eDirectory Servicesの手順を使用してOES 2 Linuxをインストールする際には、次を実行します。

  1. インストールのSLPの場面に達したら、[既存のディレクトリエージェントを使用してSLPを設定]を選択します。

    最初のオプション[SLPを設定しない]は、これがツリー内にインストールされた4番目以降のサーバの場合、eDirectoryおよびその他のサービスで問題を引き起こします。2番目のオプション[SLPのアクセスにマルチキャストを使用]では、サーバのファイアウォールを無効にする必要があります。ファイアウォールは常に有効にしておくことを推奨します。

  2. サービスロケーションプロトコルスコープ]フィールドで、ネットワークに定義された1つまたは複数の適切なスコープを指定します。

    正しいスコープ名がわからない場合は、同じネットワークセグメントのNetWareサーバのSLP設定を参照できます。サーバ上のNovellリモートマネージャにログインして、[アプリケーションの管理]をクリックし、[SLP]を選択します。

    カンマで区切って(スペースなし)、複数のスコープを指定できます。

    たとえば、そのフィールドにDirectoryと入力するとします。

  3. 設定済みSLPディレクトリエージェント]フィールドで、適切なDAサーバのIPアドレスを入力します。

    使用するアドレスがわからない場合は、NetWareサーバ上のNRMを使用できます。

    追加のDAアドレスも、カンマで区切って指定できます。

  4. OES 2: Linux Installation Guide』の Novell eDirectory Servicesの手順に戻ります。

OES 2 Linuxサーバのインストール前またはインストール後のDAアクセスの設定

SLES 10 SP1サーバ上のOES 2 Linuxをインストールする前にDAアクセスを設定しても、あるいはSLES 10 SP1およびOES 2の同時インストール後にDAアクセスを設定しても、手動による設定プロセスは同じです。

  1. テキストエディタで/etc/slp.confを開きます。

  2. 次の行を見つけます。

    ;net.slp.useScopes = myScope1, myScope2, myScope3

    重要:環境設定ファイルの例で、各カンマの後にあるスペースは無視されません。見落としがちなため、注意が必要です。

    つまり、このステートメントで作成または設定されている最初のカンマの後のスコープ名には先頭にスペースが入ります。たとえば、最初のスコープ名はmyScope1ですが、その後のスコープ名には、 myScope2 myScope3と、先頭にスペースが入ります。特に、2番目以降の名前が、後続のSLPの設定で最初の名前となって、先頭のスペースが無視された場合に問題が発生します。

    例に示されたスコープ名を使用する場合は、エントリ間にあるスペースを削除してください。

  3. セミコロンを削除し、このサーバからアクセスするスコープの名前を入力して、この行を変更します。

    正しいスコープ名がわからない場合は、同じネットワークセグメントのNetWareサーバのSLP設定を参照できます。サーバ上のNovellリモートマネージャにログインして、[アプリケーションの管理]をクリックし、[SLP]を選択します。

    カンマで区切って(スペースなし)、複数のスコープを指定できます。

    たとえば、次のように行を変更します。

    net.slp.useScopes = Directory

  4. 次の行を見つけます。

    ;net.slp.DAAddresses = myDa1,myDa2,myDa3

  5. セミコロンを削除し、Novell SLP DAの実際のIPアドレス(必要な場合はNRMを使用)を入力して、この行を変更します。

    net.slp.DAAddresses = IP_Address

  6. ファイルを保存して閉じます。

  7. Linuxのコマンドプロンプトで、次を入力して、SLPデーモンを再始動して設定をリセットします。

    rcslpd restart

  8. 次のコマンドを入力して、設定したDAおよびスコープが認識されていること確認します。

    slptool findsrvs service:

    DAサーバが一覧表示されるはずです。

    slptool findscopes

    スコープが一覧表示されるはずです。

  9. OES 2 Linuxのインストール後にこれを行った場合は、次の名前を入力してツリーが見つかるかを確認します。

    slp findsrvs service:ndap.novell