次の手順では、1 つのインタフェースがスタンバイインタフェースとして保持される IPMP グループを構成する方法について説明します。このインタフェースは、グループ内のアクティブインタフェースが故障した場合にのみ配備されます。
スタンバイインタフェースの概要については、IPMP インタフェース構成のタイプを参照してください。
# ipadm create-ipmp ipmp-interface
ここで、ipmp-interface は IPMP インタフェースの名前を指定します。
# ipadm add-ipmp -i under-interface1 [-i underinterface2 ...] ipmp-interface
ここで、under-interface は、IPMP グループのベースとなるインタフェースを表します。IP インタフェースは、システムで使用可能な数だけ追加できます。
# ipadm create-addr -a address ipmp-interface
ここで、address は CIDR 表記にすることができます。
# ipadm create-addr -a address under-interface
ここで、address は CIDR 表記にすることができます。IPMP グループのすべての検査用 IP アドレスは、1 つの IP サブネットに属していなければならず、したがって同じネットワーク接頭辞を使用する必要があります。
# ipadm set-ifprop -p standby=on -m ip under-interface
次の例では、アクティブ - スタンバイ IPMP 構成を作成する方法を示します。
最初に IPMP インタフェースが作成されます。
# ipadm create-ipmp ipmp0
次に、ベースとなる IP インタフェースが作成され、IPMP インタフェースに追加されます。
# ipadm create-ip net0 # ipadm create-ip net1 # ipadm create-ip net2 # ipadm add-ipmp -i net0 -i net1 -i net2 ipmp0
次に、IP アドレスが IPMP インタフェースに割り当てられます。IPMP インタフェースに割り当てられる IP アドレスはデータアドレスです。この例では、IPMP インタフェースには 2 つのデータアドレスがあります。
# ipadm create-addr -a 192.168.10.10/24 ipmp0 ipadm: ipmp0/v4 # ipadm create-addr -a 192.168.10.15/24 ipmp0 ipadm: ipmp0/v4a
この例の IP アドレスには、10 進数で表される prefixlen プロパティーが含まれています。IP アドレスの prefixlen 部分は、アドレスの左から何ビットがアドレスの IPv4 ネットマスクまたは IPv6 接頭部に該当するかを指定します。残りの下位ビットは、アドレスのホスト部を定義します。prefixlen プロパティーをアドレスのテキスト表現に変換すると、アドレスのネットワーク部として使用するビット位置には 1 が、ホスト部として使用するビット位置には 0 が含まれています。このプロパティーは、dhcp アドレスオブジェクトタイプではサポートされません。詳細は、ipadm(1M)のマニュアルページを参照してください。
次に、IPMP グループのベースとなる IP インタフェースに IP アドレスが割り当てられます。ベースとなるインタフェースに割り当てられる IP アドレスは、プローブベースの障害検出に使用される検査用アドレスです。
# ipadm create-addr -a 192.168.10.30/24 net0 ipadm: net0/v4 # ipadm create-addr -a 192.168.10.32/24 net1 ipadm: net1/v4 # ipadm create-addr -a 192.168.10.34/24 net2 ipadm: net2/v4
最後に、net2 インタフェースがスタンバイインタフェースとして構成されます。
# ipadm set-ifprop -p standby=on net2
管理者は ipmpstat コマンドを使用して IPMP 構成を表示できます。
# ipmpstat -g GROUP GROUPNAME STATE FDT INTERFACES ipmp0 ipmp0 ok 10.00s net0 net1 (net2) # ipmpstat -t INTERFACE MODE TESTADDR TARGETS net0 routes 192.168.10.30 192.168.10.1 net1 routes 192.168.10.32 192.168.10.1 net2 routes 192.168.10.34 192.168.10.5