Citrix ADC

使用例 5: TOS 使用時に DSR モードを設定する

TOS(Type of Service)とも呼ばれるDifferentiated Services(DS)は、IPv4パケットヘッダーの一部であるフィールドです。IPv6ヘッダーの同等のフィールドはトラフィッククラスです。TOS は、パケットのパスを最適化するために上位層プロトコルによって使用されます。TOS 情報では、Citrix ADC アプライアンスの仮想 IP アドレス (VIP) がエンコードされ、負荷分散されたサーバーによって VIP が抽出されます。

次のシナリオでは、アプライアンスはパケットのTOSフィールドにVIPを追加してから、パケットを負荷分散サーバーに転送します。次に、負荷分散されたサーバーは、次の図に示すように、アプライアンスをバイパスして、クライアントに直接応答します。

図1:DSRモードのCitrix ADCアプライアンス(TOS付き)

TOS付きDSRモード

TOS機能は、制御された環境向けに次のようにカスタマイズされています。

  • この環境には、ステートフルファイアウォールや TCP ゲートウェイなどのステートフルデバイスが、アプライアンスとロードバランシングされたサーバ間のパスに存在しないようにする必要があります。
  • ネットワークへのすべてのエントリポイントにあるルータは、ロードバランシングされたサーバが別の TOS フィールドとアプライアンスによって追加された TOS フィールドを混同しないようにするために、すべての着信パケットから TOS フィールドを削除する必要があります。
  • 各サーバーには 63 個の VIP しか設定できません。
  • 中間ルータは、フラグメンテーションに関する ICMP エラーメッセージを送信しないでください。送信元IPアドレスは負荷分散サーバーのIPアドレスであり、Citrix ADC VIPではないため、クライアントはメッセージを理解しません。
  • TOS は、IP ベースのサービスに対してのみ有効です。TOS ではドメイン名ベースのサービスを使用できません。

この例では、Service-ANY-1 が作成され、仮想サーバー Vserver-LB-1 にバインドされます。仮想サーバは、サービスに対するクライアント要求の負荷を分散し、アプライアンスをバイパスしてクライアントが直接応答します。次の表に、DSRモードでアプライアンス上で構成されたエンティティの名前と値を示します。

エンティティの種類 名前 IPアドレス プロトコル
仮想サーバ Vserver-LB-1 10.102.33.91 ANY
サービス Service-ANY-1 10.102.100.44 ANY
モニター PING なし なし

TOSを使用したDSRでは、レイヤー3で負荷分散を設定する必要があります。レイヤ 3 の基本的なロードバランシング設定を構成するには、基本ロードバランシングの設定を参照してください。エンティティに名前を付け、前の表で説明した値を使用してパラメータを設定します。

負荷分散の設定を構成したら、DSR モードの負荷分散設定をカスタマイズする必要があります。このためには、リダイレクションモードを設定して、サーバーがデータパケットをカプセル化解除し、クライアントに直接応答してアプライアンスをバイパスできるようにします。

リダイレクト・モードを指定した後で、オプションでアプライアンスを有効にしてサーバーを透過的に監視できます。これにより、アプライアンスは負荷分散されたサーバーを透過的に監視できます。

コマンドラインインターフェイスを使用して仮想サーバーのリダイレクションモードを構成するには

コマンドプロンプトで入力します。

set lb vserver  -m  -tosId  

例:

设置磅vserver vserver -LB-1 -m TOS -tosId 3 

構成ユーティリティを使用して仮想サーバーのリダイレクションモードを構成するには

  1. Traffic Management > Load Balancing > Virtual Serversに移動します。
  2. 仮想サーバを開き、リダイレクトモードで TOS ID を選択します。

コマンドラインインターフェイスを使用して TOS のトランスペアレントモニタを設定するには

コマンドプロンプトで入力します。

add monitor   -destip  -tos  -tosId  

例:

add monitor mon1 PING -destip 10.102.33.91 -tos Yes -tosId 3 

設定ユーティリティを使用して TOS 用のトランスペアレントモニタを作成するには

  1. Traffic Management > Load Balancing > Monitorsに移動します。
  2. モニタを作成し、[TOS] を選択し、仮想サーバに対して指定した TOS ID を入力します。

ワイルドカード TOS モニタ

TOS フィールドを使用した DSR モードのロードバランシング設定では、サービスをモニタリングするには、TOS モニタを作成し、これらのサービスにバインドする必要があります。TOS モニタでは、VIP アドレスのエンコード値を作成するために VIP アドレスと TOS ID が必要になるため、[TOS] フィールドを使用して DSR モードのロードバランシング設定ごとに個別の TOS モニタが必要です。モニターは、TOSフィールドがVIPアドレスのエンコードされた値に設定されているプローブパケットを作成します。次に、ロードバランシング設定のサービスによって表されるサーバにプローブパケットを送信します。

多くの負荷分散構成では、構成ごとに個別のカスタムTOSモニターを作成することは、重要で面倒な作業です。これらのTOSモニターの管理も重要なタスクです。これで、ワイルドカード TOS モニタを作成できます。同じプロトコル(TCPやUDPなど)を使用するすべての負荷分散構成に対して、ワイルドカードTOSモニターを1つだけ作成します。

ワイルドカード TOS モニタには、次の必須設定があります。

  • タイプ =
  • TOS = はい

次のパラメータは、値に設定することも、空白のままにすることもできます。

  • 接続先IP
  • 宛先ポート
  • TOS ID

DSR サービスにバインドされたワイルドカード TOS モニタ(宛先 IP、宛先ポート、および TOS ID が設定されていない)は、ロードバランシング仮想サーバの TOS ID および VIP アドレスを自動的に学習します。モニタは、エンコードされた VIP アドレスに設定された TOS フィールドを使用してプローブパケットを作成し、DSR サービスによって表されるサーバにプローブパケットを送信します。

CLI を使用してワイルドカード TOS モニタを作成するには

コマンドプロンプトで入力します。

add lb monitor   -tos YES show lb monitor  

CLI を使用してワイルドカード TOS モニタをサービスにバインドするには

コマンドプロンプトで入力します。

bind lb monitor   show lb monitor  

GUI を使用してワイルドカード TOS モニタを作成するには

  1. [トラフィック管理] > [負荷分散] > [モニタ] に移動します。
  2. 次のパラメータ設定でモニタを追加します。
    • タイプ =
    • TOS = はい

GUI を使用してワイルドカード TOS モニタをサービスにバインドするには

  1. [トラフィック管理] > [負荷分散] > [サービス] に移動します。
  2. サービスをオープンし、ワイルドカード TOS モニタをそれにバインドします。

次の設定例では、V1、V2、V3 はタイプ ANY の仮想サーバのロードバランシングを行い、TOS ID はそれぞれ 1、2、3 に設定されています。S1、S2、S3、S4、およびS5は、タイプANYのサービスです。S1とS2は、V1とV2の両方にバインドされています。S3、S4、およびS5であり、V1とV3の両方にバインドされています。WLCD-TOS-MONは、タイプTCPのワイルドカードTOSモニターであり、S1、S2、S3、S4、およびS5にバインドされています。

WLCD-TOS-MON は、S1、S2、S3、S4、および S5 にバインドされている仮想サーバの TOD ID および VIP アドレスを自動的に学習します。

S1はV1とV2にバインドされているため,WLCD-TOS-MONはS1の2種類のプローブパケットを作成します。1 つは、TOSフィールドが V1 のエンコードされた VIP アドレス(203.0.113.1)に設定され、もう 1 つは V2 の VIP アドレス(203.0.113.2)です。その後、Citrix ADCはこれらのプローブパケットをS1で表されるサーバーに送信します。同様に、WLCD-TOS-MON は、S2、S3、S4、および S5 のプローブパケットを作成します。

add lb monitor WLCD-TOS-MON TCP -tos YES Done add lb vserver V1 ANY 203.0.113.1 * -m TOS –tosID 1 Done add lb vserver V2 ANY 203.0.113.2 * -m TOS –tosID 2 Done add lb vserver V3 ANY 203.0.113.3 * -m TOS –tosID 3 Done add service S1 198.51.100.1 ANY * Done add service S2 198.51.100.2 ANY * Done add service S3 198.51.100.3 ANY * Done add service S4 198.51.100.4 ANY * Done add service S5 198.51.100.5 ANY * Done bind lb monitor WLCD-TOS-MON S1 Done bind lb monitor WLCD-TOS-MON S2 Done bind lb monitor WLCD-TOS-MON S3 Done bind lb monitor WLCD-TOS-MON S4 Done bind lb monitor WLCD-TOS-MON S5 Done bind lb vserver V1 S1, S2, S3, S4, S5 Done bind lb vserver V2, S1, S2 Done bind lb vserver V3 S3, S4, S5 Done