Citrix ADC

管理客户端连接

为了便于管理客户端连接,您可以启用延迟清除到虚拟服务器的连接。通过配置DNS策略,实现对本地DNS流量的管理。

启用延迟清除虚拟服务器连接

虚拟服务器的状态取决于绑定到它的服务的状态,而每个服务的状态又取决于绑定到它的监视器。如果服务器变慢或变慢,监控探测将超时,表示该服务器的服务将标记为down。只有绑定到虚拟服务器上的所有服务都被标记为DOWN时,虚拟服务器才会被标记为DOWN。您可以配置服务和虚拟服务器,在连接断开时终止所有连接,或者允许连接继续进行。后一种设置用于由于服务器速度较慢而将服务标记为DOWN的情况。

当您配置down状态刷新选项时,Citrix ADC设备将延迟清除到关闭的GSLB服务的连接。

使用命令行接口启用延迟清除虚拟服务器连接

在命令提示符下,键入以下命令来配置延迟连接清除并验证配置:

set gslb service  -downStateFlush (ENABLED | DISABLED) show gslb service  

例子:

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设备上全局绑定策略来配置的。

DNS表达式

Citrix ADC设备提供了某些预定义的DNS表达式,可用于配置特定于某个域的操作。例如,这些操作可以删除某些请求,为特定域选择特定视图,或将某些请求重定向到特定位置。

这些DNS表达式(也称为规则)组合起来创建DNS策略,然后在Citrix ADC设备上进行全局绑定。

以下是Citrix ADC设备上可用的预定义DNS限定符列表:

  • CLIENT.UDP.DNS.DOMAIN.EQ(“域名”)
  • 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

DNS表达式可以与字符串表达式一起使用。如果您使用域名作为表达式的一部分,它们必须以句号(.)结束。例如,CLIENT.UDP.DNS.DOMAIN.ENDSWITH(" abc.com. ")

使用配置实用程序创建表达式

  1. 单击表达式文本框旁边的图标。单击“新建”(“流程类型”和“协议类型”不填写)。按照以下步骤创建规则。
  2. 在限定符框中,选择一个限定符(例如,LOCATION)。
  3. 在“Operator”框中选择一个操作符(例如==)。
  4. 在Value框中,键入一个值(例如,Asia, Japan....)。
  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   (-IPAddress …| -viewName  | - preferredlocist …)[-TTL ] show dns action [] 
例子

例1:配置DNS响应重写。当DNS动作绑定的策略为true时,以下DNS动作会向客户端发送一个预配置的IP地址:

add dns action dns_act_response_rewrite write_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动作send_ip_from_view_internal_ip ViewName -viewName view_internal_ip Done show dns动作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. 2 .在“创建DNS动作”或“配置DNS动作”对话框中设置以下参数:
    • 操作名称(不能为现有DNS操作更改)
    • 类型(已存在的DNS操作不能更改)要设置类型参数,请执行以下操作之一:
      • 若要创建与DNS视图关联的DNS动作,请选择“视图名称”。然后,从“视图名称”列表中选择要在操作中使用的DNS视图。
      • 若要创建带有首选位置列表的DNS操作,请选择“首选位置列表”。在“首选位置”中输入位置,然后单击“添加”。添加任意多个DNS位置。
      • 如果需要配置DNS动作,在策略评估的基础上对DNS响应进行重写,则选中“重写响应”。2 .在“IP地址”中输入IP地址,单击“添加”,可以任意添加IP地址。
    • TTL(仅适用于重写响应操作类型)

配置DNS策略

DNS策略对使用静态和自定义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值)的查询和响应:

  • 一个
  • AAAA级
  • NS
  • 深水救生艇
  • PTR
  • CNAME
  • SOA
  • MX
  • 任何

还支持以下响应码(RCODE值):

  • NOERROR -没有错误
  • FORMERR -格式错误
  • 服务器故障
  • NXDOMAIN -不存在的域
  • NOTIMP -查询类型未实现
  • REFUSED -查询被拒绝

您可以配置表达式来计算DNS流量。DNS表达式以DNS开头。REQ或DNS。RES前缀。可以使用函数评估查询的域、查询类型和运营商协议。有关DNS表达式的详细信息,请参见“计算DNS消息和识别其载波协议的表达式”中的“策略配置与参考”。

使用实例通过命令行方式添加DNS策略

在命令提示符下,输入以下命令创建DNS策略并验证配置:

add dns policy    show dns policy  

例子:

> add dns policy-GSLB-1 'CLIENT.UDP.DNS.DOMAIN.EQ("domainname")' my_dns_action Done > show dns policy-GSLB-1名称:policy-GSLB-1规则:CLIENT.UDP.DNS.DOMAIN.EQ("domainname")动作名称:my_dns_action Hits: 0 Undef Hits: 0 Done 

通过命令行删除已配置的DNS策略

在命令提示符下,输入:

Rm DNS策略 

使用Citrix ADC配置实用程序配置DNS策略

  1. 进入“流量管理> DNS >策略”页面,创建DNS策略。
  2. 2 .在“创建DNS策略”或“配置DNS策略”对话框中设置以下参数:
    • 策略名称(不能为现有策略更改)
    • 行动
    • 要指定表达式,请执行以下操作:
      1. 单击Add,然后,在出现的下拉框中,选择要作为表达式开头的表达式元素。出现第二个列表。该列表包含一组表达式元素,您可以在第一个表达式元素之后立即使用它们。
      2. 在第二个列表中,选择所需的表达式元素,然后输入句点。
      3. 在每次选择之后,如果输入一个句点,下一组有效表达式元素将出现在列表中。选择表达式元素并填充函数的参数,直到得到所需的表达式。
  3. 单击“创建”或“确定”,然后单击“关闭”。

绑定DNS策略

DNS策略在Citrix ADC设备上全局绑定,并可用于所有已配置的GSLB虚拟服务器。尽管DNS策略是全局绑定的,但通过在表达式中指定域,可以将策略执行限制在特定的GSLB虚拟服务器上。

注意:尽管bind dns global命令接受REQ_OVERRIDE和RES_OVERRIDE作为有效的绑定点,但这些绑定点是多余的,因为dns策略只能全局绑定。仅将DNS策略绑定到REQ_DEFAULT和RES_DEFAULT绑定点。

通过命令行接口全局绑定DNS策略

在命令提示符下,输入以下命令全局绑定DNS策略并验证配置:

绑定dns global   [-gotoPriorityExpression ] [type ] show dns global -type  

例子:

bind dns global Policy - gslb -1 10 -gotoPriorityExpression END Done show dns global -type REQ_DEFAULT 1)策略名称:Policy - gslb -1优先级:10 GotoPriorityExpression: END Done 

使用配置实用工具全局绑定DNS策略

  1. “流量管理> DNS >策略”。
  2. 在详细信息窗格中,单击Global Bindings。
  3. 2 .在“全局绑定/解绑定DNS策略”对话框中,单击“插入策略”。
  4. 在“策略名称”列中,从列表中选择要绑定的策略。或者在列表中单击“新建策略”,在“创建DNS策略”对话框中配置参数,新建DNS策略。
  5. 若要修改已全局绑定的策略,请单击策略名称,然后单击“修改策略”。然后在“配置DNS策略”对话框中修改DNS策略,单击“确定”。
  6. 单击策略名称后,单击“解除策略绑定”。
  7. 若要修改分配给策略的优先级,请双击优先级值,然后输入新的值。
  8. 要重新生成已分配的优先级,请单击“重新生成优先级”。优先级值被修改为从100开始,增量为10,但不影响计算顺序。
  9. 单击OK。

通过命令行界面查看DNS策略的全局绑定信息

在命令提示符下,输入:

显示DNS全局

使用配置实用工具查看DNS策略的全局绑定

  1. 导航到交通管理>DNS>政策
  2. 在详细信息窗格中,单击全局绑定.所有DNS策略的全局绑定将出现在此对话框中。

添加DNS视图

通过配置DNS视图,可以识别各种类型的客户端,并为查询同一GSLB域的一组客户端提供适当的IP地址。DNS视图是通过选择发送回客户端的IP地址的DNS策略配置的。

例如,如果您已经为您公司的域配置了GSLB,并且服务器托管在您公司的网络中,那么从您公司的内部网络查询域的客户端可以得到服务器的内部IP地址,而不是公共IP地址。另一方面,从Internet上查询域的DNS的客户端可以得到域的公共IP地址。

要添加DNS视图,可以为其分配最多31个字符的名称。开头字符必须是数字或字母。允许使用以下字符:@ _ -。(period):(冒号)#和空格()。添加视图之后,您可以配置一个策略,将其与客户端和网络的一部分相关联,并全局绑定该策略。配置和绑定DNS策略,请参见通过DNS策略管理本地DNS流量

使用命令行方式添加DNS视图

在命令提示符下,输入以下命令创建DNS视图并验证配置:

add dns view  show dns view  

例子:

add dns view PrivateSubnet show dns view PrivateSubnet——NeedCopy >

使用命令行方式删除DNS视图

在命令提示符下,输入:

rm dns view  

使用配置实用工具添加DNS视图

在“流量管理> DNS >视图”中添加DNS视图。

新建DNS策略和全局绑定DNS策略的方法请参见通过DNS策略管理本地DNS流量

管理客户端连接