ADC

配置 DNS 记录的负缓存

NetScaler 设备支持缓存域的负面响应。负响应表示不存在有关请求的域的信息,或者服务器无法为查询提供答案。此信息的存储称为逆向缓存。负缓存有助于加快对域名查询的响应。

注意:

只有将后端服务器配置为查询域的权威 DNS (ADNS) 服务器时,才支持负缓存。

负响应可能是以下情况之一:

  • NXDOMAIN 错误消息 — 当查询的域名在服务器上未配置任何记录时,权威 DNS 服务器会使用 NXDOMAIN 错误消息进行响应。此消息暗示查询的域名是无效或不存在的域名。
  • NODATA 错误消息 — 如果查询中的域名有效但给定类型的记录不可用,则设备会发送 NODATA 错误消息。

启用负缓存后,设备会缓存来自 DNS 服务器的负面响应,并仅为来自缓存的未来请求提供服务。此操作有助于加快对查询的响应并减少后端 DNS 流量。负缓存可用于所有部署,即,当 NetScaler 设备充当代理、终端解析器或转发器时。

您可以使用 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 参数 页面的 N XDOMAIN 速率限制阈 值字段中输入阈值,在此之前必须从缓存提供响应。

注意: 超过 NXDOMAIN 阈 值中的值显示了达到阈值后请求被删除的次数。

配置 DNS 记录的负缓存