Citrix ADC

クライアント接続の管理

クライアント接続の管理を容易にするために、仮想サーバーへの接続の遅延クリーンアップを有効にできます。その後、DNS ポリシーを設定して、ローカル DNS トラフィックを管理できます。

仮想サーバー接続の遅延クリーンアップを有効にする

仮想サーバーの状態は、バインドされているサービスの状態によって異なり、各サービスの状態は、バインドされているモニターによって異なります。サーバが低速またはダウンしている場合は、モニタリングプローブがタイムアウトし、サーバを表すサービスが DOWN としてマークされます。仮想サーバは、バインドされているすべてのサービスが DOWN としてマークされている場合にのみ、DOWN としてマークされます。サービスおよび仮想サーバは、ダウン時にすべての接続を終了するか、または接続の通過を許可するように設定できます。後者の設定は、サーバーが低速であるためにサービスがDOWNとしてマークされる状況のためのものです。

ダウン状態のフラッシュオプションを構成すると、Citrix ADCアプライアンスは、ダウンしているGSLBサービスへの接続の遅延クリーンアップを実行します。

コマンドラインインターフェイスを使用して仮想サーバー接続の遅延クリーンアップを有効にするには

コマンドプロンプトで次のコマンドを入力して、遅延接続クリーンアップを構成し、構成を確認します。

set gslb service <name> -downStateFlush (ENABLED | DISABLED)
show gslb service <name>

例:

set gslb service Service-GSLB-1 -downStateFlush ENABLED
Done

show gslb service Service-GSLB-1
Done

構成ユーティリティを使用して仮想サーバー接続の遅延クリーンアップを有効にするには

  1. トラフィック 管理 」>「 GSLB 」>「 サービス 」に移動し、サービスをダブルクリックします。
  2. [その他の設定] セクションをクリックし、[ダウン状態のフラッシュ] オプションを選択します。

DNS ポリシーを使用してローカル DNS トラフィックを管理する

DNS ポリシーを使用して、ローカル DNS リゾルバーまたはネットワークの IP アドレスから事前定義されたターゲット GSLB サイトにトラフィックを送信することで、サイトアフィニティを実装できます。これは、DNS式を使用してDNSポリシーを作成し、Citrix ADCアプライアンス上でグローバルにポリシーをバインドすることによって構成されます。

ドメインネームシステム

Citrix ADCアプライアンスには、ドメイン固有のアクションを構成するために使用できる事前定義されたDNS式が用意されています。このようなアクションは、たとえば、特定のリクエストの削除、特定のドメインの特定のビューの選択、特定のリクエストの特定のロケーションへのリダイレクトなどが可能です。

これらのDNS式( ルールとも呼ばれる)を組み合わせてDNSポリシーを作成し、Citrix ADCアプライアンスでグローバルにバインドします。

Citrix ADCアプライアンスで使用可能な事前定義されたDNS修飾子の一覧を次に示します。

  • CLIENT.UDP.DNS.DOMAIN.EQ(“domainname”)
  • CLIENT.UDP.DNS.IS_AREC
  • CLIENT.UDP.DNS.IS_AAAAREC
  • CLIENT.UDP.DNS.IS_SRVREC
  • CLIENT.UDP.DNS.IS_MXREC
  • CLIENT.UDP.DNS.IS_SOAREC
  • CLIENT.UDP.DNS.IS_PTRREC
  • CLIENT.UDP.DNS.IS_CNAME
  • CLIENT.UDP.DNS.IS_NSREC
  • CLIENT.UDP.DNS.IS_ANYREC

CLIENT.UDP.DNS.DOMAIN DNS 式は、文字列式で使用できます。式の一部としてドメイン名を使用する場合は、ピリオド (.) で終わる必要があります。たとえば、CLIENT.UDP.DNS.DOMAIN.ENDSWITH(“abc.com.”)。

構成ユーティリティを使用して式を作成するには

  1. 「式」(Expression) テキストボックスの横にあるアイコンをクリックします。[追加] をクリックしてください。([Flow Type] ドロップダウンリストボックスと [Protocol] ドロップダウンリストボックスは空のままにします)。 ルールを作成する手順は、次のとおりです。
  2. 「Qualifier」ボックスで、修飾子(「LOCATION」など)を選択します。
  3. 「演算子」ボックスで、演算子 (== など) を選択します。
  4. [値] ボックスに、値 (たとえば、アジア、日本…) を入力します。
  5. [ OK] をクリックします。[ 作成 ] をクリックし、[ 閉じる] をクリックします。ルールが作成されます。
  6. [ OK] をクリックします。

DNS アクションを構成する

DNS ポリシーには、ポリシールールが TRUE と評価されたときに実行される DNS アクションの名前が含まれます。DNS アクションでは、次のいずれかを実行できます。

  • DNS ビューを構成した IP アドレスをクライアントに送信します。DNS ビューの詳細については、「DNS ビューの追加」を参照してください。
  • 静的近接動作をオーバーライドする優先ロケーションのリストを参照した後、クライアントに GSLB サービスの IP アドレスを送信します。優先ロケーションの詳細については、優先ロケーションの設定による静的近接動作の上書きを参照してください。
  • DNS クエリーまたは応答 (DNS 応答書き換え) の評価によって決定された特定の IP アドレスをクライアントに送信します。
  • アプライアンスのDNSキャッシュ内で検索を実行せずに、ネーム・サーバーに要求を転送します。
  • リクエストを削除します。

DNS 要求を削除したり、アプライアンスの DNS キャッシュをバイパスしたりするための DNS アクションを作成することはできません。DNS 要求を削除する場合は、組み込みアクション dns_default_act_Drop を使用します。DNS キャッシュをバイパスする場合は、組み込みアクション dns_default_act_Cachebypass を使用します。どちらの操作も、[DNS ポリシーの作成] ダイアログボックスと [DNS ポリシーの構成] ダイアログボックスでカスタム操作とともに使用できます。これらの組み込みアクションは変更または削除できません。

コマンドラインインターフェイスを使用して DNS アクションを構成するには

コマンドプロンプトで次のコマンドを入力して、DNS アクションを構成し、構成を確認します。

add dns action <actionName> <actionType> (-IPAddress <ip_addr | ipv6_addr> ... | -viewName <string> | -preferredLocList <string> ...) [-TTL <secs>]

show dns action [<actionName>]

例 1: DNS 応答の書き換えの設定次の DNS アクションは、アクションがバインドされているポリシーが true と評価されると、事前設定された IP アドレスをクライアントに送信します。

add dns action dns_act_response_rewrite Rewrite_Response -IPAddress 192.0.2.20 192.0.2.56 198.51.100.10
 Done

show dns action dns_act_response_rewrite
1)  ActionName:  dns_act_response_rewrite ActionType:  Rewrite_Response TTL:  3600               IPAddress:  192.0.2.20 192.0.2.56 198.51.100.10
 Done

例 2: DNS ビューベースの応答の設定次の DNS アクションは、DNS ビューを構成した IP アドレスをクライアントに送信します。

add dns action send_ip_from_view_internal_ip ViewName -viewName view_internal_ip
Done

show dns action send_ip_from_view_internal_ip
1)  ActionName:  send_ip_from_view_internal_ip ActionType:  ViewName    ViewName:  view_internal_ip
 Done

例 3: 優先ロケーションリストに基づく応答の設定次の DNS アクションは、指定されたロケーションリストから選択した優先ロケーションに対応する IP アドレスをクライアントに送信します。

add dns action send_preferred_location GslbPrefLoc -preferredLocList NA.tx.ns1.\*.\*.* NA.tx.ns2.\*.\*.* NA.tx.ns3.\*.\*.*
Done

show dns action  send_preferred_location
1)  ActionName:  send_preferred_location ActionType:  GslbPrefLoc PreferredLocList:  "NA.tx.ns1.\*.\*.\*" "NA.tx.ns2.\*.\*.\*" "NA.tx.ns3.\*.\*.*"
 Done

Citrix ADC構成ユーティリティを使用してDNSアクションを構成するには

  1. [トラフィック管理] > [DNS] > [アクション] に移動し、DNS アクションを作成または編集します。
  2. [DNS アクションの作成] または [DNS アクションの構成] ダイアログボックスで、次のパラメータを設定します。
    • アクション名 (既存の DNS アクションでは変更できません)
    • 種類 (既存の DNS 操作では変更できません) Type パラメータ を設定するには、次のいずれかの操作を行います。
      • DNS ビューに関連付けられた DNS アクションを作成するには、[View Name] を選択します。次に、[View Name] ボックスの一覧から、アクションで使用する DNS ビューを選択します。
      • 優先ロケーションリストを使用して DNS アクションを作成するには、[優先ロケーションリスト] を選択します。[優先する場所] に場所を入力し、[追加] をクリックします。DNS の場所を必要な数だけ追加します。
      • ポリシー評価に基づいて DNS 応答を書き換える DNS アクションを構成するには、[Rewrite Response] を選択します。[IP アドレス] に IP アドレスを入力し、[追加] をクリックします。必要な数の IP アドレスを追加します。
    • TTL(「応答の書き換え」アクションタイプにのみ適用)

DNS ポリシーを構成する

DNS ポリシーは、静的 IP アドレスとカスタム IP アドレスを使用するロケーションデータベース上で動作します。着信ローカル DNS 要求の属性は式の一部として定義され、ターゲットサイトは DNS ポリシーの一部として定義されます。アクションと式を定義するときに、一重引用符 (‘) のペアをワイルドカード修飾子として使用して、複数の場所を指定できます。DNS ポリシーが設定され、GSLB 要求が受信されると、最初にカスタム IP アドレスデータベースに、ソースのロケーション属性を定義するエントリが照会されます。

  • DNS クエリーが LDNS から来た場合、LDNS の特性は、設定されたポリシーに対して評価されます。一致すると、適切なアクション (サイトアフィニティ) が実行されます。LDNS 特性が複数のサイトと一致する場合、要求は LDNS 特性と一致するサイト間で負荷分散されます。
  • エントリがカスタムデータベースで見つからない場合、スタティック IP アドレスデータベースでエントリが照会され、一致する場合は上記のポリシー評価が繰り返されます。
  • カスタムデータベースまたは静的データベースでエントリが見つからない場合、最適なサイトが選択され、構成された負荷分散方法に基づいて DNS 応答で送信されます。

Citrix ADCアプライアンスで作成されるDNSポリシーには、次の制限が適用されます。

  • 最大 64 のポリシーがサポートされます。

  • DNSポリシーはCitrix ADCアプライアンスに対してグローバルであり、特定の仮想サーバーやドメインには適用できません。

  • ドメインまたは仮想サーバ固有のポリシーのバインディングはサポートされていません。

DNS ポリシーを使用して、特定の IP アドレス範囲に一致するクライアントを特定のサイトに誘導できます。たとえば、地理的に分離された複数の GSLB サイトを持つ GSLB セットアップがある場合、IP アドレスが特定の範囲内にあるすべてのクライアントを特定のデータセンターに誘導できます。

TCP ベースと UDP ベースの DNS トラフィックの両方を評価できます。ポリシー式は、サーバー上の UDP ベースの DNS トラフィックと、クライアント側の UDP ベースの DNS トラフィックと TCP ベースの DNS トラフィックの両方に使用できます。さらに、次の DNS 質問タイプ (または QTYPE 値) のみを含むクエリと応答を評価する式を構成できます。

  • A
  • AAAA
  • NS
  • SRV
  • PTR
  • CNAME
  • SOA
  • MX
  • ANY

次の応答コード (RCODE 値) もサポートされています。

  • NOERROR-エラーなし
  • FORMERR-フォーマットエラー
  • SERVFAIL-サーバの障害
  • NXDOMAIN-存在しないドメイン
  • NOTIMP-クエリタイプが実装されていません
  • REFUSED-クエリが拒否されました

DNS トラフィックを評価する式を設定できます。DNS 式は、DNS.REQ または DNS.RES プレフィックスで始まります。関数は、クエリーされたドメイン、クエリータイプ、およびキャリアプロトコルを評価するために利用できます。DNS 式の詳細については、「ポリシーの設定とリファレンス」の「DNS メッセージの評価とキャリアプロトコルの識別のための式」を参照してください。

コマンドラインインターフェイスを使用して DNS ポリシーを追加するには

コマンドプロンプトで次のコマンドを入力して、DNS ポリシーを作成し、構成を確認します。

add dns policy <name> <rule> <actionName>
show dns policy <name>

例:

> add dns policy policy-GSLB-1 'CLIENT.UDP.DNS.DOMAIN.EQ("domainname")' my_dns_action
 Done
> show dns policy policy-GSLB-1
    Name: policy-GSLB-1
    Rule: CLIENT.UDP.DNS.DOMAIN.EQ("domainname")
    Action Name: my_dns_action
    Hits: 0
    Undef Hits: 0

 Done

コマンドラインインターフェイスを使用して、構成された DNS ポリシーを削除するには

コマンドプロンプトで、次のように入力します。

rm dns policy <name>

Citrix ADC構成ユーティリティを使用してDNSポリシーを構成するには

  1. [トラフィック管理] > [DNS] > [ポリシー] に移動し、DNS ポリシーを作成します。
  2. [DNS ポリシーの作成] または [DNS ポリシーの構成] ダイアログボックスで、次のパラメータを設定します。
    • ポリシー名(既存のポリシーでは変更できません)
    • 操作(アクション)
    • [式] 式 を指定するには、次の操作を行います。
      1. [追加] をクリックし、表示されるドロップダウンボックスで、式の開始に使用する式要素を選択します。2 番目のリストが表示されます。リストには、firs 式要素の直後に使用できる式要素のセットが含まれています。
      2. 2 番目のリストで、使用する式要素を選択し、ピリオドを入力します。
      3. 各選択の後、ピリオドを入力すると、有効な式要素の次のセットがリストに表示されます。式の要素を選択し、必要な式が得られるまで、関数の引数を入力します。
  3. [ 作成 ] または [ OK]をクリックし、[ 閉じる] をクリックします。

DNS ポリシーのバインド

DNSポリシーは、Citrix ADCアプライアンス上でグローバルにバインドされ、構成されたすべてのGSLB仮想サーバーで使用できます。DNS ポリシーはグローバルにバインドされていますが、式でドメインを指定することで、ポリシーの実行を特定の GSLB 仮想サーバーに制限できます。

注:bind dns global コマンドでは、有効なバインドポイントとして REQ_OVERRIDE と RES_OVERRIDE を受け付けますが、DNS ポリシーはグローバルにのみバインドできるため、これらのバインドポイントは冗長です。DNS ポリシーを REQ_DEFAULT および RES_DEFAULT バインドポイントにのみバインドします。

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

コマンドプロンプトで次のコマンドを入力して、DNS ポリシーをグローバルにバインドし、構成を確認します。

bind dns global <policyName> <priority> [-gotoPriorityExpression <string>] [-type <type>]
show dns global -type <type>

例:

bind dns global policy-GSLB-1 10 -gotoPriorityExpression END
 Done
show dns global -type REQ_DEFAULT
1)  Policy Name: policy-GSLB-1
    Priority: 10
    GotoPriorityExpression: END
 Done

構成ユーティリティを使用して DNS ポリシーをグローバルにバインドするには

  1. [ トラフィック管理 ] > [ DNS ] > [ ポリシー] に移動します。
  2. 詳細ウィンドウで、[グローバルバインド] をクリックします。
  3. [グローバルへの DNS ポリシーのバインド/バインド解除] ダイアログボックスで、[ポリシーの挿入] をクリックします。
  4. [Policy Name] 列で、バインドするポリシーをリストから選択します。または、一覧の [新しいポリシー] をクリックし、[DNS ポリシーの作成] ダイアログボックスでパラメーターを設定して DNS ポリシーを作成します。
  5. 既にグローバルにバインドされているポリシーを変更するには、ポリシーの名前をクリックし、[Modify Policy] をクリックします。次に、[DNS ポリシーの構成] ダイアログボックスで、ポリシーを変更し、[OK] をクリックします。
  6. ポリシーのバインドを解除するには、ポリシーの名前をクリックし、[ ポリシーのバインド解除] をクリックします。
  7. ポリシーに割り当てられた優先度を変更するには、優先度の値をダブルクリックし、新しい値を入力します。
  8. 割り当てられた優先度を再生成するには、[優先度 を再生成] をクリックします。優先度の値は、評価の順序に影響を与えずに、10 の増分で 100 から始まるように変更されます。
  9. [ OK] をクリックします。

コマンドラインインターフェイスを使用して DNS ポリシーのグローバルバインディングを表示するには

コマンドプロンプトで、次のように入力します。

show dns global

構成ユーティリティを使用して DNS ポリシーのグローバルバインディングを表示するには

  1. [トラフィック管理] > [DNS] > [ポリシー] に移動します。
  2. 詳細ウィンドウで、[グローバルバインド] をクリックします。このダイアログボックスには、すべての DNS ポリシーのグローバルバインディングが表示されます。

DNS ビューの追加

DNS ビューを設定して、さまざまな種類のクライアントを識別し、同じ GSLB ドメインを照会するクライアントのグループに適切な IP アドレスを提供できます。DNS ビューは、クライアントに送信される IP アドレスを選択する DNS ポリシーを使用して構成されます。

たとえば、会社のドメインに GSLB を設定し、会社のネットワークでサーバーをホストしている場合、会社の内部ネットワーク内からドメインを照会するクライアントには、パブリック IP アドレスではなくサーバーの内部 IP アドレスを使用できます。一方、インターネットからドメインの DNS を照会するクライアントには、ドメインのパブリック IP アドレスを指定できます。

DNS ビューを追加するには、最大 31 文字の名前を割り当てます。先頭の文字は、数字または文字でなければなりません。次の文字も使用できます:@ _-. (ピリオド): (コロン) # とスペース ()。ビューを追加したら、ポリシーをクライアントおよびネットワークの一部に関連付けるように設定し、ポリシーをグローバルにバインドします。DNS ポリシーを構成およびバインドするには、「DNS ポリシー を使用してローカル DNS トラフィックを管理する」を参照してください。

コマンドラインインターフェイスを使用して DNS ビューを追加するには

コマンドプロンプトで次のコマンドを入力して、DNS ビューを作成し、構成を確認します。

add dns view <viewName>
show dns view <viewName>

例:

add dns view PrivateSubnet
show dns view PrivateSubnet

コマンドラインインターフェイスを使用して DNS ビューを削除するには

コマンドプロンプトで、次のように入力します。

rm dns view <viewName>

構成ユーティリティを使用して DNS ビューを追加するには

[トラフィック管理] > [DNS] > [ビュー] に移動し、DNS ビューを追加します。

DNS ポリシーを作成する方法と DNS ポリシーをグローバルにバインドする方法の詳細については、「DNS ポリシー を使用してローカル DNS トラフィックを管理する」を参照してください。

クライアント接続の管理