ADC

DNSレコードのネガティブキャッシュを構成する

NetScalerアプライアンスは、ドメインの否定応答のキャッシュをサポートしています。否定応答は、要求されたドメインに関する情報が存在しないか、サーバーがクエリに対する応答を提供できないことを示します。 この情報の保存をネガティブキャッシングと呼びます。ネガティブキャッシュは、ドメインに関するクエリへの応答を高速化するのに役立ちます。

注:

ネガティブキャッシュは、バックエンドサーバーがクエリ対象ドメインの権限のある DNS (ADNS) サーバーとして構成されている場合にのみサポートされます。

否定応答は、次のいずれかになります。

  • NXDOMAIN エラーメッセージ — クエリされたドメイン名にサーバー上にレコードが設定されていない場合、権限のある DNS サーバーは NXDOMAIN エラーメッセージで応答します。このメッセージは、クエリされたドメインが無効または存在しないドメイン名であることを示します。
  • NODATA エラーメッセージ — クエリ内のドメイン名は有効でも、指定されたタイプのレコードが利用できない場合、アプライアンスは NODATA エラーメッセージを送信します。

ネガティブキャッシュが有効になっている場合、アプライアンスはDNSサーバーからのネガティブ応答をキャッシュし、キャッシュからの今後のリクエストのみを処理します。このアクションは、クエリへの応答を高速化し、バックエンド DNS トラフィックを減らすのにも役立ちます。ネガティブキャッシュは、すべての展開、つまりCitrix ADCアプライアンスがプロキシ、エンドリゾルバ、またはフォワーダとして機能している場合に使用できます。

DNS プロファイルを使用してネガティブキャッシュを有効または無効にできます。詳細については、「 DNS プロファイル」を参照してください。既定では、ネガティブキャッシュは、既定で DNS 仮想サーバーにバインドされている既定の DNS プロファイル (default-dns-profile) または新しく作成された DNS プロファイルに有効になっています。

CLI を使用してネガティブキャッシュを有効または無効にする

コマンドプロンプトで次のコマンドを入力してネガティブキャッシュを有効または無効にし、構成を確認します。

-  add dns profile <dnsProfileName> [-cacheRecords ( ENABLED | DISABLED )] [-cacheNegativeResponses (ENABLED | DISABLED )]
-  show dns profile [<dnsProfileName>]
<!--NeedCopy-->

デフォルトの DNS プロファイルの例:

> sh dns profile default-dns-profile
    1)   default-dns-profile
        Query logging : DISABLED        Answer section logging : DISABLED
        Extended logging : DISABLED     Error logging : DISABLED
        Cache Records : ENABLED     Cache Negative Responses: ENABLED
Done
<!--NeedCopy-->

新しく作成された DNS プロファイルの例:

> add dnsprofile dns_profile1 -cacheRecords ENABLED -cacheNegativeResponses ENABLED
Done
> show dns profile dns_profile1
    1)   dns_profile1
        Query logging : DISABLED        Answer section logging : DISABLED
        Extended logging : DISABLED     Error logging : DISABLED
        Cache Records : ENABLED     Cache Negative Responses: ENABLED
Done
<!--NeedCopy-->

CLI を使用してサービスレベルまたは仮想サーバーレベルの DNS パラメータを指定します

コマンドプロンプトで、次の操作を実行します。

  1. DNS プロファイルを設定します。

    add dns profile <dnsProfileName> [-cacheRecords ( ENABLED | DISABLED )] [-cacheNegativeResponses (ENABLED | DISABLED )]

  2. DNS プロファイルをサービスまたは仮想サーバーにバインドします。

    DNS プロファイルをサービスにバインドするには:

    set service <name> [-dnsProfileName <string>]

例:

>set service service1 -dnsProfileName dns_profile1
Done
<!--NeedCopy-->

DNS プロファイルを仮想サーバーにバインドするには:

set lb vserver <name> [-dnsProfileName <string>]

例:

>set lb vserver lbvserver1 -dnsProfileName dns_profile1
Done
<!--NeedCopy-->

GUI を使用してサービスレベルまたは仮想サーバーレベルの DNS パラメータを指定する

  1. HTTP プロファイルを設定します。

    [ システム ] > [ プロファイル] > [ DNS プロファイル] に移動し、DNS プロファイルを作成します。

  2. HTTP プロファイルをサービスまたは仮想サーバーにバインドします。

    [ トラフィック管理 ] > [ 負荷分散] > [ サービス/仮想サーバー] に移動し、サービスまたは仮想サーバーにバインドする必要がある DNS プロファイルを作成します。

アプライアンスによるネガティブ・レスポンスのレート制限

NetScalerアプライアンスがキャッシュから返す否定応答のしきい値を設定できます。しきい値を設定すると、アプライアンスはしきい値に達するまでキャッシュからの応答を返します。しきい値に達すると、アプライアンスは NXDOMAIN 応答で応答する代わりに要求をドロップします。

否定的な回答にレート制限を設定することには、次のような利点があります。

  • NetScalerアプライアンスのリソースを保存します。
  • 存在しないドメイン名に対する悪意のあるクエリを防止します。

注: 否定応答のしきい値を設定できるのは、ADC アプライアンスが権限のあるドメインネームサーバーとして構成されているドメインだけです。権限のあるバックエンドネームサーバーから受信したキャッシュレコードのしきい値を設定することはできません。

CLIを使用してキャッシュが処理するネガティブ・レスポンスのレートを制限する

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

set dns parameter -NXDOMainRateLimitThreshold <positive-integer>
<!--NeedCopy-->

例:

set dns parameter -NXDOMainRateLimitThreshold 1000
<!--NeedCopy-->

nxDomainRateLimitThreshold: このパラメータを正の整数値に設定すると、このしきい値 (秒単位) に達するまでキャッシュから応答が処理されます。しきい値を超えると、リクエストはドロップされます。しきい値はパケットエンジンごとに設定されます。

GUI を使用してキャッシュが処理するネガティブ・レスポンスのレートを制限する

  1. [ トラフィック管理] > [DNS ] に移動し、[ DNS 設定の変更] をクリックします。
  2. [DNS パラメータの設定 ]ページの[ NXDOMAIN Rate Limit Threshold ]フィールドに、応答がキャッシュから処理されるまでのしきい値を入力します。

注:NXDOMAIN Threshold Crossed の値には、しきい値に達した後にリクエストがドロップされた回数が表示されます

DNSレコードのネガティブキャッシュを構成する