net.slp.interfaces プロパティーが設定されている場合、slpd は、ユニキャストとマルチキャスト/ブロードキャストの SLP 要求を、デフォルトのインタフェース上ではなく、プロパティーに一覧表示されたインタフェース上で待機します。
通常、net.slp.interfaces プロパティーを設定すると同時に、net.slp.isBroadcastOnly プロパティーも設定することでブロードキャストを有効にします。このようにするのは、マルチキャストがネットワークに配置されていないためです。ただし、マルチキャストは配置されているが、この特定のマルチホームホスト上で経路指定されていない場合、マルチキャスト要求は、複数のインタフェースから slpd に到達できます。このような状況は、パケットのルーティングが、別のマルチホームホストまたはインタフェースからサービスを受けるサブネットに接続されているルーターによって制御されている場合に起こります。
このような状況が発生する場合、SA サーバーまたは要求を送っている UA は、マルチホームホストの slpd から 2 つの応答を受け取ります。これらの応答はクライアントライブラリによってフィルタにかけられて除かれるので、クライアントには見えません。ただし、この応答は、snoop トレースで見ることができます。
ユニキャストルーティングがオフになっている場合、マルチホームホスト上の SA クライアントによるサービス通知がすべてのサブネットに到達できないことがあります。サービスが到達できない場合、SA クライアントは次のことを実行できます。
個々のサブネットにつき 1 つのサービス URL を通知する。
特定のサブネットからの要求が到達可能な URL で確実に応答されるようにする。
SA クライアントライブラリには、到達可能な URL が確実に通知されるようにするためのしくみはありません。したがって、到達可能な URL が確実に通知されるようにするには、ルーティングのないマルチホームホストを処理できるかどうかにかかわらず、サービスプログラムに任せる必要があります。
ユニキャストルーティングが無効なマルチホームホストにサービスを配置する前に、snoop を使ってサービスが複数のサブネットからの要求を正確に処理するかどうかを判断してください。さらに、マルチホームホストに DA を配置することを計画している場合は、DA の配置とスコープ名の割り当てを参照してください。
次の手順に従って、slp.conf ファイルの net.slp.interfaces プロパティーを変更します。
詳細は、Oracle Solaris 11.2 でのユーザーとプロセスのセキュリティー保護 の割り当てられている管理権利の使用を参照してください。
# svcadm disable network/slp
net.slp.interfaces=value
IPv4 アドレスまたはネットワークインタフェースカードのホスト名のリストで、そこに存在する DA や SA はポート 427 上でマルチキャスト、ユニキャスト UDP、および TCP の各メッセージを待機する必要がある
たとえば、3 枚のネットワークカードを持ち、マルチキャストルーティングがオフになっているサーバーが、3 つのサブネットに接続されているとします。その 3 つのネットワークインタフェースの IP アドレスは 192.168.142.42、192.168.143.42、および 192.168.144.42 です。サブネットマスクは 255.255.255.0 です。次のプロパティーの設定を行うと、slpd はユニキャストおよびマルチキャストまたはブロードキャストのメッセージについて、3 つすべてのインタフェース上のものに対して待機します。
net.slp.interfaces=192.168.142.42,192.168.143.42,192.168.144.42
# svcadm enable network/slp