DNS对响应程序的支持
您可以将响应程序功能配置为响应DNS请求,就像响应HTTP和TCP请求一样。例如,您可以将其配置为通过UDP发送DNS响应,并确保客户端的DNS请求通过TCP发送。许多Citrix ADC表达式支持检查请求中的DNS报头。这些表达式检查特定的标题字段并发送适当的响应。
DNS表达式。在响应程序配置中,可以使用以下Citrix ADC表达式来引用DNS请求的各个部分:
表达式 说明 DNS。NEW_RESPONSE 根据请求创建新的空DNS响应。 DNS。NEW_RESPONSE 根据指定的参数创建新的DNS响应。 DNS绑定点。以下全局绑定点可用于包含DNS表达式的策略。
绑定点 说明 DNS_REQ_OVERRIDE 优先级/覆盖请求策略队列。 DNS_REQ_DEFAULT 标准请求策略队列。 除了默认绑定点之外,您还可以创建DNS类型的策略标签并将DNS策略绑定到这些标签。
配置DNS的响应程序策略
以下过程使用Citrix ADC命令行配置响应程序操作和策略,并将策略绑定到特定于响应程序的全局绑定点。
要将响应程序配置为响应DNS请求,请执行以下操作:
在命令提示符下,键入以下命令:
add responder action
对于
< actname >
,替换新操作的名称。名称的长度可以是 1 到 127 个字符,并且可以包含字母、数字、连字符 (-) 和下划线 (_) 符号。对于< actType >
, 替换响应程序操作类型respondWith。add responder policy
对于
< polname >
,请替换新策略的名称。对于< actname >
,名称的长度可以为 1 到 127 个字符,并且可以包含字母、数字、连字符 (-) 和下划线 (_) 符号。对于< actname >
,替换刚创建的操作的名称。绑定响应器策略
-type 对于
< bindPoint >
,指定特定于响应程序的全局绑定点之一。对于< polName >
,替换刚创建的策略的名称。对于< >优先
,指定策略的优先级。
示例配置-通过TCP强制执行所有DNS请求:
要通过TCP强制执行所有DNS请求,请创建一个响应程序操作,该操作将TC位和rcode设置为NOERRR。
>添加响应器动作resp_act_set_tc_bit响应DNS。NEW_RESPONSE(true, true, NOERROR) Done > add responder policy enforce_tcp dns.REQ.TRANSPORT.EQ(udp) resp_act_set_tc_bit Done >bind lb vserver dns_udp –policyName enforce_tcp -type request –priority 100 Done