BIG-IP - iRules Part2



 ◆ iRule - 取得したデータ情報に基づいた条件(iRuleでのコンディション

 イベントを決めた後に、取得したどのようなデータ情報に基づいて処理をするのかの判断をします。
 判断対象には以下のようなTCP/IPの値を使用します。「送信元、あて先」は
BIG-IP視点で考えます。
 ※ 使用するイベントによって、コンディションで使用可能なコマンドが異なるので注意しましょう。

コンディションの主なコマンド 取得できる値
 IP::client_addr  送信元IPアドレス(クライアントのIPアドレス)
 IP::server_addr  宛先IPアドレス(サーバのIPアドレス)
 IP::remote_addr  BIG-IPから見てリモートのIPアドレス
 IP::local_addr  BIG-IPが持つIPアドレス(Virtual ServerのIPまたはSelf IP)
 TCP::client_port  送信元TCPポート番号(クライアントのTCPポート番号)
 TCP::server_port  宛先TCPポート番号(サーバのTCPポート番号)
 TCP::remote_port  BIG-IPから見てリモートのTCPポート番号
 TCP::local_port  TCPコネクションのBIG-IP側のTCPポート番号
 UDP::client_port  送信元UDPポート番号(クライアントのUDPポート番号)
 UDP::server_port  宛先UDPポート番号(サーバのUDPポート番号)
 UDP::remote_port  BIG-IPから見てリモートのUDPポート番号
 UDP::local_port  BIG-IP側のUDPポート番号
 HTTP::header  任意のHTTPヘッダの値
 HTTP::host  HTTPヘッダ内のホスト
 HTTP::uri  HTTPヘッダ内のURI
 HTTP::user-agent  HTTPヘッダ内のUIA
 SSL::cert  X509 SSL証明書データの値
 SSL::cipher  SSL cipher name, its version, the number of secret bits


 イベントを決めた後に、取得したどのようなデータ情報に基づいて処理をするのかの判断をします。
 そして、これらの値は以下のような比較演算子を利用して、文字列の比較を行います。

比較演算子 説明
 contains 〜  〜を含む
 matches 〜  〜リストの1つ一致する
 equals 〜  〜と一致する
 starts_with 〜  〜で始まる
 ends_with 〜  〜で終わる




 ◆ iRule - トラフィックの処理(iRuleによる実行アクション

 条件判断により、条件に一致した場合(または一致しなかった場合)に以下のような処理を行います。

アクションのコマンド 説明
 node  指定したノードを選択する
 pool  指定したPoolを割り振る
 snat  指定したアドレスに送信元アドレスを変換
 forward  フォワードする
 discard  破棄する
 drop  ドロップする
 persiste  Persistenceを保つ
 HTTP::redirect  リダイレクトする
 HTTP::header insert  HTTPヘッダを挿入する
 HTTP::respond  HTTPのレスポンスを返す



BIG-IP Advanced Configuration

Copyright (C) 2002-2024 ネットワークエンジニアとして All Rights Reserved.