IP ネットワークマルチパスの管理

Solaris ネットワークマルチパス

Solaris ネットワークマルチパスは、次の構成要素で実装されています。

in.mpathd デーモンは障害を検出し、障害経路の迂回や回復した経路への復帰に対するさまざまな方針を実装します。in.mpathd は障害や回復を検出すると、ioctl を発行して障害経路の迂回や回復した経路への復帰を指示します。IP はこの ioctl に従い、ネットワークアクセスの障害経路の迂回を透過的かつ自動的に行います。


注意 - 注意 -

ある NIC グループに対して IP ネットワークマルチパスを使用している場合は、同じ NIC グループに対して Alternate Pathing (代替パス) を使用しないでください。同様に、代替パスを使用している場合は、IP ネットワークマルチパスを使用しないでください。NIC グループが異なる場合は、代替パスと IP ネットワークマルチパスを同時に使用できます。


物理インタフェース障害の検出

in.mpathd デーモンは、リンクに接続されている標識 (他のシステムやルータなど) に対し、グループに属するすべてのインタフェースを通して ICMP エコー検査信号を送信し、障害や回復を検出します。デーモンは、マルチパスグループにインタフェースが追加され、検査用 IP アドレスが割り当てられていると、マルチパスグループのすべてのインタフェースを通して検査信号を送信し、障害を検出します。検査用 IP アドレスやグループの構成を行う手順については、「2 つのインタフェースでマルチパスインタフェースグループを構成するには」を参照してください。

検査信号を送信する標識は in.mpathd が動的に決定するため、ユーザーは標識を指定できません。リンクに接続されているルーターは、検査信号の宛先となる標識として選択されます。リンクにルーターが接続されていない場合は、リンク上の任意のホストが選択されます。ホスト選択にあたっては、すべてのホストを意味するマルチキャストアドレス (IPv4 では 224.0.0.1、IPv6 では ff02::1) にマルチキャストパケットが送信され、エコーパケットに最初に応答したいくつかのホストが検査信号の宛先 (標識) に選択されます。ICMP エコーパケットに応答するルーターやホストを発見できない場合には、in.mpathd は障害を検出できません。

グループの各 NIC が正常に機能するかどうかを確認するために、in.mpathd は、マルチパスグループのすべてのインタフェースを通してすべての標識に個別に検査信号を送信します。連続する 5 つの検査信号に対し応答がない場合、in.mpathd はそのインタフェースに障害があるものとみなします。検査信号を発信する頻度は、障害検出時間に依存します。障害検出時間のデフォルト値は 10 秒です。障害検出時間の変更方法については、in.mpathd(1M) のマニュアルページを参照してください。障害検出時間が 10 秒の場合、検査信号を発信する頻度はおよそ 2 秒に 1 度になります。

連続する 5 つの検査信号に対し応答がない場合、in.mpathd はそのインタフェースに障害が発生したとみなします。in.mpathd は障害を検出すると、障害経路の迂回が行われ、すべてのネットワークアクセスが障害のあるインタフェースから同じグループの別の正常なインタフェースに移されます。待機インタフェースが構成されている場合、in.mpathd は、IP アドレス、ブロードキャスト、マルチキャストメンバーシップの移動先に待機インタフェースを選択します。待機インタフェースが構成されていない場合は、最小の IP アドレスをもつインタフェースを選択します。

物理インタフェースの回復検出

物理インタフェースが回復したかどうかを検出するために、in.mpathd は障害の発生した NIC を通して検査信号を送信します。あるインタフェースが正常でない場合、そのインタフェースのすべてのアドレスがグループ内の別の正常なインタフェースに移されます。in.mpathd は回復を検出するための検査信号の送出にアドレスを必要とするので、障害経路の迂回の際に移されない検査用 IP アドレスを構成する必要があります。この検査用 IP アドレスに関してはネットワークアクセスの障害経路の迂回は行われないため、この検査用 IP アドレスを通常のアプリケーションで使用しないようにしてください。設定手順については、「2 つのインタフェースでマルチパスインタフェースグループを構成するには」を参照してください。in.mpathd は、連続する 10 個の検査パケットに対し応答を受信すると、インタフェースが回復したものとみなします。in.mpathd は、これ以後に障害を検出すると、すべてのネットワークアクセスを回復したインタフェースに回復した経路への復帰を行います。

リンク障害

すべての NIC で同時に障害が発生した場合、in.mpathd はリンク障害が発生したものとみなし、障害経路の迂回を行いません。これは、すべての標識で同時に障害が発生した場合も同様です。この場合 in.mpathd は、現在のすべての標識選択を取り消し、新しく標識を見つけます (「物理インタフェース障害の検出」を参照)。