管理客户端连接
为了便于管理客户端连接,您可以启用延迟清除到虚拟服务器的连接。通过配置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
使用配置实用程序启用延迟清除虚拟服务器连接
- 导航到交通管理>GSLB>服务然后双击该服务。
- 单击其他设置部分,并选择向下状态刷新选择。
通过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. ")
使用配置实用程序创建表达式
- 单击表达式文本框旁边的图标。单击“新建”(“流程类型”和“协议类型”不填写)。按照以下步骤创建规则。
- 在限定符框中,选择一个限定符(例如,LOCATION)。
- 在“Operator”框中选择一个操作符(例如==)。
- 在Value框中,键入一个值(例如,Asia, Japan....)。
- 单击OK。单击“创建”,然后单击“关闭”。规则创建完成。
- 单击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动作
- 进入流量管理> DNS >动作,创建或编辑DNS动作。
- 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策略
- 进入“流量管理> DNS >策略”页面,创建DNS策略。
- 2 .在“创建DNS策略”或“配置DNS策略”对话框中设置以下参数:
- 策略名称(不能为现有策略更改)
- 行动
- 要指定表达式,请执行以下操作:
- 单击Add,然后,在出现的下拉框中,选择要作为表达式开头的表达式元素。出现第二个列表。该列表包含一组表达式元素,您可以在第一个表达式元素之后立即使用它们。
- 在第二个列表中,选择所需的表达式元素,然后输入句点。
- 在每次选择之后,如果输入一个句点,下一组有效表达式元素将出现在列表中。选择表达式元素并填充函数的参数,直到得到所需的表达式。
- 单击“创建”或“确定”,然后单击“关闭”。
绑定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策略
- “流量管理> DNS >策略”。
- 在详细信息窗格中,单击Global Bindings。
- 2 .在“全局绑定/解绑定DNS策略”对话框中,单击“插入策略”。
- 在“策略名称”列中,从列表中选择要绑定的策略。或者在列表中单击“新建策略”,在“创建DNS策略”对话框中配置参数,新建DNS策略。
- 若要修改已全局绑定的策略,请单击策略名称,然后单击“修改策略”。然后在“配置DNS策略”对话框中修改DNS策略,单击“确定”。
- 单击策略名称后,单击“解除策略绑定”。
- 若要修改分配给策略的优先级,请双击优先级值,然后输入新的值。
- 要重新生成已分配的优先级,请单击“重新生成优先级”。优先级值被修改为从100开始,增量为10,但不影响计算顺序。
- 单击OK。
通过命令行界面查看DNS策略的全局绑定信息
在命令提示符下,输入:
显示DNS全局
使用配置实用工具查看DNS策略的全局绑定
- 导航到交通管理>DNS>政策.
- 在详细信息窗格中,单击全局绑定.所有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流量.