Citrix ADC

書き換えポリシーのバインド

書き換えポリシーを作成したら、それをバインドして有効にする必要があります。Citrix ADCを通過するすべてのトラフィックにポリシーを適用する場合は、ポリシーをグローバルにバインドするか、特定の仮想サーバーまたはバインドポイントにバインドして、その仮想サーバーまたはバインドポイントの着信トラフィックのみをそのポリシーに誘導することができます。受信要求が書き換えポリシーと一致する場合、そのポリシーに関連付けられたアクションが実行されます。

HTTP 要求と応答を評価するための書き換えポリシーは、HTTP または SSL タイプの仮想サーバーにバインドすることも、REQ_OVERRIDE、REQ_DE FAULT、RES_OVERRIDE、および RES_DEFAULT バインドポイントにバインドすることもできます。TCP 書き換えの書き換えポリシーは、TCP または SSL_TCP タイプの仮想サーバー、または OTHERTCP_REQ_OVERRIDE、OTHERTCP_REQ_DEFAULT、OTHERTCP_RES_OVERRIDE、および O THERTCP_RES_DEFAULT バインドポイントにのみバインドできます。

注:OTHERTCP という用語は、Citrix ADCアプライアンスのコンテキストで使用され、TCPパケットがカプセル化するプロトコルに関係なく、生のバイトストリームとして扱うすべてのTCPまたはSSL_TCP要求および応答を指します。

ポリシーをバインドするときは、ポリシーに優先度を割り当てます。優先順位によって、定義したポリシーが評価される順序が決まります。プライオリティは任意の正の整数に設定できます。

Citrix ADCオペレーティングシステムでは、ポリシーの優先順位は逆の順序で機能します。値が大きいほど、優先順位は低くなります。たとえば、プライオリティ 10、100、1000 の 3 つのポリシーがある場合、プライオリティ 10 が割り当てられたポリシーが最初に適用され、次にポリシーにプライオリティ 100 が割り当てられ、最後に 1000 というプライオリティが割り当てられます。

Citrix ADCオペレーティングシステムの他のほとんどの機能とは異なり、書き換え機能は、要求がポリシーに一致した後も引き続きポリシーを評価して実装します。ただし、要求または応答に対する特定のアクションポリシーの影響は、別のアクションの前後に実行されるかどうかによって異なることがよくあります。優先度は、意図した結果を得るために重要です。

他のポリシーを任意の順序で追加できる十分な余地を残すことができます。また、ポリシーをバインドするときに、各ポリシー間に 50 または 100 の間隔で優先度を設定することで、希望する順序で評価されるように設定することもできます。これを行うと、既存のポリシーの優先順位を再割り当てすることなく、いつでもポリシーを追加できます。

書き換えポリシーをバインドする場合、goto 式 (gotoPriorityExpression) をポリシーに割り当てるオプションもあります。goto 式には、goto 式を含むポリシーよりも高い優先順位を持つ別のポリシーに割り当てられた優先順位と一致する任意の正の整数を指定できます。goto式をポリシーに割り当てた場合、要求または応答がポリシーと一致すると、Citrix ADCは、優先度がgoto式と一致するポリシーに即座に移動します。現在のポリシーよりも小さいが、goto 式のプライオリティ番号よりも大きいプライオリティ番号を持つポリシーはスキップされ、これらのポリシーは評価されません。

コマンドラインインターフェイスを使用して書き換えポリシーをグローバルにバインドするには

コマンドプロンプトで次のコマンドを入力して、書き換えポリシーをグローバルにバインドし、設定を確認します。

  • bind rewrite global <policyName> <priority> [<gotoPriorityExpression>] [-type <type>] [-invoke (<labelType> <labelName>)]
  • show rewrite global

:


>bind rewrite global policyNew 10
 Done

> show rewrite global
1)      Global bindpoint: RES_DEFAULT
        Number of bound policies: 1

2)      Global bindpoint: REQ_OVERRIDE
        Number of bound policies: 1

 Done

コマンドラインインターフェイスを使用して書き換えポリシーを特定の仮想サーバーにバインドするには

コマンドプロンプトで次のコマンドを入力して、書き換えポリシーを特定の仮想サーバーにバインドし、構成を確認します。

  • bind lb vserver <name>@ (<serviceName>@ [-weight <positive_integer>]) | <serviceGroupName>@ | (-policyName <string>@ [-priority <positive_integer>] [-gotoPriorityExpression <expression>] [-type ( REQUEST | RESPONSE )] [-invoke (<labelType> <labelName>)] )
  • show lb vserver <name>

:

> bind lb vserver lbvip -policyName ns_cmp_msapp -priority 50
 Done
>
> show lb vserver lbvip
        lbvip (8.7.6.6:80) - HTTP       Type: ADDRESS
        State: DOWN
        Last state change was at Wed Jul 15 05:54:24 2009 (+226 ms)
        Time since last state change: 28 days, 01:57:26.350
        Effective State: DOWN
        Client Idle Timeout: 180 sec
        Down state flush: ENABLED
        Disable Primary Vserver On Down : DISABLED
        Port Rewrite : DISABLED
        No. of Bound Services :  0 (Total)       0 (Active)
        Configured Method: LEASTCONNECTION
        Mode: IP
        Persistence: NONE
        Vserver IP and Port insertion: OFF
        Push: DISABLED  Push VServer:
        Push Multi Clients: NO
        Push Label Rule: none

1)      Policy : ns_cmp_msapp Priority:50
2)      Policy : cf-pol Priority:1      Inherited
 Done

構成ユーティリティを使用して書き換えポリシーをバインドポイントにバインドするには

  1. [AppExpert] > [書き換え] > [ポリシー] に移動します。
  2. 詳細ペインで、グローバルにバインドする書き換えポリシーを選択し、[Policy Manager] をクリックします。
  3. [ポリシーマネージャを書き換え] ダイアログボックスの [バインドポイント] メニューで、次のいずれかの操作を行います。
    1. HTTP 書き換えポリシーのバインディングを構成する場合は、[HTTP] をクリックし、要求ベースの書き換えポリシーと応答ベースの書き換えポリシーのどちらを構成するかに応じて、[Request] または [Response] をクリックします。
    2. TCP 書き換えポリシーのバインディングを構成する場合は、[TCP] をクリックし、クライアント側の TCP 書き換えポリシーとサーバー側の TCP 書き換えポリシーのどちらを構成するかに応じて、[クライアント] または [サーバー] をクリックします。
  4. リライト・ポリシーをバインドするバインド・ポイントをクリックします。[Rewrite Policy Manager] ダイアログ・ボックスに、選択したバインド・ポイントにバインドされているすべてのリライト・ポリシーが表示されます。
  5. [Insert Policy] をクリックして新しい行を挿入し、使用可能なバインドされていないすべての書き換えポリシーを含むドロップダウンリストを表示します。
  6. バインドポイントにバインドするポリシーをクリックします。ポリシーは、バインドポイントにバインドされた書き換えポリシーのリストに挿入されます。
  7. [優先順位] 列では、優先度を任意の正の整数に変更できます。このパラメーターの詳細については、「書き換えポリシーをバインドするためのパラメーター」の「優先度」を参照してください。
  8. 現在のポリシーが一致した場合に、ポリシーをスキップして特定のポリシーに直接移動する場合は、[Goto Expression] カラムの値を、次に適用するポリシーのプライオリティと同じ値に変更します。このパラメーターの詳細については、「書き換えポリシーをバインドするためのパラメーター」の「gotoPriorityExpression」を参照してください。
  9. ポリシーを変更するには、ポリシーをクリックし、[ポリシーの変更] をクリックします。
  10. ポリシーをバインド解除するには、ポリシーをクリックし、[ポリシーのバインド解除] をクリックします。
  11. アクションを変更するには、[アクション] 列で変更するアクションをクリックし、[アクションの変更] をクリックします。
  12. 呼び出しラベルを変更するには、[呼び出し] 列で変更する呼び出しラベルをクリックし、[呼び出し **ラベルの変更] をクリックします。**
  13. 現在構成しているバインドポイントにバインドされているすべてのポリシーのプライオリティを再生成するには、[Regenerate Priorities] をクリックします。ポリシーでは、他のポリシーと相対的に既存の優先順位が保持されますが、優先順位は 10 の倍数で再番号が付けられます。
  14. [変更を適用]をクリックします。
  15. [閉じる] をクリックします。ポリシーが正常に構成されたことを示すメッセージがステータスバーに表示されます。

構成ユーティリティを使用して書き換えポリシーを特定の仮想サーバーにバインドするには

  1. [トラフィック管理] > [負荷分散] > [仮想サーバー] に移動します。
  2. 仮想サーバーの詳細ウィンドウ領域の一覧で、書き換えポリシーをバインドする仮想サーバーを選択し、[開く] をクリックします。
  3. [仮想サーバーの構成 (負荷分散)] ダイアログボックスで、[ポリシー] タブを選択します。Citrix ADCで構成されたすべてのポリシーがリストに表示されます。
  4. この仮想サーバにバインドするポリシーの名前の横にあるチェックボックスをオンにします。
  5. [OK] をクリックします。ポリシーが正常に構成されたことを示すメッセージがステータスバーに表示されます。