異なる属性を使用してデータリンクで複数のフローが構成されている場合、フローは重複している可能性があります。この場合、flowadm show-flow コマンドを使用すると、デフォルトのランク順に基づいてデータリンク上のフローのリストを表示できます。つまり、最初に、出力内の最初のフローで特定のパケットが検索されてから、次のフローが検索されます。rank プロパティーを使用すると、フローのランク順を変更できます。
たとえば、次のように、リモート IP アドレスからのトラフィックを制限するためにフロー solaris を作成したとします。
# flowadm add-flow -l net4 -a remote_ip=192.168.10.3 solaris # flowadm set-flowprop -p maxbw=10K solaris
IP アドレス 192.168.10.0 からポート 80 へのパケットを http フローではなく solaris と一致させるには、次のように solaris フローに高いランクを設定できます。
# flowadm set-flowprop -p rank=1 solaris # flowadm show-flowprop -p rank solaris FLOW PROPERTY PERM VALUE DEFAULT POSSIBLE solaris rank rw 1 -- 1-65535
flowadm match-flow コマンドを使用すると、作成するフローがその他の既存のフローと重複しているかどうかを確認できます。重複するフローがある場合は、ランク順を確認する必要があります。また、重複するフローの作成を禁止するポリシーを適用する場合、フローを追加する前に確認する必要があります。コマンドの構文は次のとおりです。
# flowadm match-flow [-P] [[-p] -o field[,...]] [-l link] -a attr=value[,...]
指定したリンク上のフローだけを検索します。リンクを指定していない場合、すべてのリンク上のフローが使用されます。
一致するフローを検索するためのキーとして使用する、属性のコンマ区切りリスト。
この例は、追加したフローがほかのフローと重複するかどうかを確認する方法を示しています。
次の例では、システムで構成されているフローを表示します。
# flowadm FLOW LINK PROTO LADDR LPORT RADDR RPORT DIR http net4 tcp -- 80 -- -- bi
データリンク net4 上にリモート IP アドレス 10.2.2.117 を持つ別のフロー backup を追加する場合、次のようにして backup フローがほかのフローと重複するかどうかを確認できます。
# flowadm match-flow -l net4 -a remote_ip=192.168.10.4 FLOW LINK PROTO LADDR LPORT RADDR RPORT DIR http net4 tcp -- 80 -- -- bi
出力には、特定のパケットでフロー http および backup が重複している可能性があることが表示されます。